小编Lan*_*der的帖子

Git 没有观察到 .gitignore 中的新异常

[注意:这不是通常的“Git 仍然跟踪我刚刚添加到 .gitignore 的文件!” 问题。这与此相反。]

我在 Git 存储库中有一个网站的完整目录结构。我使用的 CMS 默认带有 .gitignore 文件:

# Ignore paths that contain user-generated content.
sites/*/files/
sites/*/private/
Run Code Online (Sandbox Code Playgroud)

请注意,所有 site/*/files 目录均被排除。但按照我处理网站的方式,我希望将一个特定的子文件夹包含在存储库中。因此,在使用上述 .gitignore 启动我的存储库后,我将其修改为:

# Ignore paths that contain user-generated content.
sites/*/files/
!sites/*/files/content/
!sites/*/files/content/*
sites/*/private/
Run Code Online (Sandbox Code Playgroud)

根据我的理解,我上面添加的否定模式应该意味着sites/*/files/content/及其内容包含在存储库中,但sites/*/files的其余部分被忽略。当我记得在第一次提交之前更新我的 .gitignore 文件时,它会按计划工作。

但是,当我忘记更新 .gitignore 直到后来,正如我习惯做的那样,我无法让 Git 添加新文件而不强制它完全忽略 .gitignore 文件。我运行这个:

> git add sites/default/files/content/
Run Code Online (Sandbox Code Playgroud)

并得到这个回来:

The following paths are ignored by one of your .gitignore files:
sites/default/files
Use -f if you really want to add them.
fatal: no files added
Run Code Online (Sandbox Code Playgroud)

为什么是的,Git,该目录在 …

version-control git

6
推荐指数
1
解决办法
8927
查看次数

标签 统计

git ×1

version-control ×1