gitignore的使用目的
在开发项目过程中,并不是所有文件都需要被上传到代码仓库,比如本地的测试文件、编译器插件生成的相关文件等。
但是如果每次提交git的时候都需要手动跳过这些文件的话,不仅会增加操作的繁琐程度,更有可能在某次commit的时候误操作,这就会给项目的其他合作伙伴以及自己带来很多不便。
因此gitignore就应运而生了,它能通过一系列的自定义规则来让git选择性的上传文件。
gitignore的使用相关规范
注释的使用
使用 # 开头,后面跟注释内容:
# 这是一条注释
常用匹配示例
bin/: 忽略当前路径下的bin文件夹,该文件夹下的所有内容都会被忽略,不忽略 bin 文件
/bin: 忽略根目录下的bin文件
/*.c: 忽略 cat.c,不忽略 build/cat.c
debug/*.obj: 忽略 debug/io.obj,不忽略 debug/common/io.obj 和 tools/debug/io.obj
**/foo: 忽略/foo, a/foo, a/b/foo等
a/**/b: 忽略a/b, a/x/b, a/x/y/b等
!/bin/run.sh: 不忽略 bin 目录下的 run.sh 文件
*.log: 忽略所有 .log 文件
config.php: 忽略当前路径的 config.php 文件
如何在gitignore生效的情况下强制add文件到暂存区
如果某文件已经被gitignore屏蔽了而无法上传的话,可以通过下列指令强制上传
git add -f App.class
总结
使用 git 过程中,掌握 .gitignore 的使用很重要,可以减少不必要的文件上传到远程。