我想忽略所有内容,除了特定的子文件夹(及其所有内容!)。我从可能的重复问题中尝试了解决方案而没有任何成功。
我需要一些简单的东西:
UnregisterPropertyChangedCallback
但这不起作用
答案 0 :(得分:4)
您的.gitignore
几乎可以正常工作,但原因并不简单:第一条规则(*
)告诉Git忽略存储库根目录中的每个文件和目录。 Git尊重它并忽略所有内容,包括That
目录及其内容。 " unignore"以下规则与That
子目录中的任何内容都不匹配,因为That
目录与其内容一起被忽略,并且它们不起作用。
为了告诉Git不要忽略深层嵌套子目录中的文件和目录,你必须编写ignore和unignore规则,让它首先到达封闭的子目录,然后添加你想要的规则。
您的.gitignore
文件应如下所示:
### Ignore everything ###
*
# But do not ignore "That" because we need something from its internals...
!That/
# ... but ignore (almost all) the content of "That"...
That/*
# ... however, do not ignore "That/Very" because we need to dig more into it
!That/Very/
# ... but we don't care about most of the content of "That/Very"
That/Very/*
# ... except for "That/Very/Folder" we care
!That/Very/Folder/
# ... and its content
!That/Very/Folder/*
答案 1 :(得分:3)
*
!*/
!That/Very/Folder/**
!Also/This/Another/Folder/**
忽略所有内容,允许子文件夹(!),然后允许特定文件夹内容(包含无限子文件夹)。
致@Jepessen的中间部分,使其发挥作用。
答案 2 :(得分:1)
我想忽略一切
将文件夹添加到gitignore
除了特定的子文件夹(及其所有内容!)。
强制文件夹添加到存储库
git add -f folder
编辑:
例如,当我需要保留日志文件夹而不是其内容时,我使用此解决方案。通常,我认为永远不会添加文件夹的内容。通常我只使用path/to/folder/.gitkeep
选项添加-f
文件。