我試圖實施Git來管理創意資產(Photoshop,Illustrator,Maya等),並且我想根據文件大小而不是擴展名,位置等排除文件。gitignore按文件大小?
例如,我不想排除所有的.avi文件,但是我不想提交的隨機目錄中有一些大量的+ 1GB avi文件。
有什麼建議嗎?
我試圖實施Git來管理創意資產(Photoshop,Illustrator,Maya等),並且我想根據文件大小而不是擴展名,位置等排除文件。gitignore按文件大小?
例如,我不想排除所有的.avi文件,但是我不想提交的隨機目錄中有一些大量的+ 1GB avi文件。
有什麼建議嗎?
我是新來的.gitignore,所以有可能是更好的方式來做到這一點,但我一直在使用不包括文件大小的文件:
find . -size +1G | cat >> .gitignore
很明顯,你必須運行這段代碼如果您生成大量大文件,則經常發生。
我會警告說Git的大型二進制文件的性能很差,而這個問題現在纔剛剛得到解決。除了純文本之外,我建議不要使用Git。 – erjiang 2010-10-27 17:11:31
@erjiang:同意。 (除了小的二進制文件是非常好的;當然,它們不能被精確地分散,但沒有VCS可以做到這一點)當然,OP是說他明確不想跟蹤大文件,所以它可能都沒問題! – Cascabel 2010-10-27 19:02:47
當然沒有內置的方法來做到這一點。您可以通過添加一個預先提交鉤子來實現它,該鉤子會檢查所有要提交的文件的大小,並在任何超過閾值時中止。您可以添加額外的自動化,但要小心。你想要的最後一件事是通過不小心忽略重要內容而丟失數據。 (爲了增加危險性,您可以:自動取消大文件,自動將它們添加到gitignore,甚至繼續進行修改的提交而不是中止。) – Cascabel 2010-10-27 19:06:37