私は長い間プライベートにしてきたジャンゴプロジェクトを持っています。私はsettings.py
、base_settings.py
、およびsecret_settings.py
の機密情報を持つファイルを持っていたプロジェクトの寿命を通して。今私はコードをオープンソースにすることに決めました。私はもはやこのプロジェクトに積極的に取り組んでいません。gitでfilter-branchコマンドから重複したコミットを削除するには?
以下のコマンドを実行してこれらのファイルの履歴を削除し、機密情報がすべて消失したことを確認しました。
git filter-branch -f --tree-filter 'rm -f exchange/settings.py~' HEAD
私は自分のAWSアカウントを確保し、すべての秘密を削除した:
git filter-branch -f --tree-filter 'rm -f exchange/secret_settings.py' HEAD
git filter-branch -f --tree-filter 'rm -f exchange/base_settings.py' HEAD
git filter-branch -f --tree-filter 'rm -f exchange/settings.py' HEAD
はしかし、githubのは、それは〜それでAWSの情報を持つファイルは、私が走ったの.pyたコミットがまだあったことを私に警告しましたAWSのキーを使用してアカウントを保護しますしかし、今私は、私のコミット履歴全体に対して、時には3つまたは4つのコミットを複製しました。
.git/refs
のバックアップに戻すことができますが、動作していないようです。ここで
誰もが、私はこれを修正するために何ができるか知っていますか?
'filter-branch --prune-empty' – jthill
@ 500はコミットを削除しましたが、まだ重複しています。さらに前に戻ることはできますか? – Programmingjoe
私は複数回コマンドを実行しました – Programmingjoe