便攜模式
Visual Studio Code 支援便攜模式。此模式使得 VS Code 建立和維護的所有資料都儲存在自身附近,因此可以在不同環境之間移動。
此模式還提供了一種設定 VS Code 擴充套件安裝資料夾位置的方法,這對於阻止擴充套件安裝在 Windows AppData 資料夾中的企業環境非常有用。
便攜模式支援 Windows 的 ZIP 下載和 Linux 的 TAR.GZ 下載,以及 macOS 的常規應用程式下載。請參閱下載頁面以查詢適用於您平臺的正確 .zip / .tar.gz
檔案。
請勿嘗試在透過Windows 使用者或系統安裝程式安裝的版本上配置便攜模式。便攜模式僅支援 Windows ZIP (.zip
) 存檔。另請注意,Windows ZIP 存檔不支援自動更新。
啟用便攜模式
Windows、Linux
解壓 VS Code 下載檔案後,在 VS Code 資料夾中建立一個 data
資料夾
|- VSCode-win32-x64-1.84.2
| |- Code.exe (or code executable)
| |- data
| |- bin
| | |- code
| | |- ...
| |- ...
從那時起,data
資料夾將用於包含所有 VS Code 資料,包括會話狀態、首選項、擴充套件等。
data
資料夾將覆蓋 --user-data-dir
和 --extensions-dir
命令列選項。
data
資料夾可以移動到其他 VS Code 安裝。這對於更新您的行動式 VS Code 版本很有用,在這種情況下,您可以將 data
資料夾移動到更新的解壓版 VS Code。
Linux
在 Linux 上,除了建立 data
資料夾外,您還需要設定正確的 Electron 沙盒許可權。
Chromium 在 Linux 上有一個多層沙盒模型。如果 Chromium 無法將名稱空間沙盒用於第 1 層,它將嘗試透過應用程式二進位制檔案隨附的輔助二進位制檔案 chrome-sandbox
使用 setuid
沙盒。
執行以下命令以設定 setuid
助手的正確許可權
sudo chown root <path-to-vscode>/chrome-sandbox
sudo chmod 4755 <path-to-vscode>/chrome-sandbox
macOS
在 macOS 上,您需要將資料資料夾放置在應用程式本身的同級目錄中。由於該資料夾將與應用程式並存,您需要對其進行專門命名,以便 VS Code 能夠找到它。預設資料夾名稱為 code-portable-data
|- Visual Studio Code.app
|- code-portable-data
如果您的應用程式處於隔離狀態,便攜模式將不起作用,這種情況在您剛下載 VS Code 時預設發生。如果便攜模式似乎不起作用,請務必移除隔離屬性
xattr -dr com.apple.quarantine Visual\ Studio\ Code.app
在 Insiders 版本中,資料夾應命名為 code-insiders-portable-data
。
更新行動式 VS Code
在 Windows 和 Linux 上,您可以透過將 data
資料夾複製到更新版本的 VS Code 來更新 VS Code。
在 macOS 上,自動更新應該像往常一樣工作,無需額外操作。
遷移到便攜模式
您還可以將現有安裝遷移到便攜模式。
Windows、Linux
- 下載適用於您平臺的 VS Code(或 VS Code Insiders)ZIP 發行版。
- 如上所述建立
data
資料夾。 - 將使用者資料目錄
Code
複製到data
並將其重新命名為user-data
- Windows
%APPDATA%\Code
- Linux
$HOME/.config/Code
- Windows
- 將擴充套件目錄複製到
data
- Windows
%USERPROFILE%\.vscode\extensions
- Linux
~/.vscode/extensions
- Windows
例如,以下是 Windows 上的預期結果
|- VSCode-win32-x64-1.84.2
| |- Code.exe (or code executable)
| |- data
| | |- user-data
| | | |- ...
| | |- extensions
| | | |- ...
| |- ...
macOS
- 下載適用於 macOS 的 VS Code(或 VS Code Insiders)。
- 如上所述建立
code-portable-data
資料夾。 - 將使用者資料目錄
Code
複製到code-portable-data
並將其重新命名為user-data
$HOME/Library/Application Support/Code
- 將擴充套件目錄複製到
code-portable-data
~/.vscode/extensions
TMP 目錄
預設情況下,即使在便攜模式下,預設的 TMP
目錄仍然是系統目錄,因為那裡不儲存任何狀態。如果您還希望將 TMP 目錄放在便攜目錄中,您可以在 data
資料夾內建立一個空的 tmp
目錄。只要 tmp
目錄存在,它將用於 TMP 資料。