我正在从发布分支中挑选特定的提交到我的本地工作副本。每次我从发布分支中挑选一个提交时,我都会遇到合并冲突,我必须解决这个问题,即使是看似微不足道的更改,例如:
-const char kApplicationVersion[] = "Develop";
+const char kApplicationVersion[] = "Release";
是对main.cc的提交中唯一的更改。
git status
显示
You are currently cherry-picking commit 6f04be8.
(fix conflicts and run "git cherry-pick --continue")
(use "git cherry-pick --abort" to cancel the cherry-pick operation)
Unmerged paths:
(use "git add <file>..." to mark resolution)
both modified: src/appMain/main.cc
为什么总会发生冲突?
答案 0 :(得分:3)
因为这两个分支分歧了:
const char kApplicationVersion[] = "Develop";
const char kApplicationVersion[] = "Release";
一个cherry-pick将解析对共同祖先的合并,但不会为该文件创建一个实际的合并(意味着共同的祖先仍然是一个更旧的版本,其中dev
分支从{{1}开始分支)
下一个樱桃选择将考虑相同的旧共同祖先,并将触发相同的合并冲突。
中查看(更多)内容