私たちのプロジェクトは約11GBで、そのうち10個はバイナリデータ(.png画像)です。その結果、a git diff
またはgit status
操作は1分以上かかります。幸いなことに、すべてのデータファイルは素晴らしい名前のフォルダに分けられていますdata
。割り当ては、「バイナリファイルの圧縮、差分、およびその他のコストのかかる操作を避けます」です。
プロジェクトを2つのリポジトリに分割することを検討しました。次に
data
、外部リポジトリになり、メインのソースコードリポジトリによってチェックアウトされます。特にデータファイルを操作するアーティストにとって、リポジトリの同期を維持するオーバーヘッドは大きすぎると判断されました。gitにこれらのファイルを明示的にバイナリと伝え、差分からファイルを除外することを検討しましたが、これらは質問に対する部分的な解決策にすぎないようです。
git属性が解決策だと思いますが、どうやって?または、モノリシックリポジトリよりも優れたアーキテクチャがありますか?