【GIT问题解决】---- 在【.gitignore】中添加了忽略文件或文件夹后不生效

文章讲述了在Git项目中,.gitignore规则对已跟踪文件无效的问题,介绍了两种解决方案:删除远程库的忽略文件并更新本地,以及仅删除远程库。总结了文件状态对git功能的影响和删除操作后的注意事项。
摘要由CSDN通过智能技术生成

1. 出现问题

在已经提交过的 GIT 管理的项目中,在 .gitignore 文件中新增一些忽略的文件或者文件夹,或者直接新建 .gitignore 文件之后,新增的内容不生效。

2. 实例截图

输入图片说明

3. 实例描述

  1. lifecycle.js 文件已新增到 .gitignore 文件中,但是 lifecycle.js 文件修改的时候依然会上传;
  2. yarn.lock、yarn-error.log、package-lock.json 和 lifecycle.js 是相同的情况。

4. 分析原因

  1. .gitignore 文件的用途:该文件只能作用于Untracked Files,也就是那些从来没有被 GIT 记录过的文件(自添加以后,从未 add 及 commit 过的文件)。
  2. 规则不生效因为:那些 .log 文件曾经被 GIT 记录过,因此 .gitignore 对它们完全无效。

5. 解决办法

5.1 方案一

未被 GIT 记录过,那就只有删除远程库和本地的被忽略文件或文件夹。

  • 1.1 删除本地被忽略的文件;
  • 1.2 git add *
  • 1.3 git commit -m “xxx”
  • 1.4 git push

按照此方案,会导致本地文件或者文件夹也被删除,这样会导致本地也会存在问题。

5.2 方案二

未被 GIT 记录过,删除远程库被忽略文件或文件夹,保留本地的被忽略文件或文件夹。

  • 2.1 git rm --cached filename/-r directory
  • 2.2 git commit -m “xxx”
  • 2.3 git push

6. 删除远程库文件,保留本地

6.1 命令代码
git rm --cached yarn-error.log
git commit -m "删除远程库 yarn-error.log 文件"
git push
6.2 执行演示
  1. 删除
    输入图片说明
  2. 提交
    输入图片说明
  3. 推送
    输入图片说明

7. 删除远程库文件夹,保留本地

7.1 命令代码
git rm --cached -r config
git commit -m "删除远程库 config 文件夹"
git push
7.2 执行演示
  1. 添加忽略文件夹
    输入图片说明
  2. 删除
    输入图片说明
  3. 提交
    输入图片说明
  4. 推送
    输入图片说明

8. 总结

  1. 不同文件的作用阶段不同,因此在使用某个功能的时候,就需要搞清除该功能生效的情况。
  2. 删除文件和文件夹的不同命令,需要注意。
  3. push 后文件或者文件夹不会立即变暗,需要关闭编辑器,重新打开项目,忽略的文件或文件夹就会变暗。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Rattenking

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

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值