小编典典

将分支指针移动到不同的提交而不签出

all

要移动已签出分支的分支指针,可以使用git reset --hard命令。但是如何移动未签出分支的分支指针以指向不同的提交(保留所有其他内容,如跟踪的远程分支)?


阅读 96

收藏
2022-02-28

共1个答案

小编典典

您可以为任意参考做到这一点。这是移动分支指针的方法:

git update-ref -m "reset: Reset <branch> to <new commit>" refs/heads/<branch> <commit>

where-m向分支的 reflog 添加一条消息。

一般形式是

git update-ref -m "reset: Reset <branch> to <new commit>" <ref> <commit>

如果你愿意,你可以挑选关于 reflog 消息的细节——我相信那个branch -f和那个不同reset --hard,这不完全是其中任何一个。

2022-02-28