在.vscode文件夹中提交一些文件
建议一般排除.vscode文件夹,但保留一些JSON文件,允许其他开发人员重新创建共享设置。
设置的示例包括:
特定于语言的测试配置来运行测试套件(settings.json)
linters和代码格式化工具的扩展设置,以强制执行此repo中使用的语言规则(settings.json)
运行和调试配置(launch.json)
共享任务-如果使用VS Code管理(tasks.json)
请注意,一些设置可以存储在用户设置或工作空间文件中,或者从.vscode文件夹传输到其中。见下文。
样本。gitignore代码
以下是在https://gitignore.io上建议的设置。你可以在那里搜索“VisualStudioCode”来获得最新推荐的.gitignore文件。我使用这个网站作为我大多数新回购的。gitignore的起点:
# Created by https://www.gitignore.io/api/visualstudiocode
# Edit at https://www.gitignore.io/?templates=visualstudiocode
### VisualStudioCode ###
.vscode/* # Maybe .vscode/**/* instead - see comments
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
### VisualStudioCode Patch ###
# Ignore all local history of files
**/.history
# End of https://www.gitignore.io/api/visualstudiocode
In the above .gitignore file, the .vscode/* line (note: some debate on whether the * should be included - see comments; .vscode/**/* may be better to ignore nested folders as well) says to exclude everything in the .vscode folder, but then the !.vscode/a_specific_file lines tell git to "not" ignore some specific files in that folder (settings.json, launch.json, etc.). The end result is that everything is excluded in the .vscode folder except for the files specifically named in one of those other lines.
其他因素
在你的repo中包含.vscode文件夹实际上不会伤害任何使用不同IDE(或文本/代码编辑器)的人。
然而,对于其他人使用VS Code,这可能会导致问题,或者一些设置可能无法正常加载,如果这些文件包含通用设置,需要特定于您的环境-比如repo安装的绝对路径。关键是要避免保存适合您本地环境的自定义设置,只共享那些可以(或者,在这个回购的情况下,应该)供所有人使用的设置。
例如,如果IDE设置文件有绝对路径到repo或任何文件/库等,那么这是不好的,不要共享。但是如果所有的引用都是相对的,那么它们应该适用于任何使用repo的人(尽管要注意Windows/Unix之间的路径规范差异..)。
关于用户、工作区和文件夹设置
注意:当你改变设置的文件夹版本时,.vscode文件夹中的设置文件通常会更新-但这似乎取决于个人扩展名的编码方式,因为我遇到过这个规则的多个例外。
如果您更改了用户设置,它们通常存储在其他地方(位置取决于操作系统设置,通常在主目录中)。
如果您更改了工作空间设置,它们通常存储在*。当前使用的代码工作区文件。如果您没有工作空间(您直接打开了一个文件夹),那么它们可能会转到.vscode文件夹,但总的来说,这可能取决于拥有该设置的扩展名。
所以,一般来说,你应该把个人电脑的自定义设置放到用户设置中,把通用设置放到工作空间或文件夹设置中。