我不小心将 GitX 中的一个分支(使用鼠标拖放)移动到另一个分支上。现在,两个分支标签都指向同一个提示(!),我看不到在移动分支上完成的提交。
使用git reflog
我想查看该更改并撤消它,但没有记录任何内容。
从 GitX 撤消移动操作的推荐方法是什么(图形或终端)?Menu->Edit->Undo 不提供返回。
(背景:我认为 move 操作也会携带提交,即,像变基一样,但事实并非如此。)
我的理解:你有
A-B-C master
\D-E develop
然后,您不小心在提交 C 上移动了开发(与 master 相同)。
然后你得到
A-B-C (master, develop)
\D-E
如果要将分支“develop”移回“commitE”,则应使用git branch命令:
git branch -f <branch-name> <starting-point>
当您的 HEAD 在另一个分支上时,必须使用该命令。所以在上面的例子中,我会这样做:
git checkout master
这样我的 HEAD 位于分支“master”上,然后是
git branch -f develop commitE
这应该将您切换回初始状态,即
A-B-C master
\D-E develop