# 管理 GitHub Codespaces 的 GPG 验证

您可以允许 GitHub 自动使用 GPG 对在代码空间中所做的提交进行签名，以便其他人可以确信更改来自受信任的源。

## 关于 GitHub Codespaces 中的 GPG 验证

启用 GPG 验证后，GitHub 将自动对你在 GitHub Codespaces
中所做的提交进行签名，并且该提交在 GitHub 上具有已验证状态。 有关 GitHub 签名提交的更多信息，请参阅 [关于提交签名验证](/zh/authentication/managing-commit-signature-verification/about-commit-signature-verification)。

默认情况下，GPG 验证对您创建的代码空间禁用。 如果启用 GPG 验证，你信任的存储库中的提交将被签名。

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

> \[!NOTE]
> 如果之前已为所有存储库启用了 GPG 验证，建议更改首选项以使用所选的受信任存储库列表。 有关详细信息，请参阅“[GitHub Codespaces 中的安全性](/zh/codespaces/reference/security-in-github-codespaces#using-settings-sync)”。

有关管理设置同步首选项的详细信息，请参阅 [个性化你帐户的 GitHub Codespaces](/zh/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#managing-your-preferences-for-settings-sync)。

> \[!NOTE]
> 如果你已将 dotfiles 仓库连接到 GitHub Codespaces，那么在 dotfiles 中的 Git 配置可能会与 GitHub Codespaces 进行提交签名所需的配置产生冲突。 有关详细信息，请参阅“[排查 GitHub Codespaces 的 GPG 验证问题](/zh/codespaces/troubleshooting/troubleshooting-gpg-verification-for-github-codespaces)”。

## 启用或禁用 GPG 验证

1. 在 GitHub 任意页面的右上角，单击你的个人资料照片，然后单击“<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-gear" aria-label="gear" role="img"><path d="M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"></path></svg> Settings”\*\*\*\*。1. 在边栏中的“代码、规划和自动化”下， 单击 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-codespaces" aria-label="codespaces" role="img"><path d="M0 11.25c0-.966.784-1.75 1.75-1.75h12.5c.966 0 1.75.784 1.75 1.75v3A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25Zm2-9.5C2 .784 2.784 0 3.75 0h8.5C13.216 0 14 .784 14 1.75v5a1.75 1.75 0 0 1-1.75 1.75h-8.5A1.75 1.75 0 0 1 2 6.75Zm1.75-.25a.25.25 0 0 0-.25.25v5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-5a.25.25 0 0 0-.25-.25Zm-2 9.5a.25.25 0 0 0-.25.25v3c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-3a.25.25 0 0 0-.25-.25Z"></path><path d="M7 12.75a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1-.75-.75Zm-4 0a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1-.75-.75Z"></path></svg> Codespaces**。
2. 在显示的页面上的“GPG 验证”下，通过选择或取消选择“启用”来启用或禁用 GPG 验证。\*\*\*\*
3. 若要更改受信任的存储库以进行 GPG 验证和设置同步，请在“受信任的存储库”下，选择“所有存储库”，或选择“所选存储库”，然后使用“选择存储库”下拉列表添加信任的存储库。

   > \[!NOTE]
   > 建议使用选择的受信任存储库列表。 有关详细信息，请参阅“[GitHub Codespaces 中的安全性](/zh/codespaces/reference/security-in-github-codespaces#using-settings-sync)”。

启用 GPG 验证后，它将在从相关存储库创建的任何新 codespace 中自动生效。 要使 GPG 验证在当前已在运行的 codespace 中生效，您需要停止并重新启动该 codespace。 有关详细信息，请参阅“[停止和启动 codespace](/zh/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace)”。

## 其他阅读材料

* [设置用户首选项](/zh/codespaces/setting-your-user-preferences)
* [自定义代码空间](/zh/codespaces/customizing-your-codespace)