git mergetool后我该怎么办?

时间:2012-10-31 12:09:45

标签: git

我安装了meld,运行git mergetool,将左右文件合并到中心文件中,保存并关闭窗口。我记得其他时候mergetool问合并是否成功,但这次没有(我会回答'是')。我打开了我的文件,就像我想要的那样,但是有一个不需要的文件'myfile.orig',所以我运行git clean -fd并将其删除。然后我做了git add -Agit commit -m 'merged feature-a'。感觉这个过程可能更短或更清洁。

  • 当存在冲突时,这是合并的正确方法吗?
  • 还有其他方法吗?

1 个答案:

答案 0 :(得分:0)

1:调用外部合并工具后,git只会检查目标文件是否已更新(例如:其修改日期是否比备份文件的日期更近)。如果是,它将认为合并是“成功”,否则,它将询问问题,以查看您是否打算保留原始文件,或者只是没有解决合并问题。

因此:只需在ctrl+S中点击meld就可以跳过问题,您应该知道:总是重新阅读您将要提交的内容。冲突。

2:*.orig文件是在每次解决的合并冲突时由git生成的,通常建议将这些文件添加到您的.gitignore中,不要太在意。
我在路径中为find . -name '*.orig' | xargs rm添加了一个快捷方式,当我在IDE中看到太多* .orig文件时,有时会运行该快捷方式。

3:“成功”合并后,git应该自动git add编辑了生成的文件,因此您可以跳过git add -A步骤。


总结一下:

  • 您的所有步骤都是正确的
  • 如果您忽略'*.orig'个文件,并检查是否暂存了预期的文件,则在成功解决冲突后,您应该能够直接调用git commit