git如果需要忽略某个文件夹,可以在初始化之后,在仓库根目录下创建一个.gitignore文件,添加需要忽略的文件和文件夹即可。 我们也不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了。所有配置文件可以直接在线浏览:https://github.com/github/gitignore 例如排除Windows自动生成的垃圾文件和仓库的APP1子文件夹:
1 2 3 4 5 6 |
# Windows: Thumbs.db ehthumbs.db Desktop.ini #Directories APP1/ |
如果已经提交过的文件或者文件夹怎么办?此时更改.gitignore文件对已经提交的文件是无效的。 2.1 首先,编辑.gitignore文件。 2.2 然后如果是单个文件,可以使用如下命令从仓库中删除: git rm --cached logs/xx.log 如果是整个目录: git rm --cached logs/* 如果文件很多,那么直接 git rm --cached . 如果提示某个文件无法忽略,可以添加-f参数强制忽略。 git rm -f --cached logs/xx.log 2.3 然后 git add . git commit -m "Update .gitignore" 把被忽略的某个文件强制添加回去: git add -f filename ignore规则检查: git check-ignore 一些规则 a# 忽略所有 .a 结尾的文件 !lib.a# 但lib.a 除外 /TODO# 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO build/# 忽略build/ 目录下的所有文件 doc/.txt# 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt 参考文献: Git忽略特殊文件 – 廖雪峰的官方网站 git如何忽略已经提交的文件 (.gitignore文件无效) – 简书 Git 中.gitignore 使用和.gitignore 无效的解决方法 – 简书 from:https://blog.csdn.net/toopoo/article/details/88660806
View Details