git的.gitignore忽略文件

git 2016-01-11

起步

一个项目难免会有一些文件不需要纳入git管理,也不希望他们出现在未跟踪列表,如日志文件,缓存文件,java编译的.class文件或临时文件等.这种情况下,就可以创建一个名为.gitignore文件.windows下不能创建.开头文件的问题自行解决。

配置语法

  • 所有空行或者以 # 开头的行都会被 Git 忽略。
  • 可以使用标准的 glob 模式匹配。
  • 匹配模式可以以 / 开头防止递归。
  • 匹配模式可以以 / 结尾指定目录。
  • 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号 ! 取反。
#忽略javaee项目中生成的class文件
/WebRoot/WEB-INF/classes/

#忽略配置文件
/Config/Config.xml

#忽略日志文件
/Runtime/*.log

# 忽略所有doc目录下的pdf文件
doc/**/*.pdf

#忽略目录下不是php的所有文件
!/php/*.php

生效

有时候我们添加.gitignore文件之前已经提交过了文件。.gitignore只能忽略那些原来没有被track的文件(自添加以后,从未 add 及 commit 过的文件),如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。就需要执行:

git rm -r --cached . #删除追踪状态

git add .

git commit -m "fixed untracked files"

本文由 hongweipeng 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

如果对您有用,您的支持将鼓励我继续创作!