簡體   English   中英

有沒有辦法參數化 VS Code 的 python.pythonPath 設置?

[英]Is there any way to parameterize VS Code's python.pythonPath setting?

背景:我是一個使用 Python 並大量使用 VS Code 的團隊的開發人員。 我們希望能夠共享我們的project.code-workspace但關鍵設置之一是python.pythonPath ,它指定了 Python 可執行文件。

因為我們使用virtualenvs(並且至少有2個不同的操作系統),所以我們不能指定這個設置,它在不同的機器上會是不同的絕對路徑。

但是,我們也不能不指定它; 如果沒有設置,Python 擴展的許多功能將無法使用。 只要有人在該工作區中本地設置它,就會在版本控制中修改該文件。 我們不斷冒險改變它,然后提交他們的更改,為其他人破壞它。

結果是我們無法提交.code-workspace文件,因為它不能被參數化。

經過一些反復試驗,我找到了一些答案。

首先,確保您的 virtualenv 對 VS Code 的 Python 擴展可見

似乎有兩個設置控制 Python 擴展查找解釋器和環境的位置, python.venvPathpython.venvFolders 第一個正式記錄在設置參考中 我找不到第二個的任何官方文檔,但互聯網上有很多參考資料。

我設置我的路徑如下。 我們使用 virtualenvwrapper。

我設置我的路徑如下。我們使用 virtualenvwrapper。

我建議在用戶工作區級別設置這些。 如果您有一些團隊成員使用不同類型的 virtualenvs,或者在默認設置以外的地方安裝 venvs,您可能希望將其保留在用戶級別,以便他們可以修改它。

其次,確保你沒有不小心將它設置在其他地方

VS Code 有多個設置級別; 默認<用戶<工作區<文件夾

在我的情況下(以及對於許多其他團隊成員),我們在文件夾級別有一個python.pythonPath設置,它會覆蓋所有其他設置。 文件夾級別具有最高優先級。

您可能需要在每個級別打開和編輯settings.json並刪除設置。 一旦你這樣做了,VS Code應該會自動在你的 virtualenv 中選擇 Python 的路徑,這意味着你根本不需要設置它。

如果您仍然必須手動設置python.pythonPath . .

...我建議將它設置在文件夾級別並從版本控制中隱藏${workspaceFolder}/.vscode 這允許您:

  • 讓每個用戶都可以自行設置

  • 讓用戶能夠在項目之間切換時為每個項目單獨設置。

同樣,請確保您的團隊不會在工作區級別意外更改此設置,以便您可以在版本控制中保持project.code-workspace文件的清潔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM