Git忽略不在.gitignore中的目录

4

当我尝试将gdb-7.8添加到我的存储库时,什么也没有发生,因此我从项目的根目录运行了check-ignore,并显示如下:

.gitignore:31:*.8   src/.../gdb-7.8/

但是这行内容没有出现在.gitignore文件中:

# Object files
*.o
*.ko
*.obj
*.elf

# Libraries
*.lib
*.a

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Other stuff
*.Plo
*.pp
*.d
*.lo
*.cmd
*.8
*.w
*.img
*.builtin
*.order
*.bin
*.man
*.sub

# Directories
/images

.git/info/excludes文件中没有任何内容,我也没有全局的.gitignore文件。

有什么想法吗?


2
你能发布整个.gitignore文件吗? - Chris
3
嘿,你的 .gitignore 文件中 other stuff 部分明显有一个 *.8(根据 check-ignore 输出的第 31 行)。这将会把匹配该模式的文件,如 gdb-7.8 排除在添加之外。我建议你检查一下这个设置。 - face
扶额 @face,你完全正确!我简直不敢相信我没看到那个! - bratface
@face 救命的评论,非常感谢! - GOXR3PLUS
2个回答

1
Git支持全局排除文件。在您的~/.gitconfig中定义为core.excludesfile。一些软件(如boxen)会添加一个排除文件,或覆盖之前存在的文件,因此如果您没有自己添加它,则可能来自其他地方。您可以通过运行git config --get core.excludesfile来检查是否有一个排除文件。

0

.gitignore 可以存在于树的 (几乎) 任何位置。你试过 find . -name .gitignore 吗?


我认为check-ignore应该给你实际的.gitignore文件。在这种情况下,它指向根目录.gitignore。但是,是的,我也这样做是为了彻底。 - bratface

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接