gitリポジトリに特定のバイナリファイルがあります。通常、サイズは約2MBです。gitリポジトリ内のバイナリブロブをクリーンアップ
私たちの開発者の一人は、間違いなくこのファイルをすべての依存関係にバンドルしており、ファイルを約40MBにまで上げました。
もちろん、私たちは固定バージョンをコミットしましたが、メインリポジトリには不要なバイナリデータ40MBの無駄なチャンクが残っています。私は、その特定のコミット(またはそれに関する他のコミット - それはコンパイルされたバイナリですが、ソースはバージョン管理されています)のためにそのファイルの履歴を必要としないことを保証できます。
レポサイズを復元するには、どのようにデータのBLOBを削除できますか?単純なgit gc
で十分ではありません。私はよく分からない低レベルのハッキングが必要だと思います。
はい。明らかに私たちが気にすることのできないディスクスペースはそれほどありません。しかし、このレポはリモートサーバーに展開する必要があります。その40MBのオーバーヘッドを持つことはできません。 –
@Yuval、あなたは常にレポ全体を展開していますか?どうして?現在のバージョンだけを配備するか、変更を展開するために 'git pull'を使用すると(これは40MB *を一度*転送することを意味します)、それは良いことではないでしょうか? – svick
それでも、これは知っておくと便利です。宗教的に行われた場合、レポの全体的なサイズを抑えます。ここに40MB、そこに40MBは、簡単に数GBに追加されます。 – Arafangion