履歴が空っぽのブランチを切る

まったく別の内容を同じリポジトリ内で持ちたい場合現在の履歴は不要なのでまっさらな状態が欲しくなる場合があります。これには、--orphanオプションを使います。

git checkout --orphan <new branch name>

成功すると履歴は空っぽのブランチにチェックアウトします。ただ、依存のファイルがすべてgit add --allしたような状態になっているので以下ですべて削除することで、中身も空にできます。

git rm --rf .
rm -rf *

master ブランチの履歴をリセット

checkout --orphanの後以下のようにすることでmasterブランチの履歴をリセットできます。

  1. git branch -D mastermasterブランチを削除
  2. checkout --orphan masterで新たにmasterブランチを作成
  3. checkout masterで移動してコミット