git忽略特殊文件,.gitignore的使用

2020-11-11  本文已影响0人  Eroc

背景

在使用 git 的时候,会遇到必须把某些文件放到 Git 工作目录中,但又不能提交它们的场景,比如说,保存了数据库密码的配置文件或者编译过程中生成的中间文件等等,每次 git status 都会显示 Untracked files ... ,有强迫症的童鞋心里肯定不爽。

不过 git 也考虑了使用者的感受,故在 git 工作区的根目录下创建一个特殊的 .gitignore 文件,然后把要忽略的文件名填进去,git 就会自动忽略这些文件。

忽略文件的一般原则如下:

.gitignore的语法

语法规则很简单,与正则表达式类似,详情可以查看官网的介绍。以下列出常用的一些规则:

.gitignore 的使用

  1. git 项目中创建 .gitignore 文件
    首先,在我们下载一个 git 项目的时候,是没有 .gitignore 文件的,需要我们自己手动创建,然后再按照上述的匹配规则,定义当前项目的提交规则。
    .gitignore 文件是可以提交到云端仓库中的,这就为该项目下的所有开发者都共享一套定义好的忽略规则。
  2. 定义 git 全局的 .gitignore 文件
    定义全局的忽略规则,可以通过修改 config 来实现。请注意,该规则是用来管理本地所有的 git 项目的,非指定项目,故该文件不能上传到云端仓库中。使用方法如下:
#.gitignore可以放在任意位置,此处以用户根目录为例
git config --global core.excludesfile ~/.gitignore

.gitignore 规则不生效

gitignore 文件只能忽略那些原来没有被 track 的文件,即没有被版本管理中的文件。如果在使用规则前,已经将该文件上传至版本库中,则修改 .gitignore 无效。
解决方法就是清除本地缓存,然后再提交:

git rm -r --cached .
git add .
git commit -m 'update .gitignore'
上一篇 下一篇

猜你喜欢

热点阅读