Skip to main content

个性化你帐户的 GitHub Codespaces

您可以通过使用 GitHub Codespaces 上的 dotfiles 存储库或使用设置同步来自定义 GitHub。

关于个性化 Codespaces

在使用任何开发环境时,根据您的喜好和工作流程自定义设置和工具是一个重要步骤。 GitHub Codespaces 允许使用两种主要方法来个性化代码空间。

  • 设置同步 - 可以在桌面应用程序和 Visual Studio Code Web 客户端之间同步设置VS Code。
  • Dotfiles - 可以使用 dotfiles 存储库指定脚本、shell 首选项和其他配置。

GitHub Codespaces 个性化适用于你创建的任何代码空间。

项目维护员还可以定义默认配置,将应用到任何人创建的仓库的每个代码空间。 有关详细信息,请参阅“开发容器简介”。

设置同步

设置同步允许跨计算机和实例 VS Code同步配置,例如设置、键盘快捷方式、代码片段、扩展和 UI 状态。 有关详细信息,请参阅VS Code文档中的设置同步

同步的设置缓存在云中。 如果在 codespace 中打开了“设置同步”,则会将你在 codespace 中对设置所做的更新推送到云中,并将你从其他位置推送到云的更新拉入 codespace。

例如,设置同步的常见用途是将设置从 VS Code 桌面应用程序(用于本地工作)同步到在浏览器中打开的代码空间。 为此,需要执行以下操作。

  • 在桌面应用程序中打开“设置同步”。 有关更多信息,请参阅文档中的设置同步VS Code。
  • 在用户的首选项 GitHub Codespaces中启用设置同步。 有关详细信息,请参阅管理“设置同步”的首选项
  • (可选)如果要将设置更改从 codespace 同步回桌面应用程序,请在 codespace 中打开“设置同步”,并将创建 codespace 的存储库添加到受信任存储库列表中。 有关详细信息,请参阅在 codespace 中打开“设置同步”

或者,你可能希望在 Web 客户端中打开的所有代码空间中使用相同的设置,同时使本地 VS Code 应用程序不受影响。 为此,需要执行以下操作。

  • 在 codespace 中,根据需要配置设置,然后在 codespace 中打开“设置同步”,将设置推送到云。 执行此操作后,系统会自动在 GitHub Codespaces 的用户首选项中启用设置同步,因此你的设置将同步到所有新的代码空间中。 有关详细信息,请参阅在 codespace 中打开“设置同步”
  • 在桌面应用程序中,保持“设置同步”处于关闭状态,或将设置同步到其他帐户。

关于 codespaces 中的“设置同步”

默认情况下,是否在 codespace 中启用“设置同步”,以及缓存的设置与 codespace 中设置之间的关系取决于多种因素。 这些因素包括打开代码空间的编辑器、用户首选项 GitHub以及受信任的存储库列表。

对于在 VS Code 桌面应用程序中打开的代码空间,如果以前在应用程序中打开了“设置同步”,则设置同步将保持打开状态。 如果“设置同步”处于打开状态,则设置将同步到云或从云同步。

对于在 VS Code Web 客户端中打开的代码空间,默认情况下会禁用“设置同步”。 这意味着 VS Code 代码空间中的实例使用默认主题和设置。

如果使用 Web 客户端并希望代码空间使用缓存的同步设置,则可以在用户首选项 GitHub中启用设置同步。 有关详细信息,请参阅管理“设置同步”的首选项。如果在 Web 客户端中打开 codespace,然后在 codespace 中打开“设置同步”,则会自动在用户首选项中启用“设置同步”。

在用户首选项中启用“设置同步”时,对于在 Web 客户端中打开的代码空间,“设置同步”的行为取决于您受信任的存储库列表。

  • 如果从信任的存储库创建 codespace,则“设置同步”在 codespace 中默认处于打开状态,因此设置将同步到云或从云同步。

  • 如果从尚未添加到受信任存储库列表的存储库创建 codespace,则同步将单向进行,并且只能同步一次。 创建 codespace 时,会将你的设置从云中缓存的设置拉取到 codespace 中,但此后,“设置同步”在 codespace 中处于关闭状态。 这意味着对 codespace 中的设置所进行的更新不会推送回云,在创建 codespace 后,从其他位置对缓存的设置所进行的任何更新都不会反映在 codespace 中。

    如果在 codespace 中打开“设置同步”,系统会提示将存储库添加到受信任的存储库列表。 有关详细信息,请参阅在 codespace 中打开“设置同步”

