Git - 如何隐藏冲突并在以后解决它

时间:2016-07-18 07:47:20

标签: git git-stash merge-conflict-resolution git-merge-conflict

我将一个分支合并到另一个分支并遇到了冲突。我部分地解决了这个问题,但我需要同事的帮助才能完成解决它。与此同时,在我等待他的同时,我想要隐藏这场冲突并继续努力。但我不想在已经解决的问题上失去进展。

我该怎么办?有没有办法实现这一点,除了在另一个目录中再次克隆repo或手动复制冲突的文件,然后稍后将其复制回来?

如果我试着简单地存放它,git会这样抱怨:

path/to/file/with/unresolved/conflict: needs merge
path/to/file/with/unresolved/conflict: needs merge
path/to/file/with/unresolved/conflict: unmerged (somesha)
path/to/file/with/unresolved/conflict: unmerged (somesha)
path/to/file/with/unresolved/conflict: unmerged (somesha)
fatal: git-write-tree: error building trees
Cannot save the current index state

1 个答案:

答案 0 :(得分:3)

在您的存储库中启用rerere

$ git config rerere.enabled true

解决所有可能的冲突,然后中止合并操作(git merge --abort)。所有成功的冲突解决方案都将由rerere注册,并在以后自动重播以解决相同的冲突。

请参阅此博客文章:https://git-scm.com/blog/2010/03/08/rerere.html