gitignore文件不生效的问题解决

如何添加 git的忽略文件 .gitignore

在使用git过程中,我们可能有些文件不需要上传上去,比如一些缓存文件,生成的图片,运行环境的一些配置等等,这时就需要用到.gitignore忽略掉这些文件

第一步,创建.gitignore文件
在版本管理的根目录下(与.Git文件夹同级)创建一个 .gitignore
命令如下:touch .gitignore

第二步,写入要忽略的文件或文件夹
命令如下:vim .gitignore
进入查看文件窗口,输入i,进入插入模式,这里我要忽略.gitignore文件runtime这个文件夹,就写入.gitignore和runtime/ ,按esc退出插入模式,输入:wq,保存并退出,就可以了如图
image

有时候在项目开发过程中,突然心血来潮想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交

如果设置了正确的gitignore文件,但是在git add . 的时候会发现本应该被忽略的文件还是被提交了。
那可能是git仓库缓存的问题,只需要做如下操作即可:

git rm -r --cached .
git add .
git commit -m "chore(gitignore):清除git缓存,解决gitignore问题"
git push

如果已经提交过的文件或者文件夹怎么办?此时更改.gitignore文件对已经提交的文件是无效的。
2.1 首先,编辑.gitignore文件。
2.2 然后如果是单个文件夹(vender),可以使用如下命令从仓库中删除:

.gitignore文件

# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib

# Test binary, built with `go test -c`
*.test

# Output of the go coverage tool, specifically when used with LiteIDE
*.out

# Dependency directories (remove the comment below to include it)
# vendor/

删除本地缓存

git rm -r vender

文件.gitignore的格式规范:
A:#为注释
B:可以使用shell所使用的正则表达式来进行模式匹配
C:匹配模式最后跟"/"说明要忽略的是目录
D:使用!取反(例如目录中包含 test.a,并且gitignore文件中包含 *.[oa],如果在文件中加入 !test.a 表明忽略除test.a文件以外的后缀名为.a或者.o的文件)

配置语法:
以斜杠“/”开头表示目录;
以星号“*”通配多个字符;
以问号“?”通配单个字符
以方括号“[]”包含单个字符的匹配列表;
以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

例子:
.a # 忽略所有 .a 结尾的文件
!lib.a # 但 lib.a 除外
/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ # 忽略 build/ 目录下的所有文件
doc/
.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

此外,git 对于 .gitignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;
删除git里的commit日志

1.Checkout

   git checkout --orphan latest_branch

2. Add all the files

   git add -A

3. Commit the changes

   git commit -am "commit message"


4. Delete the branch

   git branch -D master

5.Rename the current branch to master

   git branch -m master

6.Finally, force update your repository

   git push -f origin master

更多参考:

https://blog.csdn.net/toopoo/article/details/88660806

posted @ 2020-07-30 09:36  HaimaBlog  阅读(463)  评论(0编辑  收藏  举报