私の git リポジトリが少し大きくなり始めています。単一の SSD に、リポジトリと、非常に多くのスペースを占有する大量のバイナリ ファイルを含む 2 つのクローンがあります。
毎日、cron ジョブがマスター クローンをリポジトリにプッシュし、長期間にわたる変更の履歴を作成します。
ただし、1 か月以上経過したものは、もう保持する価値はありません。これらの古いコミットを削除して、多くのスペースを節約できるようにしたいと思います...プログラムで。
rebase
と を使用した例、 を使用しsquash
た例gc
、およびその他の非常にファンキーな例をたくさん見てきました。これらのほとんどでは、削除するコミット タグを手動で入力する必要があります。
リポジトリから 30 日以上前のすべてのコミットを削除したいと考えています (他の場所でも履歴を折りたたむようにフックを構成する必要があると思います)、毎月 bash スクリプトから削除します。