.gitignore不忽略未跟踪的*.pb.go文件
我不明白为什么,在将我的顶级.gitignore不忽略未跟踪的*.pb.go文件,git,Git,我不明白为什么,在将我的顶级.gitignore更新为忽略生成的扩展名为pb.go的文件后,我仍然看到具有该扩展名的未跟踪文件 # > cat .gitignore *.pb.go # > git status Changes not staged for commit: modified: .gitignore Untracked files: some/path/filename.pb.go 基于对stackoverflow类似问题的回答
.gitignore
更新为忽略生成的扩展名为pb.go
的文件后,我仍然看到具有该扩展名的未跟踪文件
# > cat .gitignore
*.pb.go
# > git status
Changes not staged for commit:
modified: .gitignore
Untracked files:
some/path/filename.pb.go
基于对stackoverflow类似问题的回答,我觉得有必要强调一个事实,即这个pb.go文件未被跟踪,它不在git缓存中,如图所示
# > git rm -f --cached some/path/filename.pb.go
fatal: pathspec 'some/path/filename.pb.go' did not match any files
尽管生成的文件完全可能在历史上的某个时刻存储在git中。在存储库的更深处有
.gitignore
*
!*.go
这导致
*.pb.go
没有被排除在外。嗯。。。奇怪的是否还有另一个.gitignore有关于此文件扩展名的规则?或者在其他配置部分中检查,您可以在其中请求排除内容吗?***.pb.go
有效吗?这有点奇怪。确保.gitignore
是纯文本ASCII文件,前面没有UTF-8 BOM,等等。您是否尝试提交.gitignore,然后重新运行git status
?git check ignore-v some/path/filename.pb.go