在合并方面,Python的空白依赖性与源代码控件之间的交互程度如何?
时间:2020-03-06 14:34:57 来源:igfitidea点击:
我想知道是否需要更改代码的缩进以调整嵌套对合并诸如SVN这样的系统中的更改是否有不利影响。
这是一个真正开放的问题。我在这里钓鱼以获取信息/轶事。
编辑:谢谢大家!我会接受答案,但是哪一个呢?我把它们全部模版了。
解决方案
我已经将python与SVN和Mercurial一起使用,并且没有合并的麻烦。
这完全取决于差异的处理方式,我怀疑这是逐字符进行的,这会注意到一个缩进级别和另一个缩进级别之间的差异。
通常,默认情况下,源代码控制系统会逐行合并。我发现合并Python代码与合并任何合理缩进的其他源代码没有什么不同。如果一个程序员将一个代码块包装在一个" if"语句中(缩进整个块),而另一个程序员在该块内部进行修改,则将发生合并冲突。幸运的是,这种情况下的冲突非常容易解决。
如果使用外部合并工具,则工具可能支持更详细的文本合并算法,这些算法会自动考虑上述情况。
只要项目中的每个人都同意使用相同的空格样式(空格或者制表符),它就可以正常工作。
但是我看到过这样的情况,开发人员将整个文件从空格转换为制表符(我认为Eclipse具有此功能,绑定到Ctrl + Tab!),这使得几乎不可能发现差异。