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命令熟悉,思路清晰啊。不然被这种问题折磨的欲仙欲死。

你可能感兴趣的:(git)