“我如何解决?”;git pull“;是否将冲突合并到我以前的一次提交中?
这就是我的git树的样子:“我如何解决?”;git pull“;是否将冲突合并到我以前的一次提交中?,git,github,Git,Github,这就是我的git树的样子: A B C D E o---o---o---o---o master \ o---o---o---o my_branch C1 C2 C3 C4 我正在尝试使用master重新设置我的_分支的基础,为了使我的树最终看起来像这样,我有合并冲突,我希望将其作为提交C2(或更早的提交)的一部分而不是顶部(C4)来解决 尝试:Git重设基础并解决冲突+提交 git-pull——重新设置主数据库的
A B C D E
o---o---o---o---o master
\
o---o---o---o my_branch
C1 C2 C3 C4
我正在尝试使用master重新设置我的_分支的基础,为了使我的树最终看起来像这样,我有合并冲突,我希望将其作为提交C2(或更早的提交)的一部分而不是顶部(C4)来解决
尝试:Git重设基础并解决冲突+提交
git-pull——重新设置主数据库的基础
这会导致合并冲突
我可以解决冲突并执行git提交,但是,我不希望创建新的提交,C5。我宁愿冲突更改作为较旧的提交(例如C2)的一部分进行
或者,我尝试将git-rebase改为C2,然后是git-pull
git rebase-i C1
将C2标记为“编辑”。我希望在此基础上执行git pull--rebase master
,并解决冲突+提交+git rebase--continue
,以便冲突解决成为C2的一部分,但这不起作用
你能给我一个建议吗?除了恢复我的更改并在git rebase后重新应用它们之外,还有什么别的吗?您已经在替换所有提交了
CommitC1
表示它的父Commit是C
。您需要一个新的、不同的提交,您可以将其称为E1
,例如,它的父级是E
这个新的和不同的提交将有一个新的和不同的散列ID。不过,最后,您仍将有四个提交,它们将是E1
到E4
。您的名字myu分支机构
将识别新提交的E4
;commitC4
将被遗忘,并最终会消失,除非有人或其他什么东西抓住了它并且不肯放手:
E1 E2 E3 E4
o---o---o---o <-- my_branch
A B C D E/
o---o---o---o---o <-- master
\
o---o---o---o [abandoned]
C1 C2 C3 C4
提交E2
正在进行,但尚未存在。您必须解决冲突,git添加
已解决的文件,然后运行git-rebase--continue
以使git进行新提交E2
:
E1 E2
o---o <-- HEAD
A B C D E/
o---o---o---o---o <-- master
\
o---o---o---o <-- my_branch
C1 C2 C3 C4
e1e2
o--o
E1
o <-- HEAD
A B C D E/
o---o---o---o---o <-- master
\
o---o---o---o <-- my_branch
C1 C2 C3 C4
E1 E2
o---o <-- HEAD
A B C D E/
o---o---o---o---o <-- master
\
o---o---o---o <-- my_branch
C1 C2 C3 C4