.gitignore文件_Git:.gitignore
今天我们说一说 .gitignore
文件。此文件的目的是告诉 Git 不要跟踪我列出的那些文件。如果你已经把想要屏蔽的文件提交到了仓库中,即 Git 已经跟踪了那些文件,那么此时的 .gitignore
文件对已经跟踪的文件不起作用的。
规则
官方说明
*
:匹配 0 个或多个任意字符,不包括 /
?
:只匹配一个字符,不包括 /
[abc]
:匹配任意一个括号中的字符,a
或 b
或 c
[a-z]
:匹配 a
~ z
中的任意一个字符
!
:放过某对象。比如,使用 *.a
忽略所有的 .a
文件,但是 !lib.a
表示 lib.a
是一个例外,需要 Git 跟踪
**
:匹配所有字符,包括 /
,主要用在目录结构中
:转义字符
举例说明
build
:不跟踪名字为 build
的文件以及文件夹。包括 build/
、src/build
。该命令和 **/build
达到的效果相同
release/
:不跟踪名字为 release
的文件夹,包括 release/
、test/release/
。但是跟踪名字为 release
的文件
test/**
:不跟踪 test/
目录下的所有文件,包括子目录和文件。注意,test/
目录的路径是 .gitignore
文件所在目录的相对路径。比如 src/test/**
命令就表示忽略 .gitignore
文件所在目录下的 src/test/
目录下的所有文件
a/**/b
:不跟踪 a/b
、a/c/b
、a/c/d/b
总结
我没有测试全部.gitignore
规则,上述规则足够我使用了,因为我的目录结构足够整洁。
一个简单并整洁的目录结构很重要。