すべてのコミット履歴を削除したいのですが、コミット履歴に未使用のコミットが多すぎるため、コードを現在の状態のままにしておきます。
どうすればいいですか?
これを実行できるgitコマンドはありますか?
git filter-branch ?
git rebase ?
...
私のコードはgithub.comでホストされています。
フォルダを削除する.git
と、gitリポジトリで問題が発生する可能性があります。すべてのコミット履歴を削除したいが、コードを現在の状態のままにしておきたい場合は、次のように行うのが非常に安全です。
チェックアウト
git checkout --orphan latest_branch
すべてのファイルを追加します
git add -A
変更をコミットする
git commit -am "commit message"
ブランチを削除します
git branch -D main
現在のブランチの名前をmainに変更します
git branch -m main
最後に、リポジトリを強制的に更新します
git push -f origin main
PS:これはあなたの古いコミット履歴を保持しません
すべてのコミット履歴を削除したい場合は.git
、プロジェクトルートのディレクトリを削除するだけです(非表示になっていることに注意してください)。次に、同じフォルダー内の新しいリポジトリを初期化し、GitHubリポジトリにリンクします。
git init
git remote add origin git@github.com:user/repo
現在のバージョンのコードをコミットします
git add *
git commit -am 'message'
最後に、GitHubの更新を強制します。
git push -f origin master
.git
ただし、これらの手順を実行する前に、履歴(リポジトリ内のフォルダ)をバックアップすることをお勧めします。