git 文件被莫名其妙的或略且无论如何都查不到哪个.gitignore文件忽略的

先说解决办法:git check-ignore -v 文件路径

这个命令会返回一个忽略规则,以及该规则在哪个文件中定义的,该规则使得指定的文件被忽略。

1.遇到的问题

同项目组,其他同学都可以正常的提交.meta文件,我的提交就出现以下问题:

hint: Use -f if you really want to add them.

hint: Turn this message off by running

hint: "git config advice.addIgnoredFile false"

提示:如果您确实要添加它们,使用 -f 参数。

提示:运行下面的命令来关闭本消息

提示:"git config advice.addIgnoredFile false"

2.尝试解决

第一步:用vscode查看了项目仓库目录下全部的.gitignore文件,没有发现哪个文件

第二步:因为项目组其他同学没有使用git图形化软件,而我使用了sourcetree,所以先查看了项目里每一个仓库中的sourcetree 的忽略文件,没有发现问题,最后直接卸载了sourcetree。

也没解决

第四步:更新了git,怀疑是git的bug。没解决

第五步:已经准备删除项目库重新下载了。。。甚至想格式化硬盘了,人快疯了

第六步:峰回路转,ChatGPT 给出了一个命令

提问:git 查看起作用的忽略文件

回答:在 git 中,你可以使用 git check-ignore 命令来查看哪些文件被 .gitignore 或其他忽略规则所影响。

如果你想查看某个特定文件是否被忽略,你可以使用以下命令:

git check-ignore -v 文件路径

Bash

这个命令会返回一个忽略规则,以及该规则在哪个文件中定义的,该规则使得指定的文件被忽略。

例如:

git check-ignore -v Main/Pokekara/Suit/PKKR_Girl_Suit_0006/PKKR_Girl_Suit_0006_0001/NewBehaviourScript.cs.meta

Bash输出如下:

/Users/zego/.gitignore_global:4:*.meta Main/Pokekara/Suit/PKKR_Girl_Suit_0006/PKKR_Girl_Suit_0006_0001/NewBehaviourScript.cs.meta

/Users/zego/.gitignore_global:文件中的第4行定义:*.meta

找到/Users/zego/.gitignore_global这个文件,直接删除。

恢复正常

最后

一定要git命令熟悉,思路清晰啊。不然被这种问题折磨的欲仙欲死。

相关推荐
高调的涵涵3 天前
删了1.2GB,.git仍是1.2GB
git
程序员沉梦听雨3 天前
【Git】git-submodule子模块管理
git
全栈陈序员4 天前
Git】从入门到精通(八)—— git log:查看提交历史
大数据·git·elasticsearch
7177774 天前
Git自建用什么工具比较好:Gitea、Forgejo、GitLab CE与Gitee的选型对比
git·gitlab·gitea
lsc_blog5 天前
年底还在招的岗位,先确认缺口和到岗要求
git·缓存·ci/cd·职场和发展·github
全栈陈序员5 天前
【Git】从入门到精通(十一)—— git reset 三种模式详解
git·elasticsearch
全栈陈序员5 天前
【Git】从入门到精通(十)—— 撤销与恢复:git checkout与git restore
运维·网络·数据库·git
全栈陈序员5 天前
【Git】从入门到精通(五)—— git add:将文件加入暂存区
大数据·git·elasticsearch
全栈陈序员5 天前
【Git】从入门到精通(七)—— git status:查看仓库状态
大数据·git·elasticsearch
莫晓燚6 天前
Ansible 13 个常用模块---企业实战
git·github