我已经读过这个问题以及这个问题,但它们似乎对我不起作用。
我有一个git
项目,目录结构如下:
myapp/
src/
.gitignore
build/
其中myapp/.gitignore
为:
### gitignore ###
build/
我现在需要添加一个顶级config
目录,并希望将配置文件添加到它用于本地开发/测试目的,但不希望它们提交。我只希望提交("空")config
目录。所以我读了上面的两个问题,并尝试执行他们的建议。现在我的项目看起来像:
myapp/
src/
.gitignore
build/
config/
.gitignore
test.json
其中myapp/.gitignore
为:
### gitignore ###
build/
!config/.gitignore
其中config/.gitignore
只是:
!.gitignore
然而,当我做git add . -n
(演习)时,我看到:
add '.gitignore'
add 'config/.gitignore'
add 'config/test.json'
…所以看起来它会尝试添加我的test.json
配置文件。我只想让它添加config目录,这样命令就会输出:
add '.gitignore'
add 'config/.gitignore'
有什么想法我走错了(为什么)?
config/.gitignore
应包含:
*
!.gitignore
也就是说,"忽略除 只是说"不要忽略 (在根.gitignore
以外的所有内容。"!.gitignore
.gitignore
",但它并没有说任何其他应该被忽略。.gitignore
文件中也不需要!config/.gitignore
)