.gitignore编写规则和语法

发布时间:2023-12-12浏览次数:322 次
.gitignore文件,使我们在Git代码跟踪中,定义的忽略文件列表,常规的,我们知道,将文件名或者文件夹名列在.gitignore文件中,即可在git版本中

.gitignore文件,使我们在Git代码跟踪中,定义的忽略文件列表,常规的,我们知道,将文件名或者文件夹名列在.gitignore文件中,即可在git版本中不再跟踪这些文件,但是有些时候,我们有一些特殊的需求需要实现,这个时候,我们就需要认真的学习一下.gitignore文件的编写规则

一、基本规则

1、空行和注释

空行不匹配任何文件,仅用来作为分隔符,以方便阅读。# 用于给.gitignore文件添加注释,“\”表示转义,如果在文件中需要编写实体的'\',则需要添加引号,如:"\"。

2、正则匹配

星号(*)可以匹配任何字符(0次或者多次)

问号(?)可以匹配任何字符(1次或者多次)

另外需要注意:他们都不可以用来匹配“/”.

3、“/”用于分隔目录

这里要注意“/”在字符串起始位置时,表示从.gitignore文件所在目录开始匹配。否则,下级目录也都将匹配。

当“/”在文件名末尾时,只匹配目录,否则,同名的目录和文件都将被匹配。

4、!已排除重新包含

之前已经被排除了的文件,使用!模式后,该文件将会被重新包含到跟踪列表中。这里需要注意:

如果该文件的父级目录被排除了,那么即时使用!该文件也不会再被包含。

5、[]通常用于匹配一个字符列表,

如:c[ao]t 可以匹配 cat 和 cot ,  do[gt] 可以匹配 dog 和 dot。

6、两个星号(**)可以匹配多级目录,如:a/**/b 可以用来匹配:“a/b”,“a/x/b”,“a/x/y/b”等。

二、一些注意事项

.gitignore只能忽略那些没有被追踪过的文件,所以,如果文件已经被纳入版本管理之后,再在.gitignore文件中添加规则是无效的。

不过可以通过下面的方法解决:

git rm -rf --cached
git add .
git status

同样的,已经被.gitignore忽略的文件也是无法加入版本库的,要想将文件纳入版本管理,需要先移除规则。

三、检查命令

最后,可以通过git的命令来检查已有的.gitignore规则是否可以跟踪某个文件或某个文件夹。

命令为:

git check-ignore {文件或文件名}
git check-ignore -v {文件或文件名}

上面两条命令,当文件会被排斥时(即. gitignore规则有效)时,会输出,反之,则没有输出。带-v的命令,会列出是那条规则产生的效果。

扫一扫,在手机上查看