Visual studio code 我应该将.vscode文件夹提交给源代码管理吗?

Visual studio code 我应该将.vscode文件夹提交给源代码管理吗?,visual-studio-code,Visual Studio Code,.vscode文件夹是否要提交给源代码管理 在新项目中,文件夹为空,除了settings.json文件。什么样的东西会进入这个文件夹?是否像.vs文件夹一样,它是特定于机器的、特定于开发人员的,因此不会被提交?或者所有开发人员都应该共享这个文件夹,从而提交它 文件.vscode/settings.json顶部的注释说明: // Place your settings in this file to overwrite default and user settings. { } 这似乎意味着文

.vscode
文件夹是否要提交给源代码管理

在新项目中,文件夹为空,除了
settings.json
文件。什么样的东西会进入这个文件夹?是否像
.vs
文件夹一样,它是特定于机器的、特定于开发人员的,因此不会被提交?或者所有开发人员都应该共享这个文件夹,从而提交它

文件
.vscode/settings.json顶部的注释说明:

// Place your settings in this file to overwrite default and user settings.
{
}

这似乎意味着文件夹应该包含特定于项目的设置,因此应该包含在源代码中。而且,似乎暗示一些打字将进入其中,也暗示它应该被提交

如果要与团队共享设置、任务配置和调试配置,请检查
.vscode
文件夹。我认为,如果您希望在团队中强制实施设置,通常与团队共享设置(例如,空白与选项卡)是有意义的。我们在VS代码团队中也共享调试和特定于任务的设置,因为我们希望我们的团队对VS代码具有相同的调试目标和任务目标集

顺便说一句,您不需要在项目中设置
.vscode
文件夹。您还可以在用户级别配置设置。

答案是“否”,因为.vscode文件夹是用于此编辑器的,您不应将这些个人设置推送到repo以防混淆其他设置,因此您可以将其添加到项目的.gitignore文件中以忽略更改
  • 永远不要提交
    .vscode/settings.json
    ——除了
    search.exclude
    这个奇怪的例外。如果您确实需要,请非常小心,不要只将您希望强制执行的项目特定设置放置给其他开发人员
  • 对于验证、格式化和编译,请使用其他文件,如
    package.json
    .eslint
    tsconfig.json
  • 唯一值得包含的.vscode是用于调试的复杂启动配置
  • 小心,您的系统中可能有第三方扩展,可能会将私人信息放在那里 您不能做的是将整个settings.json内容文件复制并粘贴到
    .vscode/settings.json
    。我看到一些人这样做,提交文件是一种暴行。在这种情况下,您不仅会破坏他人的工作区,而且最糟糕的是,您将强制用户设置您不喜欢的美学、UI和体验。您可能会破坏他们的环境,因为有些环境非常依赖于系统。假设我有视觉问题,因此我的
    编辑器。*
    用户设置是个性化的,当我打开项目时,视觉效果会发生变化。假设我有视力问题,我需要个性化用户编辑器。*设置才能工作。我会生气的

    如果你是认真的,不要提交
    .vscode/settings.json
    。一般来说,对特定项目(如验证、编译)有用的设置是有意义的,但通常可以使用特定的工具配置文件,如.eslint、tsconfig.json、.gitignore、package.json。等等。我猜vscode作者只是为了简化新手体验而添加了这个文件,但是如果你想认真的话,就不要这样做


    唯一的例外,在非常特殊的情况下可能是search.exclude

    在提交/忽略之间有第三个聪明的选项:使用
    .default
    后缀提交

    例如,您可以将
    settings.json
    添加到
    .gitignore
    ,并提交
    settings.json.default
    ,这与
    .env
    文件的常见做法非常相似(在我的团队中)


    我从视频中得到了这个建议,答案和其他答案一样:不

    作为一个例子,考虑Git 2.19(Q3 2018)所选择的方法,它添加了一个脚本(在<代码> CONTIB/),以帮助VSCODE的用户更好地使用GIT代码库。 换句话说,生成

    .vscode
    内容(如果它还不存在),不要对其进行版本设置

    参见,,,,(2018年7月30日)作者。
    (于2018年8月15日合并)

    contrib
    :添加脚本以初始化VS代码配置 VS Code是一个轻量级但功能强大的源代码编辑器,可在桌面上运行,适用于Windows、macOS和Linux。
    在其他语言中,它通过一个扩展支持C/C++,该扩展不仅提供构建和调试代码,还提供Intellisense,即代码感知完成和类似细节

    此修补程序添加了一个脚本,可帮助设置环境以有效地使用VS代码:只需运行Unix shell脚本contrib/vscode/init.sh,该脚本将创建相关文件,并在VS代码中打开Git源代码的顶级文件夹


    为什么不看看实践,而不是周围的争论

    到目前为止,我发现保存
    .vscode
    的最大项目之一是。 看起来Firefox团队共享和推荐的扩展

    所以我想只要你知道自己在做什么,保持
    .vscode
    ,这不是个坏主意

    当我看到其他分享
    .vscode

    总结其他答案的大型项目时,我会更新这篇文章 建议通常排除
    .vscode
    文件夹,但保留允许其他开发人员重新创建共享设置的选定JSON文件

    设置示例包括:

    • 运行测试套件的特定语言测试配置(
      settings.json
    • 用于执行此repo中使用的语言规则的过梁和代码格式化工具的扩展设置(
      settings.json
    • 运行和调试配置(
      launch.json
    • 共享任务-如果使用VS代码管理(tasks.json
    注意,s
    # Created by https://www.gitignore.io/api/visualstudiocode
    # Edit at https://www.gitignore.io/?templates=visualstudiocode
    
    ### VisualStudioCode ###
    .vscode/*
    !.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