假定以下情况:
Hello World!
的文件,添加并提交。Hi World!
,在另一个分支中将其更改为Hello World
。考虑另一种方案,在该方案中,我们在不同的行上分开更改:
1.创建一个包含内容Hello\nWorld\n!
的文件。 (我用\n
表示换行。)
2.像以前一样应用类似的更改。
3.现在,突然合并就可以了。
但是换行符和其他字符一样。为什么合并对它如此特殊?
更重要的是,是否有与git兼容的合并工具,可以无冲突地合并我的第一个示例,即是否可以在一行中合并更改?
答案 0 :(得分:-1)
所有VCS中的所有(标准)合并工具都是基于行的(仅由于引擎盖下的diff
,patch
是基于行的,而文本行是原子的 ,甚至都不会评估更大或更小的对象)...并且我将尽量不要提及diff的“上下文”和“统一”格式以及相关的“笨拙”头痛
您问题的常见答案-“不,现在在Wild Net中没有这样的合并(至少是知名的和著名的来源)。但是-您可以编写它并将其用作Git中的特殊自定义合并工具”
PS-链接答案中的Smudge | Clean过滤器方法似乎是一种更有希望的解决方案(至少对我来说如此)