Git - 添加小于X兆字节的所有文件

时间:2014-02-27 01:37:06

标签: git

我正在使用git来管理一个非编码项目文件夹,该文件夹中散布着一些大文件。

我没有兴趣移动文件,因为它们不是我的,但我知道git存在非常大的文件问题(用Linus的话来说,“我们很糟糕”)并且我想避免那些性能尽可能多的问题。我在这里,只是跑git init并即将点击git add -A,但在我做之前就停止了。

我想尝试向git add添加仅选择某些文件的标记。我不想基于扩展而受到偏见,只是基于大小。可以add或我的.gitignore文件执行此操作吗?

2 个答案:

答案 0 :(得分:8)

git没有可以执行您想要的操作的标记。但是,有许多其他实用程序可以正常工作......例如find命令。要添加小于4 MB的所有文件:

find * -size -4M -type f -print | xargs git add

这假设您没有包含空格的文件名(例如,“我的重要文件”)。如果你有这样的文件,那么:

find * -size -4M -type f -print0 | xargs -0 git add

更新:请注意,我已将.替换为*,因为否则会在.git找到(并尝试添加)内容目录,这没什么用。

答案 1 :(得分:2)

根据larsks的答案,您可以采取相反的做法将大文件添加到.gitignore

echo "# Files over 4mb" >> .gitignore
find * -size +4M -type f -print >> .gitignore
相关问题