参考链接

60、两种情况说明

  1. 在项目开始就创建.gitignore文件,将不需要版本管理的文件或文件夹添加进去。
  2. push到远程仓库后,想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先删除本地缓存(改变成未track状态),然后再提交。
# 删除本地缓存
git rm -r --cached .
git add .
git commit -m 'update .gitignore'

80、忽略正则举例


# 忽略.cache文件夹及文件夹下文件
.cache

# 忽略以.iml结尾的文件
*.iml

# 忽略*.o和*.a文件
*.[oa]

# 忽略*.b和*.B文件,my.b除外
*.[bB]
!my.b

# 忽略dbg文件和dbg目录
dbg

# 只忽略dbg目录,不忽略dbg文件
dbg/

# 只忽略dbg文件,不忽略dbg目录
dbg
!dbg/

# 只忽略当前目录下的dbg文件和目录,子目录的dbg不在忽略范围内
/dbg

# 以'#'开始的行,被视为注释.

 * ?:代表任意的一个字符
    * *:代表任意数目的字符
    * {!ab}:必须不是此类型
    * {ab,bb,cx}:代表ab,bb,cx中任一类型即可
    * [abc]:代表a,b,c中任一字符即可
    * [ ^abc]:代表必须不是a,b,c中任一字符

100、 .gitignore常用

github项目参考链接

Q.E.D.


行走在天地间自由的灵魂