Git提供了一个.gitignore文件,帮助我们忽略掉一些不想或者不能提交到版本控制器中的文件。这个文件的使用时必须要掌握的。
- *.a # 忽略所有目录下的.a结尾的文件
- !lib.a # 但lib.a除外
- /TODO # 仅仅忽略项目根目录下的TODO文件,不包括subdir/TODO
- build/ # 忽略build/目录下的所有文件
- doc/*.txt # 忽略 doc/notes.txt 但不包括doc/server/arch.txt
- doc/**/*.txt # 会忽略doc/目录及其子目录下的所有以.txt结尾的文件
下面开始对上面的命令依次进行演示:
*.log 忽略所有目录下的.log结尾的文件
编辑.gitignore文件
如下图所示,根目录下的one.log文件和test目录下的two.log文件都被忽略掉了
!lib.log但lib.log除外
注意,!lib.log不仅仅是不忽略根目录下的lib.log文件,根目录下所有目录及其子目录里的lib.log都不会被忽略
/TODO 仅仅忽略项目根目录下的TODO文件,不包括subdir/TODO
如下图,.gitignore配置忽略/test目录下的文件
可以看到,只把根目录下的test文件忽略了,但是其他目录有test文件夹就不会被忽略
build/ 忽略build/目录下的所有文件
doc/*.txt 忽略 doc/notes.txt 但不包括doc/server/arch.txt
doc之所以没有被忽略,是因为doc目录下的server目录里有以.txt结尾的文件
如果想忽略doc下所有的.txt文件,可以采用下面的方式,**表示所有目录
这样,doc目录下的所有.txt都被忽略了