有时我会在git merge
时遇到合并冲突。我会收到错误:
自动合并失败;修复冲突,然后提交结果。
那很好,我解决了冲突。
问题是,一旦发生这种情况,我似乎被赶出了我正在努力的分支机构。执行git branch
只会在develop
分支上显示我。
如果我试图查看我正在处理的分支,我会收到错误
请在更改分支之前提交更改或存储更改。
如果我尝试提交或存储,我会收到错误:
你不在正确的分支上。
我可以摆脱这种情况的唯一方法是使用git reset --hard HEAD
,这当然意味着我放弃了所有的工作。
有谁知道为什么会这样,我能做什么?
答案 0 :(得分:0)
git status
检查您现在的状态。
git diff
确认您已正确修复冲突。
git add
您的文件。
git commit
。
做你的其他工作......
答案 1 :(得分:0)
我能摆脱这种局面的唯一方法就是使用git reset --hard HEAD,这当然意味着我放弃了所有的工作。
您做错了:如果您想退出正在进行的当前合并,请使用git merge --abort
或git reset --merge
。
或按照kagv的描述完成当前合并。没有第三个选项... git遇到冲突并要求您手动解决。所以修复它或重置为稳定。
注意:当git检测到冲突时(在合并,rebase或者挑选操作期间),你最终会进入一种功能有限的特殊模式(比如阻止你查看不同的版本......)。 / p>