1. ホーム
  2. git

[解決済み] チェックアウトせずにブランチポインタを別のコミットに移動させる

2022-03-19 19:29:39

質問

チェックアウトしたブランチのブランチポインタを移動するには git reset --hard コマンドを使用します。しかし、チェックアウトされていないブランチのブランチポインタを別のコミットを指すように移動させるにはどうしたらよいのでしょうか (リモートブランチの追跡など他のことはすべてそのままで)?

解決方法は?

任意の参照に対して行うことができます。これはブランチポインタを移動する方法です。

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

ここで -m は、そのブランチの reflog にメッセージを追加します。

一般的な形式は

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

reflogのメッセージについて気になることがあれば、何でも言ってください。 branch -f とは別のものです。 reset --hard があり、これは正確にはどちらとも言えない。