git

Git ignore详解

环境

Windows XP SP3 + TortoiseGit + msysGit

 

ignore files的三种方法

以下涉及的ignore文件均为如下格式:

#?以’#’开始的行,被视为注释.#?忽略掉所有文件名是?foo.txt的文件.

foo.txt

#?忽略所有生成的?html文件,

*.html

# foo.html是手工维护的,所以例外.

!foo.html

#?忽略所有.o和?.a文件.

*.[oa]

 

【方式一】

在仓库目录下新建一个名为.gitignore的文件(因为是点开头,没有文件名,没办法直接在windows目录下直接创建,必须通过右键Git Bash,按照linux的方式来新建.gitignore文件)。如下图所示。

.gitignore文件对其所在的目录及所在目录的全部子目录均有效。通过将.gitignore文件添加到仓库,其他开发者更新该文件到本地仓库,以共享同一套忽略规则。

【方式二】

通过配置.git/info/exclude文件来忽略文件。这种方式对仓库全局有效,只能对自己本地仓库有作用,其他人没办法通过这种方式来共享忽略规则,除非他人也修改其本地仓库的该文件。

 

【方式三】

通过.git/config配置文件的core. Excludesfile选项,指定一个忽略规则文件(完整路径),如下图所示。忽略规则在文件e:/gitignore.txt中(当然该文件名可以任意取)。

该方式的作用域是也全局的。

 

【例子】

[codesyntax lang=”text”]
# 忽略*.o和*.a文件
?*.[oa]
# 忽略*.b和*.B文件,my.b除外
*.[bB]
!my.b
# 忽略dbg文件和dbg目录
dbg
# 只忽略dbg目录,不忽略dbg文件
dbg/
# 只忽略dbg文件,不忽略dbg目录
dbg
!dbg/
# 只忽略当前目录下的dbg文件和目录,子目录的dbg不在忽略范围内
/dbg
[/codesyntax]

发布者

Git 初学者

Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理