我一直在研究关于.gitignore文件的网络和各种文档。我对Unix /终端(使用Mac OS X)有点n00b,我不能为我的生活找出如何忽略文件夹的内容(任何类型的内容,无论是文件还是其他文件夹,不管它有多深。)
我正在开发一个在一致的文件结构中生成图像文件的项目,除了我们遇到有关用户权限的合并冲突。我想忽略包含生成的图像的文件夹,这样我们就可以避免任何进一步的毛发拉动,必须在每次拉动的基础上调整权限。我只是无法使.gitignore文件工作,所以我需要找出文件夹内容匹配的正确模式。我希望它足够通用,因为它可以轻松地包含整个站点(因此,如果任何文件夹包含特定的文件夹名称,它将忽略其内容)。
我试过了:
# Images
resample/
resize/
min/
和...
# Images
resample/*
resize/*
min/*
和...
# Images
*/resample/*
*/resize/*
*/min/*
还有更多组合效果不理想。我从未得到过foldername/**/*
模式。关于这个问题的任何帮助将非常感谢!
答案 0 :(得分:25)
感谢以前的海报帮助他们。经过深入研究后,我发现了如何正确实施新的.gitignore
规则。问题是之前的图像被跟踪,所以我不得不删除.git/index
文件中的文件引用,如此...
// Remove all tracked files from the index
// (doesn't remove the file, just the reference)
git rm -r --cached .
// Add all the files again
// (files and folders specified by .gitignore aren't added to the index)
git add .
// Commit to save changes
git commit -am "gitignore update"
答案 1 :(得分:8)
您正在寻找gitignore
gitignore文件指定git应忽略的故意未跟踪文件。注意所有 gitignore文件实际上只涉及git尚未跟踪的文件;
如果您的文件或文件夹位于存储库中,则必须从存储库中删除它才能使其可以忽略。
还要注意模式中的区分大小写。
您的第一个列表应该可以正常运行,假设这些文件夹当前不受版本控制。
# Images
resample/
resize/
min/