somemo's diary

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【git】tagのcheckout

なぜか分からないけど、
7章終了後に作成したtagに対してcheckout行ったときに発生したことをメモしておきます。

準備と現象
tagを作成し、作成したtagに対してcheckoutを行います。

$ git tag Chapter07
$ git checkout Chapter07
Note: checking out 'Chapter07'.

You are in 'detached HEAD' state. You can look around, make experimental changes and commit them,
and you can discard any commits you make in this state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create,
you may do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b new_branch_name

HEAD is now at c9e351d... 7章 異なる通過の比較処理を修正した
warning: Your console font probably doesn't support Unicode.
If you experience strange characters in the output, consider switching to a TrueType font such as Lucida Console!

その後の状態
branchを確認すると
$ git branch
* (no branch)
  master

You are in 'detached HEAD' state.
⇒HEADから離れた状態になりました。
つまり、HEADに修正が反映されないので意味が無い状態である

masterにcheckoutすると
$ git checkout master
Switched to branch 'master'
$ git branch
* master

you can discard any commits you make in this state without impacting any branches by performing another checkout.
⇒変更を破棄するなら他のbranchにcheckoutしてください

If you want to create a new branch to retain commits you create,
⇒もし、反映したいならbranch作ってcheckoutしてください。

ということでした。

参考
gitのHEADがブランチから外れてしまう現象とその直し方
gitでタグをチェックアウトする。