一般来说每个Git项目中都需要一个 .gitignore 文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。实际项目中,很多文件都是不需要版本管理的,这个文件的内容是一些规则,Git会根据这些规则来判断是否将文件添加到版本控制中。
TIPS:最好在项目开始就创建 .gitignore 文件,不然一旦push以后,github一旦管理起来想要再去添加规则过滤文件就比较难搞,但也不是没有办法,本文就会介绍。
创建.gitignore文件
在本地仓库的项目的文件夹下 git bash ,利用命令:
$ touch .gitignore
添加 .gitignore文件,或者你自己手动添加吧,它就是一个文本文档。
语法规则
配置语法:
以斜杠“/”开头表示目录
以星号“*”通配多个字符
以问号“?”通配单个字符
以方括号“[]”包含单个字符的匹配列表
以叹号“!”表示不忽略(跟踪)匹配到的文件或目录
#为注释
常用规则:
/mtk/ 过滤整个文件夹
*.zip 过滤所有.zip文件
/mtk/do.c 过滤某个具体文件
fd1/* 忽略目录 fd1 下的全部内容
/fd1/* 忽略根目录下的 /fd1/ 目录的全部内容;
/*
!.gitignore
!/fw/bin/
!/fw/sf/ 忽略全部内容,但是不忽略 .gitignore 文件、根目录下的 /fw/bin/ 和 /fw/sf/ 目录;
Git在添加.gitignore之前就push了项目
(为避免冲突可以先同步下远程仓库 $ git pull)
在本地项目目录下删除暂存区内容:
$ git rm -r --cached .
新建.gitignore文件,并添加过滤规则(用文本编辑器如Notepad++)
再次add文件,添加到暂存区
再次commit提交文件
$ git commit -m "add .gitignore"
最后push即可
Git push完文件后想要修改过滤规则使其生效(跟上一个差不多)
修改完.gitignore
在本地项目目录下
$ git rm -r --cached .
$ git add .
$ git commit -m".gitignore update"
TIPS:如果你不是在本地目录下 git bash ,而是在本地仓库下 bash就把 . 换成文件名,随机应变嘛,别那么死板。