我们经常使用git来进行版本控制,gitignore则规定了哪些文件我们不需要进行版本控制,比如C++语言的Debug目录下的文件,java语言的*.class文件等等,当然还有更多复杂的情况,楼主一直不是很清楚,所以花了点时间,在此整理并实测一下。
测试环境:
我的git版本是:v2.7.2
测试系统: windows10
下面是我的测试项目的文件结构:
以下是gitignore的内容:
# 测试结果来自 git version 2.7.2.windows.1
# 忽略以a为后缀的文件
*.a
# 仅仅忽略/a目录下的文件,不会忽略 /xxx/a/
/a
# 忽略b以及 /xxx/b/
b/
# 忽略文件名为.first的文件
.first
# 忽略.scd以及/xxx/.scd/
.scd/
# 跟/.third效果等同
/.third/
# 忽略doc/notes.txt,但是不会忽略 doc/xxx/arch.txt
doc/*.txt
# 忽略所有doc以及doc子目录下的所有.m文件
doc/**/*.m
根据以上gitignore的ignore策略,最后加入版本控制系统的文件有:
实测结果跟gitignore文件描述保持一致。