📖

Git リポジトリの履歴を完全に削除して新しく始める方法

2024/07/21に公開

時として、Git リポジトリの履歴を完全に削除し、新たな状態から始めたいケースがあります。例えば、公開前の準備履歴を消したい場合や、センシティブな情報が含まれた履歴を削除する必要がある場合などです。この記事では、Git リポジトリの履歴を完全に削除し、新しく始める手順を詳しく解説します。

注意事項

警告: この操作はリポジトリの履歴を完全に削除します。共有リポジトリや公開リポジトリでこの操作を行う場合は、十分な注意が必要です。必ず全てのコラボレーターに事前に通知し、同意を得てから実行してください。

手順

  1. 現在の remote URL を保存

    git remote -v
    

    表示された URL をメモしておきます。

  2. Git 関連ファイルを削除

    rm -rf .git
    
  3. プロジェクトフォルダの整理
    最初のコミットに含めたいファイルのみを残し、それ以外を削除または .gitignore に追加します。

  4. 新しく Git リポジトリを初期化

    git init
    
  5. デフォルトブランチ名を main に設定

    git config --global init.defaultBranch main
    git branch -m main
    
  6. 最初のコミットの作成

    git add .
    git commit -m "first commit"
    
  7. リモートリポジトリの再設定

    git remote add origin {手順1で保存したURL}
    
  8. 強制的にプッシュ

    git push -u origin main -f
    

    注意: -f オプションを使用すると、リモート側の履歴が完全に上書きされます。

確認

操作が完了したら、以下のコマンドでリポジトリの状態を確認できます:

git log

このコマンドを実行すると、"first commit" だけが表示されるはずです。

まとめ

これらの手順を実行することで、Git リポジトリの履歴を完全に削除し、新しい初期状態から始めることができます。ただし、この操作は取り消すことができないため、実行前に必ずバックアップを取り、影響を十分に理解した上で行ってください。

Discussion