添加gitignore文件失效的原因

添加gitignore文件失效的原因

1. gitignore原理:在项目开始的时候配置了.gitignore文件

在项目开始的时候配置了.gitignore文件,会对一些文件进行忽略。然后git初始化,添加到远程仓库,这个时候再进行版本控制的时候就会忽略对这些文件的跟踪。

2. 失效情景:项目开始的时候 没有将一些无关文件配置进 .gitignore里面。

项目开始的时候 没有将一些无关文件配置进 .gitignore里面。在git初始化之后再添加.gitignore文件,这时候,文件已经被track,导致.gitignore文件无法进行跟踪,所以导致gitignore文件失效, 修改文件之后,git依然检测到被忽略的文件改动。

原因

原来git有一条规则,“如果一个文件一开始没有添加到.gitignore里面,中途添加进去。git 将不会忽略这个文件。”在这种情况下,必须使用 git rm --cached < file name > 这个命令来移除对这个文件的跟踪,然后将这个不想被跟踪的文件添加到 .gitignore文件里面就可以了。

推荐方法:参考于newcih的博客
git update-index --assume-unchanged <文件名>

其他解决办法(不推荐,可能会把提交提到远程):

  • 方法1. 移除某个文件的跟踪,然后再添加到gitignore文件中。

         git rm -r --cached <文件名>
         git add <文件名>
         git commit -m 'fixed untracked files'
    
  • 方法2. 先把本地缓存删除(改变成未track状态),然后再提交。
    首先把本地未提交的全部提交到版本库。

         git add -A
         git commit -m ''
    
    然后把本地的缓存删除,再提交一次。
    
         git rm -r --cached .
         git add .
         git commit -m "fixed untracked files"
    
  • 3
    点赞
  • 5
    收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lancnn

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值