1. ホーム
  2. ギット

[解決済み】別のGitタグに切り替える

2022-04-18 14:29:31

質問

のバージョンバージョン/タグ1.1.4をチェックアウトするにはどうしたらよいですか? rspec バンドル ?

cd ~/Library/Application\ Support/TextMate/Bundles/
git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle
osascript -e 'tell app "TextMate" to reload bundles'

解決方法は?

通常通り、リポジトリのクローンを作成します。

git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle

そして、このように好きなタグをチェックアウトしてください。

git checkout tags/1.1.4

これは、タグを 'detached HEAD' 状態でチェックアウトします。この状態では、別のチェックアウトを行うことによって、どのブランチにも影響を与えることなく、"見回ったり、実験的な変更を行ってコミットしたり、[それらのコミットを破棄する]ことができます"。

変更した内容を保持するには、新しいブランチに移動させます。

git checkout -b 1.1.4-jspooner

でmasterブランチに戻れます。

git checkout master

この回答の最初の改訂版で述べたように、タグをチェックアウトする別の方法があることに注意してください。

git checkout 1.1.4

しかし、コメントにあったように、同じ名前のブランチがある場合、これでは git が refname があいまいであると警告し、デフォルトでそのブランチをチェックアウトしてしまうことになります。

warning: refname 'test' is ambiguous.
Switched to branch '1.1.4'

この省略記法は、リポジトリがブランチとタグの間で名前を共有しない場合に安全に使用することができます。