新建Angular项目src/app目录被Git忽略,无法提交变更求助
解决Git忽略Angular项目src/app目录的问题
哥们,我太懂这种明明没在项目.gitignore里加规则,却被Git莫名忽略目录的烦躁!咱们一步步排查,肯定能揪出问题根源:
1. 先查全局.gitignore配置
Git不止有项目根目录的.gitignore,还有全局的忽略文件,很多人会在这里加通用规则,说不定不小心把app/加上了。在Git Bash里跑这个命令看看全局忽略文件的位置:
git config --global core.excludesfile
找到这个文件打开,检查有没有app/或者能匹配到src/app的规则,有的话删掉就行。
2. 检查仓库本地的exclude文件
每个Git仓库里还有个.git/info/exclude文件,这个文件不会提交到远程,所以你之前查项目根目录的.gitignore根本看不到它。直接用命令看内容:
cat .git/info/exclude
如果里面有src/app/或者app/的条目,删掉就好。
3. 排查嵌套的.gitignore文件
会不会是在src/或者src/app/目录下不小心建了个额外的.gitignore?比如里面写了*直接忽略整个目录。用这个命令搜一下:
find src -name ".gitignore" -type f
找到后打开看看内容,把有问题的规则删掉。
4. 用git check-ignore精准定位
最直接的方法是用这个命令,它会告诉你到底是哪个规则导致src/app被忽略:
git check-ignore -v src/app/
输出里会显示具体是哪个配置文件(全局的、本地exclude还是项目.gitignore)的哪条规则在生效,一下子就能找到根源。
最后,如果排查完想重置缓存
要是确认了规则没问题,只是Git缓存的问题,先清除缓存再重新添加:
git rm -r --cached src/app/ git add src/app/
这个操作不会删你本地的代码,只是让Git重新识别这个目录而已。
内容的提问来源于stack exchange,提问作者user14932840
相关产品推荐
相关产品推荐

