为了满足github 100Mb的要求,我运行以下命令忽略一些大文件:
$ find ./* -size +100M | cat >> .gitignore
但是当我稍后运行add *时,它仍会添加> 100MB文件来提交。
$ git add *
warning: LF will be replaced by CRLF in hw1/input/act_test.csv.
The file will have its original line endings in your working directory
如何使此gitignore工作? 预先感谢您的想法和建议。
添加:
我的目的是使add *
不再跟踪大型的csv文件,以下答案似乎无效。
答案 0 :(得分:3)
先前添加的文件不受此影响,以后将它们添加到gitignore。备份文件,然后在本地删除文件并提交。因此,它们不会被git跟踪。现在,将文件粘贴回原始位置,然后可以将较大的文件名添加到gitignore。现在,git将不再跟踪它们,因为它们被视为新文件。
另一种方法是使用,如@alfunx git rm --cached <file>
所建议。该文件将从高速缓存(索引)中删除,一旦您提交,将不再跟踪该文件。您也可以相应地更新.gitignore,以避免进一步跟踪文件。
一个gitignore文件指定了Git故意未跟踪的文件 应该忽略。 Git已经跟踪的文件不受影响;看到 注意,了解详情。
[...]
注释
gitignore文件的目的是确保某些文件不 由Git跟踪的跟踪仍未跟踪。
要停止跟踪当前跟踪的文件,请使用
git rm --cached
。
答案 1 :(得分:0)
与其忽略文件(通常以后会通过调用add。方法添加回文件),还有一种更好的方法来解决问题git lfs
,请参见下面的用法,这将有助于将大文件推送到github。
$git lfs install
$git lfs track "*.csv"
$git add .gitattributes
$git add act_train.csv
$git commit -m "test lfs"
$git push
完成