赞
踩
在根目录下创建 .gitignore
文件,在.gitignore
文件下添加如下配置
/
开头忽略当前目录下的文件,但不包括子目录下的文件/
结尾忽略目录下所有文件及内容,不管是根目录或子目录都会被忽略#
开头表示注释*
匹配零个或多个字符?
匹配单个字符[]
匹配括号内的任一字符!
表示不忽略(跟踪)匹配到的文件或目录.DS_Store node_modules /dist # local env files .env.local .env.*.local # Log files npm-debug.log* yarn-debug.log* yarn-error.log* pnpm-debug.log* # Editor directories and files .idea .vscode *.suo *.ntvs* *.njsproj *.sln *.sw? package-lock.json yarn.lock
.gitignore
规则不生效.gitignore
只能忽略那些原来没有被追踪(tracked)的文件,如果某些文件已经被纳入了版本管理中,则修改 .gitignore
是无效的。git rm -r --cached .
git add .
git commit -m 'update .gitignore'
$ git add App.class
The following paths are ignored by one of your .gitignore files:
App.class
Use -f if you really want to add them.
如果你确实想添加该文件,可以用-f强制添加到Git:
$ git add -f App.class
$ git check-ignore -v App.class
.gitignore:3:*.class App.class
Git会告诉我们,.gitignore的第3行规则忽略了该文件,于是我们就可以知道应该修订哪个规则。
在开发阶段,有时候需要临时忽略本地仓库中已提交的文件的变更。例如,你的配置文件与本机的工作环境或者项目配置有关,那么这个操作就非常有用:
git update-index --skip-worktree <file>
当然也可以恢复文件的追踪:
git update-index --no-skip-worktree <file>
也可以通过以下方式进行。这主要是为了防止文件被开发者修改。
git update-index --assume-unchanged <file>
git update-index --no-assume-unchanged <file>
如果一个文件已经被 Git 跟踪,那么再将这个文件添加到 .gitignore 中并不会忽略文件变更。你还需要从Git 暂存区(index)中移除这个文件的信息,步骤如下:
.gitignore
中添加这个文件git rm --cached <file>
.gitignore
到您的仓库注:以上步骤不会从系统中删除文件,只是告诉Git以后忽略该文件的变更
参考文章:.gitignore文件用法及如何配置
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。