在 GitX 中撤消移动的分支
Undo moved branch in GitX
我不小心将 GitX 中的一个分支(使用鼠标拖放)移到了另一个分支上。
现在,两个分支标签都指向同一个提示(!),我看不到在移动的分支上完成的提交。
使用 git reflog
我想查看更改并撤消它,但没有记录任何内容。
从 GitX 撤消该移动操作的推荐方法是什么(图形或终端)?菜单->编辑->撤消不提供返回。
(背景:我认为移动操作也会携带提交,即,就像变基一样,但事实并非如此。)
我的理解:
你有
A-B-C master
\D-E develop
然后您不小心在提交 C 上移动了 develop(与 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
我不小心将 GitX 中的一个分支(使用鼠标拖放)移到了另一个分支上。 现在,两个分支标签都指向同一个提示(!),我看不到在移动的分支上完成的提交。
使用 git reflog
我想查看更改并撤消它,但没有记录任何内容。
从 GitX 撤消该移动操作的推荐方法是什么(图形或终端)?菜单->编辑->撤消不提供返回。
(背景:我认为移动操作也会携带提交,即,就像变基一样,但事实并非如此。)
我的理解: 你有
A-B-C master
\D-E develop
然后您不小心在提交 C 上移动了 develop(与 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