1

我不小心将 GitX 中的一个分支(使用鼠标拖放)移动到另一个分支上。现在,两个分支标签都指向同一个提示(!),我看不到在移动分支上完成的提交。

使用git reflog我想查看该更改并撤消它,但没有记录任何内容。

从 GitX 撤消移动操作的推荐方法是什么(图形或终端)?Menu->Edit->Undo 不提供返回。

(背景:我认为 move 操作也会携带提交,即,像变基一样,但事实并非如此。)

4

1 回答 1

0

我的理解:你有

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
于 2015-01-16T23:14:54.270 回答