一、设置ignore文件
有些时候我们创建了一个项目,但是项目中有些文件不想被Git跟踪、提交。例如maven项目中的target目录,日志目录,idea 或者 eclipse 在加载项目后自动生成的一些本地化文件或者目录等。怎么办呢?这就需要我们为项目设置ignore文件。
步骤:
1. 在项目**根目录**下创建 **.gitignore** 文件,一定要是根目录下;
2. 编辑
.gitignore
文件,按照如下规则过滤需要忽略的文件或者文件夹
# 注释 - 以井号(#)开头的行为注释
# 忽略单个文件
filename.txt
# 忽略文件类型(例如所有的txt文件)
*.txt
# 忽略目录(例如一个名为"logs"的目录)
/logs/
# 忽略特定目录下的所有文件和子目录(例如一个名为"temp"的目录)
/temp/*
# 忽略特定目录及其子目录中的特定文件(例如忽略"logs"目录下的所有.log文件)
/logs/*.log
3. 保存并关闭
.gitignore
文件;
4. 将
.gitignore
文件添加到Git仓库中并提交更交
git add .gitignore
git commit -m "Add .gitignore file, XXXX"
从此以后,Git将忽略
.gitignore
文件中指定的文件和目录,并且它们不会出现在
git status
、
git add
和
git commit
等命令的结果中。
二、.gitingore 文件不生效
如果你设置了
.gitignore
文件但它不起作用,可能是由于以下几个原因:
1.
.gitignore
文件名称不对,或者没有放到项目的跟目录下;
2. 文件里过滤的规则语法不对;
3. 文件已经被Git跟踪:如果你在设置
.gitignore
文件之前已经将文件添加到Git仓库并提交了更改,那么
.gitignore
文件对于已经被Git跟踪的文件是无效的。在这种情况下,你需要使用以下命令将这些文件从Git中删除:
git rm --cached <filename>
4. 缓存未清除:如果你之前已经将一些文件添加到Git仓库,并且在
.gitignore
文件中将它们列为忽略项,那么这些文件可能仍然存在于Git的缓存中。在这种情况下,
.gitignore
文件不会立即生效。你可以尝试使用以下命令清除Git缓存并更新忽略规则:
git rm -r --cached .
git add .
git commit -m "Update .gitignore, XXXX"
一般来说不生效都是因为 3或者4 条的原因,只要按照上面的命令执行了基本上都是OK的。
版权归原作者 Hakan707 所有, 如有侵权,请联系我们删除。