git代码仓库必知:文件忽略规则。问题解决: gitignore文件没有忽略某个文件,就是提交不了

问题背景

假设我的文件叫a.tsx,在 git status 时检测不到它的改动记录,并且 git commit 不了! 强制推才可以。这样会影响开发进度,因为我们经常需要提交代码,但是不一定记得强推,这样代码就会丢失。只在本地可以运行,远程仓库并没有。

在VSCode 编辑器的左侧文件栏中,这个文件名也是灰色的。如图:

一、Git种的忽略文件有哪些?

在 Git 中,有两种类型的忽略文件:项目级别的 .gitignore 和全局级别的 .gitignore_global。

第一种: 项目级别的 .gitignore: 位于项目的根目录下,这个文件仅影响当前项目,不会影响其他项目或全局设置。

第二种: 全局级别的 .gitignore_global: 位于你用户主目录下,文件名是 .gitignore_global。这个文件是全局的,它对计算机上所有 Git 仓库都生效,不仅影响项目级别的设置,还影响一些 Git 命令的默认行为,比如 git status。你可以在其中设置一些全局忽略规则,以避免在所有项目中重复设置相同的忽略规则。 如果你的全局 .gitignore_global 文件设置了一些规则,那么这些规则会影响到所有的 Git 仓库,包括项目级别的 .gitignore。

这就是文章开篇提到那个问题的原因 :在项目级别的 .gitignore 中没有被忽略,但在全局忽略文件中被忽略了。

如果想要在某个项目中不受全局设置的影响,可以在该项目的 .gitignore 文件中覆盖全局设置,或者不使用全局设置而是在项目级别设置特定的忽略规则。

二、设置忽略文件的方法

对于第一种,项目中的忽略文件,找到它并编辑就可以了。

通常我们会忽略一些node_moudles文件,dist文件。看有没有不小心忽略掉的,在这个文件里去除就可以了。记得重启项目看看。

对于第二种,需要找到电脑中全局忽略文件的位置,这个文件一般在用户主目录下:

  • 在 Unix/Linux 系统上,通常是 ~/.gitignore_global。
  • 在 macOS 上,也是 ~/.gitignore_global。
  • 在 Windows 上,通常是 C:\Users\你的用户名\.gitignore_global。

更改其中内容,只保留真正要忽略的文件,保存,重启下编辑器即可。

相关推荐
高频因子挖掘机1 小时前
QuantDash 明明安装成功,为什么 Python 还是无法 import?
后端·github·api
java1234_小锋5 小时前
【技术专题】HTML5 网页技术 - HTML5 Canvas 基础以及动画入门
前端·html·html5
知了学历孙老师8 小时前
小自考的校考和统考,出题方和难度差在哪
java·大数据·前端
ShineWinsu10 小时前
对于JavaScript:操作元素的解析
开发语言·前端·javascript·面试·web·dom·元素
福兮说11 小时前
JSON 格式正确,数据就可靠吗?我用一份自编配置检查类型与空值
java·前端·json
高频因子挖掘机11 小时前
A股量化从日线升级到5分钟线:数据量增加后最先暴露哪些工程问题?
后端·github·api
Demons_kirit11 小时前
CTFHub 信息泄露通关笔记:Git泄露 Log - 教程
笔记·git·网络安全
高频因子挖掘机11 小时前
历史行情返回顺序变了,为什么按行号计算指标很危险?
后端·github·api
用户72737441388412 小时前
两个日期中间隔了多少天:闰年和跨年最容易算错
github
程序员老赵12 小时前
Docker 部署青龙面板:轻松搭建定时任务管理平台
前端·docker·开源