介绍一下.gitIgnore文件,当在工作目录树修改某个文件,但是该文件的所有修改都不希望被添加到缓存以及版本库中,如jdbc.properties以及一些其他配置,那么我们就可以利用.gitignore文件配置来完成。
先来说说ignore文件的语法
语法:
1.配置语法
以斜杠"/"开头表示目录
以星号"*"通配多个字符
以问号"?"通配一个字符
以方括号"[]"包含单个字符的匹配列表
以叹号"!"表示不忽略匹配到的文件或者目录
2.实例
- 规则:dir1/*
忽略目录dir1下的全部内容,不管是根目录下的dir1目录还是某个子目录都忽略
- /dir1/*
忽略根目录下的dir1的目录全部内容
- *.properties
忽略.properties结尾的文件爱你
- !*.xml
不忽略.xml结尾的文件
3 下面我们用实例来实践:
(1) 首先我们建立一个文件夹,并初始化
然后手动的在工作目录树下,创建一个文件夹和两个文件,如下图所示(当然你也可以用命令创建)
以及testdir目录下的文件dir3.txt
运行 git status看以看到有3个未跟踪的文件
(2)创建.gitignore文件,并设置git的ignore文件
- 在window系统下直接写如.gitignore文件是不行的,输入文件名 .gitignore. (注意前后都有.),系统会自动转成.gitignore文件
- 或者用命令行创建也行(在这就不讲解了)
- 运行 git config core.excludesfile .git/.gitignore 指定git的.gitignore文件,使之生效(如果想设置全局用--global)
(3)结合实例实践
刚才的命令已经让.gitignore文件生效,运行
git status查看状态
(3.1)忽略 .txt 结尾的文件,往.gitignore文件中添加 *.txt,手动或者运行
echo '*.txt' >> .git/.gitignore
再次查看状态,只有dir2文件了,因为其他连个文件都是.txt文件结尾的文件
(3.2)我们不想忽略testdir文件的文件
在.gitignore文件中加入 !testdir/*
运行
git status查看