読者です 読者をやめる 読者になる 読者になる

git checkout しようとすると「頭が取れちゃうぞ」とか言われるのがこわい

Git では Mercurial みたいに「このコミットの時点に行きたい!」「はいよっ!」みたいな感じでリポジトリ内を移動することはできない。たとえば、ブランチの先端が無いコミットをチェックアウトしようとすると detached HEAD 状態になってしまいますよ〜と Git が警告してきてユーザーの心拍数を上げる。正直 detached HEAD とはなんぞや(デュラハンか何か?)って感じである。こわい。

detached HEAD については この記事 が分かりやすい。簡単に言うと detached HEAD 状態になるとコミットなどができなくなる(ので警告が発せられる)。detached HEAD 状態で加えた変更などは、他のブランチに移動すると破棄される(この際も警告が発せられる)。detached HEAD 状態からでもその場で新しいブランチを切ればそこからコミットを始めることができる。

つまり「コミットはしない。ただその時点でどんな状態だったかを見たいだけ」という場合(たとえば他の人が加えた変更を詳しくみたいとき)には detached HEAD 状態になることを恐れる必要はない。