Git忽略子目录

时间:2017-09-06 01:49:03

标签: git gitignore

我有一个.gitignore文件,如下所示:

*
!/src
!/resources
!/.gitignore
!/package.json
!/tsconfig.json
!/README.md

我将文件添加到src文件夹src/config/mongo.ts中的子目录。但是,当我尝试添加文件时,它不会被添加:

git add -A

我尝试将第二行修改为以下各项:

!/src/
!/src/*
!/src/**/*

但是它仍然没有添加文件。

我也尝试过直接添加文件:

git add src/config/mongo.ts

但我收到以下消息:

  

您的.gitignore文件会忽略以下路径:   SRC /配置/ mongo.ts

git status仅显示.gitignore文件已更改。不知道该怎么做才能使这个工作。

我想:

  • 首先排除所有内容*
  • 然后在src目录(及其子目录)中包含所有内容
  • 然后在resources目录(及其子目录)中包含所有内容
  • 然后包括列出的根文件

2 个答案:

答案 0 :(得分:3)

这个是一个棘手的问题,让我永远想知道我最初遇到它的时间。

您只需稍微软化初步排除:

from ruamel.yaml import YAML

yaml = YAML(typ='unsafe')
configs = yaml.load_all(Path(Experiment.config_file))
for config in configs:
    print(config)

答案 1 :(得分:1)

git

正在忽略

src文件夹及其子目录

如果要添加特定文件。尝试

git add --force <file-path>

或在gitignore中尝试这些行

/*
!/src
/src/*
!/resources
!/.gitignore
!/package.json
!/tsconfig.json
!/README.md
!/src/config