用于 GitHub Codespaces 的受信任仓库列表由 GPG 验证和设置同步功能共享。 假设你已启用这两项功能,如果添加了用于 GPG 验证的选定的受信任存储库列表,则会在从这些存储库创建的 codespace 中启用“设置同步”。 如果信任用于设置同步的新存储库,则会为同一存储库启用 GPG 验证。 尽管这些功能共享相同的受信任存储库列表,但你可以单独启用或禁用 GPG 验证和设置同步。

注意

如果之前已为所有存储库启用了 GPG 验证,建议更改首选项以使用所选的受信任存储库列表。 有关详细信息,请参阅“GitHub Codespaces 中的安全性”。

有关管理 GPG 验证首选项的详细信息,请参阅 管理 GitHub Codespaces 的 GPG 验证

管理“设置同步”的首选项

如果你在用户首选项中启用“设置同步”,则在 VS Code Web 客户端中打开的代码空间将从云端获取你缓存的设置,而从受信任的仓库创建的代码空间将与你缓存的设置进行双向同步。

  1. 在 GitHub 任意页面的右上角,单击你的个人资料照片,然后单击“ Settings”****。

  2. 在边栏中的“代码、规划和自动化”下, 单击 Codespaces

  3. 若要启用或禁用“设置同步”,请在“设置同步”下选择或取消选择“启用”。

  4. 若要更改受信任的存储库以进行 GPG 验证和设置同步,请在“受信任的存储库”下,选择“所有存储库”,或选择“所选存储库”,然后使用“选择存储库”下拉列表添加信任的存储库。

    注意

    建议使用选择的受信任存储库列表。 有关详细信息,请参阅“GitHub Codespaces 中的安全性”。

更新将在新的 codespaces 中生效。 但是,可以在现有的 codespace 中启用“设置同步”。 有关详细信息,请参阅在 codespace 中打开“设置同步”

在 codespace 中打开“设置同步”

注意

应仅在从您信任的存储库创建的代码空间中启用“设置同步”。 有关详细信息,请参阅“GitHub Codespaces 中的安全性”。

以下过程介绍如何在 Web 客户端中打开的 codespace 中打开“设置同步”。 有关在 VS Code 桌面应用程序中启用设置同步的信息,请参阅 VS Code 文档中的 设置同步

  1. 在 VS Code活动栏底部,选择 ,然后单击“ 登录到同步设置”。

  2. 如果创建 codespace 的存储库不在受信任的存储库列表中,则会打开一个浏览器窗口,要求你授权“设置同步”的其他权限。如果信任存储库,请单击“授权”,然后关闭浏览器窗口。 codespace 将重新加载并显示最新的同步设置。

    注意

    如果在用户首选项中禁用了“设置同步”,并且已将受信任的存储库设置为所有存储库,则会看到有关为所有存储库启用“设置同步”的警告。 查看警告并选择是为所有存储库启用“设置同步”,还是修改受信任的存储库列表。

  3. 若要配置要同步的设置,请使用 Shift+Command+P(Mac)或Ctrl+Shift+P(Windows/Linux)打开命令面板,然后开始键入“设置同步”。 单击“设置同步: 配置...”。

  4. 选择要同步的设置,然后单击“确定”。

    “设置同步”选项的屏幕截图。 有七个选项,每个选项都有一个复选框。 “确定”按钮显示在右上角。

在 codespace 中关闭“设置同步”

可以关闭设置同步以停止与 VS Code 的实例之间的设置同步。

当你关闭 codespace 中的设置同步时,新 codespace 将继续使用上次将设置推送到云时缓存的设置。 如果对 codespace 使用 VS Code Web 客户端,并且希望 codespace 使用默认设置而不是缓存的设置,则可以禁用设置同步。有关详细信息,请参阅管理“设置同步”的首选项

