Gitignore:忽略所有 .vscode 目录,但包含顶级 launch.json

303*_*303 7 git gitignore visual-studio-code

我想忽略.vscode可能出现在我的存储库中的所有目录(顶级目录除外)。在该顶级文件中,我想忽略除launch.json.

我没有尝试过:

**/.vscode/
!/.vscode/
/.vscode/*
!/.vscode/launch.json
Run Code Online (Sandbox Code Playgroud)
**/.vscode/
!/.vscode/
!/.vscode/launch.json
Run Code Online (Sandbox Code Playgroud)
**/.vscode/
!/.vscode/launch.json
Run Code Online (Sandbox Code Playgroud)
**/.vscode/*
!/.vscode/launch.json
Run Code Online (Sandbox Code Playgroud)
**/.vscode/
/.vscode/!launch.json
Run Code Online (Sandbox Code Playgroud)

Tho*_*ben 11

我偶然发现了这个答案,正如今天的一些消息来源声称提交以下内容是个好主意,launch.json我想提供正确的答案:

.vscode
!.vscode/launch.json
Run Code Online (Sandbox Code Playgroud)

(您在 ! 之后添加了斜杠,因此该路径被视为绝对路径)。

  • 如果您盯着这个问题想知道为什么它仍然对您不起作用,请确保您的“launch.json”之前没有添加到源代码管理中。`.gitignore` 仅适用于未跟踪的文件:)如果被跟踪,请运行 `git rm -r --cached .vscode/launch.json` 并提交其删除。 (3认同)

Chr*_*ris 9

我建议简单地忽略所有这些目录:

.vscode/
Run Code Online (Sandbox Code Playgroud)

然后手动跟踪您想要的文件

git add -f .vscode/launch.json
Run Code Online (Sandbox Code Playgroud)

即使文件被忽略,也会添加-f文件,并且一旦跟踪文件,忽略就不会对其产生影响。Git 将看到更改,.vscode/launch.json并且系统会提示您像任何其他文件一样提交它们。


Wil*_*ang 6

只需将这两行放入您的.gitignore

.vscode/*
!.vscode/launch.json
Run Code Online (Sandbox Code Playgroud)

第一行的意思是,忽略.vscode文件夹及其所有文件(*在 后使用符号/)。第二行的意思是,排除(使用!launch.json文件,而在.vscode文件夹内