我对上一次提交进行了结帐 然后,我对代码进行了更改,并提交了我现在应该做什么,以从外部存储库中进行推拉操作。
如何将HEAD返回到代码的当前(已签出和编辑)的当前版本,并将其与外部存储库中的代码集成
答案 0 :(得分:1)
似乎您被引导到一个独立的HEAD,可以看作是一个无名的分支。解决方案是找出您所做的提交,并将其应用于命名分支。
根据您的描述,我无法确定您现在所处的状态。因此,首先使用git reflog
来查找提交。 git reflog
打印HEAD
曾经指向的提交列表。从上到下,找出您熟悉的 FIRST 提交,并确定这是您在无名分支上进行的一项或多项提交。如果您只提交了一份,那就是我们正在寻找的。如果您完成了多个任务,请使用git log <commit>
查找所有任务。如果情况更加复杂(我希望不会如此),请对可能的提交使用git reflog
,然后多次使用git log
,以找出所有似乎丢失的提交。
第二,将这些提交应用于命名分支。假设您希望它们位于master
上。
# switch to master
git checkout master
# apply the commits from the oldest to the youngest
git cherry-pick A B C
最后,更新并推送master
。
git pull origin -r master
git push origin master