如果要在 VS Code 的所有实例(包括桌面应用程序)中恢复使用默认的 VS Code 设置,可以在关闭“设置同步”时清除云中的缓存。

  1. 如果设置同步当前在 VS Code 实例中处于关闭状态,并且你想要清除缓存的设置,则必须首先将其打开。 有关说明,请参阅“个性化你帐户的 GitHub Codespaces”。

  2. 在活动栏底部,选择 ,然后单击“设置同步已打开”。

  3. 在下拉列表中,单击“设置同步: 关闭”。

    下拉菜单的屏幕截图,其中“设置同步: 关闭”选项以深橙色轮廓突出显示。

  4. 若要清除缓存的设置,请在对话框中选择“关闭所有设备上的同步并清除云中的数据”。

    “是否要关闭同步?”的屏幕截图 对话框,其中包含用于从所选云中清除数据的选项。

  5. 单击“关闭”。

Dotfiles

Dotfiles 是类似 Unix 的系统上以 . 开头的文件和文件夹,用于控制系统上应用程序和 shell 的配置。 您可以在 GitHub 上的存储库中存储和管理您的 dotfiles。 有关 dotfiles 存储库中需要包含的内容的建议和教程,请参阅GitHub的dotfiles项目

dotfiles 仓库可能包括用于 shell 的别名和首选项、您想要安装的工具以及您希望对代码空间进行的任何其他个性化设置。

你可以在个人GitHub Codespaces设置中选择相应的仓库,将 GitHub Codespaces 配置为使用你拥有的任意仓库中的点文件。

创建新的 codespace 时, GitHub 将所选的 dotfiles 存储库克隆到 codespace 环境,并查找以下文件之一来设置环境。

  • install.sh
  • install
  • bootstrap.sh
  • bootstrap
  • script/bootstrap
  • setup.sh
  • setup
  • script/setup

如果未找到这些文件,则所选 dotfiles 存储库中以 . 开头的文件或文件夹通过符号链接到代码空间的 ~$HOME 目录。

对所选 dotfiles 仓库所做的任何更改只会应用到每个新的代码空间,而不影响任何现有的代码空间。

注意

目前,Codespaces 还不支持使用你的 dotfiles 存储库对 VS Code 的用户范围设置进行个性化配置。 可以为项目存储库中的特定项目设置默认“工作区”和“远程 [Codespaces]”设置。 有关详细信息,请参阅“开发容器简介”。

为 Codespaces 启用 dotfiles 仓库

可以使用所选的 dotfiles 存储库对环境进行个性化设置 GitHub Codespaces 。 选择 dotfiles 存储库后,可以向其中添加脚本、首选项和配置。 然后,你需要在你的个人 GitHub Codespaces 设置页面中启用 dotfiles。

警告

Dotfiles 可以运行任意脚本,这些脚本可能包含意外或恶意代码。 在安装 dotfiles 存储库之前,我们建议检查脚本以确保它们不会执行任何意外操作。

  1. 在 GitHub 任意页面的右上角,单击你的个人资料照片,然后单击“ Settings”****。

  2. 在边栏中的“代码、规划和自动化”下, 单击 Codespaces

  3. 在“Dotfiles”下,选择“ 自动安装 dotfiles ”,以便 GitHub Codespaces 自动将 dotfiles 安装到你创建的每个新代码空间中。

    Codespace 设置中的“Dotfiles”部分的屏幕截图,其中清除了“自动安装 Dotfiles”选项。

  4. 使用下拉列表选择要从中安装点文件的存储库。

    选择了“自动安装点文件”选项并从存储库下拉列表中选择了“monalisa/点文件”的屏幕截图。

您可以随时将更多脚本、首选项、配置文件添加到 dotfiles 存储库或编辑现有文件。 对设置的更改将仅由新的代码空间选取。

如果你的 codespace 无法从 dotfiles 获取配置设置,请参阅 GitHub Codespaces 的个性化设置选项疑难解答

其他可用设置

还可以在GitHub Codespaces中使用其他选项进行个性化设置

其他阅读材料