在实际使用git的过程中,与遇到项目中有些文件不应该加入版本库,比如一些IDE的配置文件,引入的jar包等,当然可以在写git命令的时候将需要的文件一个一个加入版本库,当这样做及其不方便,首先,工作区永远是不干净的,git会一直提示将文件加入版本库,第二个是当不要用加入版库的文件较多时,很容易出现混乱,再者就是一个一个写文件名太过繁琐,不能使用"git add ." 命令将所有的文件加入版本库。
例如"setting.properties"是一个IDE的配置文件,不需要将其加入版本库,但这样的话每次使用git status命令就会出现提示。
使用.gitignore文件能很好的解决这个问题。
在项目目录下创建.gitignore文件:
下面在文件中增加一行:
可以看到,git只提示将.gitignore文件加入版本库,而开始的setting.properties文件没有再提示了。
如果有很多个文件呢?也要一个一个写文件名吗?当然不,.gitignore文件提交了强大的匹配功能,它支持正则表达式和通配符。
注意 在.gitignre文件中,#后的为注释内容
*.b # 所有以.b为后缀的文件 *是通配符
!a.b # 排除a.b,即a.b不会被忽略 !是非的意思
/test.txt # 只忽略根目录下的test.txt文件,而不包括子目录下的test.txt文件,如/mydir/test.txt就不会被忽略
/*/test.txt # 只忽略根目录下某个子目录下的test.txt文件,但/mydir1/mydir2/test.txt不会被忽略
/**/test.txt # 忽略根目录下所有test.txt,不管该文件在哪个子目录下,即只有项目中存在test.txt文件,就会被忽略
mydir/ # 忽略mydir下的所有文件