这是我的 .gitignore 文件:
# Ignore everything by default.
*
# Zsh
!.zshrc
# Git
!.gitconfig
!.gitignore
# Lock.sh
!.config/lock.sh
# Xresources
!.Xresources
但当我这样做时git add .config/lock.sh
:
The following paths are ignored by one of your .gitignore files:
.config/lock.sh
Use -f if you really want to add them.
并且它没有出现在git status
?
答案1
可选前缀“!”可否定模式;任何被上一个模式排除的匹配文件将再次被包含。如果该文件的父目录被排除,则无法重新包含该文件。出于性能原因,Git 不会列出排除的目录,因此包含文件上的任何模式均无效,无论它们在哪里定义。对于以文字“!”开头的模式,请在第一个“!”前面加上反斜杠(“\”),例如“!important!.txt”。
这可能是原因。此外,你还可以选择将其包括在内。排除每个文件似乎很奇怪。