いくつかのプロジェクトをSubversionからgitに移行しました。非常にうまく機能しますが、リポジトリのクローンを作成すると、転送に多くの.jarファイルの履歴がすべて含まれているため、非常に長くなります。
特定の種類のファイルの最新バージョンのみをメインリポジトリに保持する方法はありますか?主にバイナリファイルの古いバージョンを削除したいです。
いくつかのプロジェクトをSubversionからgitに移行しました。非常にうまく機能しますが、リポジトリのクローンを作成すると、転送に多くの.jarファイルの履歴がすべて含まれているため、非常に長くなります。
特定の種類のファイルの最新バージョンのみをメインリポジトリに保持する方法はありますか?主にバイナリファイルの古いバージョンを削除したいです。
「git rebase」 -i または「git filter-branch」で古いバージョンを削除できます
http://schacon.github.com/git/git-filter-branch.html
http://schacon.github.com/git/git-rebase.html
その他のドキュメントとチュートリアル: http://git-scm.com/documentation
今後、現在のバージョンのみを保持することはサポートされていません。代わりに、大きな .jar ファイルをダウンロード (またはビルド、またはその他の方法で生成) する小さなスクリプトをリビジョン コントロールに保持することをお勧めします。
これにより履歴が変更されるため、このリポジトリからの以前のすべてのクローンまたはプルが無効になります。
つまり、これには、ファイルを除外するためにgitcommitツリー全体を書き直すことが含まれます。gitにリポジトリを圧縮させて使用git gc
してみましたか?git pack