Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在VS代码中设置本地项目的Python路径,而不使用settings.json文件_Python_Git_Visual Studio Code_Conda_Vscode Settings - Fatal编程技术网

在VS代码中设置本地项目的Python路径,而不使用settings.json文件

在VS代码中设置本地项目的Python路径,而不使用settings.json文件,python,git,visual-studio-code,conda,vscode-settings,Python,Git,Visual Studio Code,Conda,Vscode Settings,一位VisualStudio代码开发人员表示,将VisualStudio代码项目的settings.json文件保存在项目的git存储库中以跨不同的开发环境强制执行代码标准是合理的。但有一个缺点是,当我在屏幕底部选择Python解释器路径时(这样linter就可以找到已安装的包),以下条目会添加到settings.json文件中: "python.pythonPath": "/path/to/conda/envs/my-env-name/bin/python", 此路径是机器的本地路径,并假定

一位VisualStudio代码开发人员表示,将VisualStudio代码项目的settings.json文件保存在项目的git存储库中以跨不同的开发环境强制执行代码标准是合理的。但有一个缺点是,当我在屏幕底部选择Python解释器路径时(这样linter就可以找到已安装的包),以下条目会添加到
settings.json
文件中:

"python.pythonPath": "/path/to/conda/envs/my-env-name/bin/python",
此路径是机器的本地路径,并假定正在使用conda。我必须避免将此设置添加到提交到git存储库的
settings.json
,这很烦人


有没有一种方法可以在本地为项目设置Python路径,而无需将设置写入
settings.json
文件?

一种解决方法是:

  • 从本地工作区中删除该行
    settings.json
  • 复制粘贴到您的用户
    settings.json
见“”

这样,您的Git代码库就可以保留一个通用的
settings.json
,而无需本地路径

因为这只适用于一个项目,所以您可以在多个项目中引用所有项目

然后,关于该环境中的设置,您有三个文件:

  • 首选项:打开用户设置-打开全局用户设置
  • 参考:打开工作空间设置-打开工作空间文件的“设置”部分
  • 首选项:打开文件夹设置-打开活动文件夹的设置
这意味着您可以切换工作区,并且在每个多根工作区(每个工作区仅由一个根组成)中,您将保留:

  • 用户设置中的全局
    pythonPath
    路径(适用于所有地方)
  • 工作区设置中给定多根工作区的特定
    pythonPath
    (位于作为该“多根”工作区唯一根的项目文件夹之外)
  • 项目文件夹(工作区的唯一根目录)中的公共版本的
    settings.json
    项目特定设置
同样,通过切换工作空间,您可以区分:

  • 特定于工作区的私人设置,位于计算机本地,如
    pythonPath
  • 项目文件夹中特定于项目的设置,可以对其进行版本设置和发布

目前不直接支持它,但我们有一个建议,如果您希望看到它的优先级,您可以向上投票。

谢谢,这是一个很好的建议。我假设不可能在每个项目的基础上设置它,因为它在共享用户设置文件中?我有其他康达环境用于其他项目。@Sean没错!我没想到。我建议使用多根工作区来解决问题。请参阅我编辑的答案。