关于个性化 Codespaces
在使用任何开发环境时,将设置和工具自定义为您的偏好和工作流程是一个重要步骤。GitHub Codespaces 允许您通过两种主要方式个性化您的 codespaces。
- 设置同步 - 您可以将 Visual Studio Code 设置在桌面应用程序和 VS Code Web 客户端之间同步。
- Dotfiles – 您可以使用
dotfiles
存储库来指定脚本、shell 偏好和其他配置。
GitHub Codespaces 个性化适用于您创建的任何 codespace。
项目维护者还可以定义一个默认配置,该配置适用于任何人都创建的存储库的每个 codespace。有关更多信息,请参阅“Dev 容器简介”。
设置同步
设置同步允许您在机器和 VS Code 实例之间同步配置,例如设置、键盘快捷键、代码片段、扩展和 UI 状态。有关更多信息,请参阅 VS Code 文档中的 设置同步。
您同步的设置缓存在云中。如果在 codespace 中启用了设置同步,您在 codespace 中对设置所做的任何更新都会推送到云,而您从其他地方推送到云的任何更新都会拉取到您的 codespace 中。
例如,设置同步的常见用法是将您用于本地工作的 VS Code 桌面应用程序中的设置同步到您在浏览器中打开的 codespace。为此,您需要执行以下操作。
- 在桌面应用程序中打开设置同步。有关更多信息,请参阅 VS Code 文档中的 设置同步。
- 在 GitHub Codespaces 的用户首选项中启用设置同步。有关更多信息,请参阅“管理您的设置同步首选项”。
- 可选地,如果您想将设置更改从 codespace 同步回桌面应用程序,请在 codespace 中打开设置同步,并将您创建 codespace 的存储库添加到您的受信任存储库列表中。有关更多信息,请参阅“在 codespace 中打开设置同步”。
或者,您可能希望在您在 Web 客户端中打开的所有 codespace 中使用相同的设置,而不会影响您的本地 VS Code 应用程序。为此,您需要执行以下操作。
- 在 codespace 中,根据您的需要配置设置,然后在 codespace 中打开设置同步以将设置推送到云。当您执行此操作时,设置同步会在您的 GitHub Codespaces 用户首选项中自动启用,因此您的设置将被拉取到所有新的 codespace 中。有关更多信息,请参阅“在 codespace 中打开设置同步”。
- 在桌面应用程序中,请保持“设置同步”关闭,或将您的设置同步到其他帐户。
关于 Codespaces 中的设置同步
Codespace 中是否默认启用设置同步,以及您的缓存设置与 Codespace 中的设置之间的关系,取决于几个因素。这些因素包括您打开 Codespace 的编辑器、您在 GitHub 上的用户偏好以及您的受信任存储库列表。
对于在 VS Code 桌面应用程序中打开的 Codespace,如果您之前在应用程序中启用了设置同步,则设置同步将保持开启。如果设置同步已开启,您的设置将同步到云端和从云端同步。
对于在 VS Code 网页客户端中打开的 Codespace,设置同步默认情况下处于禁用状态。这意味着 Codespace 中的 VS Code 实例使用默认主题和设置。
如果您使用网页客户端并希望您的 Codespace 使用您缓存的同步设置,您可以在 GitHub 上的用户偏好设置中启用设置同步。有关更多信息,请参阅“管理您的设置同步偏好设置”。如果您在网页客户端中打开 Codespace 并在 Codespace 中启用设置同步,则您的用户偏好设置中会自动启用设置同步。
当您的用户偏好设置中启用设置同步时,对于在网页客户端中打开的 Codespace,设置同步的行为取决于您的受信任存储库列表。
-
如果您从您信任的存储库创建 Codespace,则 Codespace 中会默认启用设置同步,因此您的设置将同步到云端和从云端同步。
-
如果您从尚未添加到信任存储库列表的存储库创建代码空间,则同步仅在一个方向上进行,并且只进行一次。当您创建代码空间时,您的设置会从云中的缓存设置中拉取到代码空间中,但从那时起,代码空间中的设置同步就会关闭。这意味着您在代码空间中对设置所做的更新不会推回云端,并且您在其他地方对缓存设置所做的任何更新,在您创建代码空间后都不会反映在代码空间中。
如果您在代码空间中启用设置同步,系统会提示您将存储库添加到信任存储库列表中。有关更多信息,请参阅“在代码空间中启用设置同步”。
您在 GitHub 代码空间中的信任存储库列表在 GPG 验证和设置同步功能之间共享。假设您同时启用了这两个功能,如果您已为 GPG 验证添加了选定的信任存储库列表,则从这些存储库创建的代码空间中将启用设置同步。如果您信任新的存储库以进行设置同步,则 GPG 验证将为同一存储库启用。尽管这些功能共享相同的信任存储库列表,但您可以独立启用或禁用 GPG 验证和设置同步。
注意:如果您之前已为所有存储库启用 GPG 验证,我们建议您更改首选项以使用选定的信任存储库列表。有关更多信息,请参阅“GitHub 代码空间中的安全性”。
有关管理 GPG 验证首选项的更多信息,请参阅“管理 GitHub 代码空间的 GPG 验证”。
管理设置同步首选项
如果您在用户首选项中启用设置同步,则在 VS Code Web 客户端中打开的代码空间将从云中拉取您的缓存设置,并且从信任存储库创建的代码空间将在两个方向上与您的缓存设置同步。
-
在 GitHub 上任何页面的右上角,单击您的个人资料照片,然后单击设置。
-
在侧边栏的“代码、规划和自动化”部分,点击 ** Codespaces**。
-
要启用或禁用设置同步,在“设置同步”下,选择或取消选择 **启用**。
-
要更改用于 GPG 验证和设置同步的受信任存储库,在“受信任存储库”下,选择 **所有存储库**,或选择 **选定存储库** 并使用“选择存储库”下拉菜单添加您信任的存储库。
**注意:** 我们建议使用选定的受信任存储库列表。有关更多信息,请参阅“GitHub Codespaces 中的安全性”。
您的更新将在新的 Codespaces 中生效。但是,您可以在现有的 Codespaces 中启用设置同步。有关更多信息,请参阅“在 Codespaces 中启用设置同步”。
在 Codespaces 中启用设置同步
**注意:** 您应该只在从您信任的存储库创建的 Codespaces 中启用设置同步。有关更多信息,请参阅“GitHub Codespaces 中的安全性”。
以下步骤描述了如何在 Web 客户端中打开的 Codespaces 中启用设置同步。有关在 VS Code 桌面应用程序中启用设置同步的信息,请参阅 VS Code 文档中的 设置同步。
-
在 VS Code 中,在活动栏的底部,选择 ,然后点击 **登录以同步设置**。
-
如果您创建 Codespaces 的存储库不在您的受信任存储库列表中,将打开一个浏览器窗口,要求您授权设置同步的额外权限。如果您信任该存储库,请点击 **授权**,然后关闭浏览器窗口。Codespaces 将重新加载并显示您最新的同步设置。
**注意:** 如果您在用户首选项中禁用了设置同步,并且已将受信任存储库设置为所有存储库,您将看到有关为所有存储库启用设置同步的警告。查看警告并选择是否为所有存储库启用设置同步或修改您的受信任存储库列表。
-
要配置要同步的设置,请使用 Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux) 打开命令面板,然后开始键入“设置同步”。点击 **设置同步:配置...**。
-
选择要同步的设置,然后单击**确定**。
在代码空间中关闭设置同步
您可以关闭设置同步,以停止将设置同步到 VS Code 实例或从 VS Code 实例同步设置。
当您在代码空间中关闭设置同步时,新的代码空间将继续使用从上次将设置推送到云端时缓存的设置。如果您使用 VS Code 网页客户端来创建代码空间,并且希望代码空间使用默认设置而不是缓存的设置,则可以禁用设置同步。有关更多信息,请参阅“管理设置同步的偏好设置”。
如果您希望在所有 VS Code 实例(包括桌面应用程序)中返回使用默认 VS Code 设置,则可以在关闭设置同步时清除云中的缓存。
-
如果当前在您的 VS Code 实例中关闭了设置同步,并且您希望清除缓存的设置,则必须先将其打开。有关说明,请参阅“个性化您的 GitHub 代码空间帐户”。
-
在活动栏的底部,选择 并单击**设置同步已打开**。
-
在下拉菜单中,单击**设置同步:关闭**。
-
要清除缓存的设置,请在对话框中选择**在所有设备上关闭同步并清除云中的数据**。
-
单击**关闭**。
点文件
点文件是在类 Unix 系统上以.
开头的文件和文件夹,用于控制系统上应用程序和 shell 的配置。您可以在 GitHub 上的存储库中存储和管理您的点文件。有关点文件存储库中应包含哪些内容的建议和教程,请参阅GitHub does dotfiles。
您的点文件存储库可能包含您的 shell 别名和偏好设置、您要安装的任何工具或您要进行的任何其他代码空间个性化设置。
您可以通过在您的个人 GitHub 代码空间设置中选择该存储库来配置 GitHub 代码空间以使用您拥有的任何存储库中的点文件。
当您创建新的代码空间时,GitHub 会将您选择的点文件存储库克隆到代码空间环境中,并查找以下文件之一以设置环境。
- install.sh
- install
- bootstrap.sh
- bootstrap
- script/bootstrap
- setup.sh
- setup
- script/setup
如果找不到这些文件,则会将所选 dotfiles 存储库中以 .
开头的任何文件或文件夹符号链接到 codespace 的 ~
或 $HOME
目录。
对所选 dotfiles 存储库的任何更改仅适用于每个新的 codespace,不会影响任何现有的 codespace。
注意:目前,Codespaces 不支持使用您的 dotfiles
存储库个性化 VS Code 的用户范围设置。您可以在项目的存储库中为特定项目设置默认工作区和远程 [Codespaces] 设置。有关更多信息,请参见“开发容器简介”。
为 Codespaces 启用您的 dotfiles 存储库
您可以使用所选的 dotfiles 存储库来个性化您的 GitHub Codespaces 环境。选择 dotfiles 存储库后,您可以向其中添加脚本、首选项和配置。然后,您需要从您的个人 GitHub Codespaces 设置页面启用您的 dotfiles。
警告:Dotfiles 能够运行任意脚本,这些脚本可能包含意外或恶意代码。在安装 dotfiles 存储库之前,我们建议检查脚本以确保它们不会执行任何意外操作。
-
在 GitHub 上任何页面的右上角,单击您的个人资料照片,然后单击设置。
-
在侧边栏的“代码、规划和自动化”部分,点击 ** Codespaces**。
-
在“Dotfiles”下,选择自动安装 dotfiles,以便 GitHub Codespaces 自动将您的 dotfiles 安装到您创建的每个新的 codespace 中。
-
使用下拉菜单选择要从中安装 dotfiles 的存储库。
您可以随时向 dotfiles 存储库添加更多脚本、首选项、配置文件或编辑现有文件。对设置的更改只会由新的 codespace 接收。
如果您的 codespace 无法从 dotfiles 中获取配置设置,请参见“GitHub Codespaces 个性化选项疑难解答”。
其他可用设置
您还可以使用 个人设置 中的其他选项来个性化 GitHub Codespaces。
- 要启用 GPG 验证,请参见“管理 GitHub Codespaces 的 GPG 验证”。
- 要设置您的编辑器,请参见“设置 GitHub Codespaces 的默认编辑器”。
- 要设置代码空间在自动停止之前可以保持不使用的时长,请参阅“设置 GitHub 代码空间的超时时间”。
- 要设置未使用的代码空间保留的时间段,请参阅“配置代码空间的自动删除”。
- 要设置您的默认区域,请参阅“设置 GitHub 代码空间的默认区域”。
进一步阅读
- "创建新的仓库"
- "深入了解 GitHub 代码空间"
- "自定义代码空间"
- "管理代码空间"