我不清楚完成导致冲突的合并所需的Git命令的正确顺序。我知道一种方法是在被拒绝的合并之后使用类似这样的东西
git mergetool
# Then once everything has been fixed
git add ??
git commit -m "Some message"但是我不清楚git-add命令到底应该由什么组成,以确保最终只提交我最初为被拒绝的合并暂存的文件,并且只提交这些文件。
发布于 2013-01-29 14:04:04
冲突解决后,git-mergetool通常会自动转移文件。您不需要手动运行git-add。
但是,为了使用各种工具,git-mergetool将尝试通过检查修改日期来验证文件是否已更新(请参阅check_unchanged())。如果文件已经被修改,那么它将检查来自mergetool的返回码。
一些mergetools可能不会返回正确的退出代码(如果合并‘成功’,则返回0),因此git还提供了一个配置选项mergetool.<tool>.trustExitCode,以防这不应该被信任。如果将其设置为false,则git将始终询问您合并是否成功。
总而言之:
trustExitCode选项设置为false。在实践中,我建议使用git现在本地支持的合并实用程序之一。您可以获得这些here的列表。如果你使用这些工具中的一个,你应该不需要任何额外的设置就可以配置git来使用它,例如:
git config --global merge.tool p4merge注意:你可能会在网上找到很多关于这些工具设置的过时文章。例如,我最喜欢的mergetool,p4merge,一开始并不是git原生支持的,需要一些手动配置。对于最新版本的git,这不再是必需的。
https://stackoverflow.com/questions/14573656
复制相似问题