Co-authored-by: Robert Sese <734194+rsese@users.noreply.github.com>
This commit is contained in:
docubot 2022-09-16 14:22:07 -05:00 коммит произвёл GitHub
Родитель c2e0608e3a
Коммит ffaa0d2245
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
17 изменённых файлов: 436 добавлений и 268 удалений

Просмотреть файл

@ -291,6 +291,7 @@ translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise
translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md,broken liquid tags
translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md,broken liquid tags
translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md,broken liquid tags
translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md,broken liquid tags
translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md,broken liquid tags
translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md,broken liquid tags
translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md,broken liquid tags
@ -302,12 +303,14 @@ translations/zh-CN/content/billing/managing-billing-for-github-actions/about-bil
translations/zh-CN/content/billing/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md,broken liquid tags
translations/zh-CN/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md,rendering error
translations/zh-CN/content/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md,rendering error
translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql.md,broken liquid tags
translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md,broken liquid tags
translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md,broken liquid tags
translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md,broken liquid tags
translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md,broken liquid tags
translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/editing-security-advisories-in-the-github-advisory-database.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md,broken liquid tags
@ -358,6 +361,7 @@ translations/zh-CN/content/packages/managing-github-packages-using-github-action
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md,broken liquid tags
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md,broken liquid tags
translations/zh-CN/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md,broken liquid tags
translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md,broken liquid tags
translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md,broken liquid tags
translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md,broken liquid tags
translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md,broken liquid tags

1 file reason
291 translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md broken liquid tags
292 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md broken liquid tags
293 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md broken liquid tags
294 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md broken liquid tags
295 translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md broken liquid tags
296 translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md broken liquid tags
297 translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md broken liquid tags
303 translations/zh-CN/content/billing/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md broken liquid tags
304 translations/zh-CN/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md rendering error
305 translations/zh-CN/content/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md rendering error
306 translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql.md broken liquid tags
307 translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md broken liquid tags
308 translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md broken liquid tags
309 translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md broken liquid tags
310 translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md broken liquid tags
311 translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md broken liquid tags
312 translations/zh-CN/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md broken liquid tags
313 translations/zh-CN/content/code-security/dependabot/dependabot-alerts/editing-security-advisories-in-the-github-advisory-database.md broken liquid tags
314 translations/zh-CN/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md broken liquid tags
315 translations/zh-CN/content/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates.md broken liquid tags
316 translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md broken liquid tags
361 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md broken liquid tags
362 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md broken liquid tags
363 translations/zh-CN/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md broken liquid tags
364 translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md broken liquid tags
365 translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md broken liquid tags
366 translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md broken liquid tags
367 translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md broken liquid tags

Просмотреть файл

@ -256,7 +256,7 @@ To customize these claim formats, organization and repository admins can use the
By default, the JWT is issued by {% data variables.product.prodname_dotcom %}'s OIDC provider at `https://token.actions.githubusercontent.com`. This path is presented to your cloud provider using the `iss` value in the JWT.
Enterprise admins can security harden their OIDC configuration by configuring their enterprise to receive tokens from a unique URL at `https://api.github.com/enterprises/<enterpriseSlug>/actions/oidc/customization/issuer`. Replace `<enterpriseSlug>` with the slug value of your enterprise.
Enterprise admins can security harden their OIDC configuration by configuring their enterprise to receive tokens from a unique URL at `https://token.actions.githubusercontent.com/<enterpriseSlug>`. Replace `<enterpriseSlug>` with the slug value of your enterprise.
This configuration means that your enterprise will receive the OIDC token from a unique URL, and you can then configure your cloud provider to only accept tokens from that URL. This helps ensure that only the enterprise's repositories can access your cloud resources using OIDC.
@ -270,7 +270,7 @@ After this setting is applied, the JWT will contain the updated `iss` value. In
"sub": "repo:octocat-inc/private-server:ref:refs/heads/main"
"aud": "http://octocat-inc.example/octocat-inc"
"enterprise": "octocat-inc"
"iss": "https://api.github.com/enterprises/octocat-inc/actions/oidc/customization/issuer",
"iss": "https://token.actions.githubusercontent.com/octocat-inc",
"bf": 1755350653,
"exp": 1755351553,
"iat": 1755351253

Просмотреть файл

@ -36,7 +36,7 @@ During the runner deployment process, you can configure the _Max_ option, which
## Networking for {% data variables.actions.hosted_runner %}s
By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive a static IP address from {% data variables.product.prodname_dotcom %}'s IP address pool. When enabled, instances of the {% data variables.actions.hosted_runner %} will receive an address from a range that is unique to the runner, allowing you to use this range to configure a firewall allowlist. You can use up to 10 static IP address ranges in total across all your {% data variables.actions.hosted_runner %}s.
By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive a static IP address from {% data variables.product.prodname_dotcom %}'s IP address pool. When enabled, instances of the {% data variables.actions.hosted_runner %} will receive an address from a range that is unique to the runner, allowing you to use this range to configure a firewall allowlist. {% ifversion fpt %}You can use up to 10 static IP address ranges in total across all your {% data variables.actions.hosted_runner %}s{% endif %}{% ifversion ghec %}You can use up to 10 static IP address ranges for the {% data variables.actions.hosted_runner %}s created at the enterprise level. In addition, you can use up to 10 static IP address ranges for the {% data variables.actions.hosted_runner %}s created at the organization level, for each organization in your enterprise{% endif %}.
{% note %}

Просмотреть файл

@ -1,6 +1,6 @@
---
title: 生成新的 SSH 密钥并将其添加到 ssh-agent
intro: 检查现有 SSH 密钥后,您可以生成新 SSH 密钥以用于身份验证,然后将其添加到 ssh-agent。
title: Generating a new SSH key and adding it to the ssh-agent
intro: 'After you''ve checked for existing SSH keys, you can generate a new SSH key to use for authentication, then add it to the ssh-agent.'
redirect_from:
- /articles/adding-a-new-ssh-key-to-the-ssh-agent
- /articles/generating-a-new-ssh-key
@ -15,32 +15,34 @@ versions:
topics:
- SSH
shortTitle: Generate new SSH key
ms.openlocfilehash: 8714cb24a6ed46fda17f53295601748ebffdc255
ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/05/2022
ms.locfileid: '147409137'
---
## 关于 SSH 密钥密码
{% data reusables.ssh.about-ssh %}有关详细信息,请参阅“[关于 SSH](/authentication/connecting-to-github-with-ssh/about-ssh)”。
## About SSH key passphrases
生成 SSH 密钥时,可以添加密码以进一步保护密钥。 每当使用密钥时,都必须输入密码。 如果密钥具有密码并且你不想每次使用密钥时都输入密码,则可以将密钥添加到 SSH 代理。 SSH 代理会管理 SSH 密钥并记住你的密码。
{% data reusables.ssh.about-ssh %} For more information, see "[About SSH](/authentication/connecting-to-github-with-ssh/about-ssh)."
如果您还没有 SSH 密钥,则必须生成新 SSH 密钥用于身份验证。 如果不确定是否已经拥有 SSH 密钥,您可以检查现有密钥。 有关详细信息,请参阅“[检查现有 SSH 密钥](/github/authenticating-to-github/checking-for-existing-ssh-keys)”。
When you generate an SSH key, you can add a passphrase to further secure the key. Whenever you use the key, you must enter the passphrase. If your key has a passphrase and you don't want to enter the passphrase every time you use the key, you can add your key to the SSH agent. The SSH agent manages your SSH keys and remembers your passphrase.
如果要使用硬件安全密钥向 {% data variables.product.product_name %} 验证,则必须为硬件安全密钥生成新的 SSH 密钥。 使用密钥对进行身份验证时,您必须将硬件安全密钥连接到计算机。 有关详细信息,请参阅 [OpenSSH 8.2 发行说明](https://www.openssh.com/txt/release-8.2)。
If you don't already have an SSH key, you must generate a new SSH key to use for authentication. If you're unsure whether you already have an SSH key, you can check for existing keys. For more information, see "[Checking for existing SSH keys](/github/authenticating-to-github/checking-for-existing-ssh-keys)."
## 生成新 SSH 密钥
If you want to use a hardware security key to authenticate to {% data variables.product.product_name %}, you must generate a new SSH key for your hardware security key. You must connect your hardware security key to your computer when you authenticate with the key pair. For more information, see the [OpenSSH 8.2 release notes](https://www.openssh.com/txt/release-8.2).
可在本地计算机上生成新的 SSH 密钥。 生成密钥后,可以将密钥添加到您在 {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} 上的帐户,以启用通过 SSH 进行 Git 操作的身份验证。
## Generating a new SSH key
You can generate a new SSH key on your local machine. After you generate the key, you can add the key to your account on {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} to enable authentication for Git operations over SSH.
{% ifversion ghes %}
If you are a site administrator for {% data variables.product.product_location %}, you can use the same key to grant yourself administrative SSH access to the instance. For more information, see "[Accessing the administrative shell (SSH)](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh)."
{% endif %}
{% data reusables.ssh.key-type-support %}
{% data reusables.command_line.open_the_multi_os_terminal %}
2. 粘贴下面的文本(替换为您的 {% data variables.product.product_name %} 电子邮件地址)。
{%- ifversion ghae %} <!-- GitHub AE is FIPS 140-2 compliant. FIPS does not yet permit keys that use the ed25519 algorithm. -->
2. Paste the text below, substituting in your {% data variables.product.product_name %} email address.
{%- ifversion ghae %}
<!-- GitHub AE is FIPS 140-2 compliant. FIPS does not yet permit keys that use the ed25519 algorithm. -->
```shell
$ ssh-keygen -t rsa -b 4096 -C "<em>your_email@example.com</em>"
```
@ -50,18 +52,19 @@ ms.locfileid: '147409137'
```
{% note %}
注意:如果你使用的是不支持 Ed25519 算法的旧系统,请使用以下命令:
**Note:** If you are using a legacy system that doesn't support the Ed25519 algorithm, use:
```shell
$ ssh-keygen -t rsa -b 4096 -C "<em>your_email@example.com</em>"
```
{% endnote %} {%- endif %}
{% endnote %}
{%- endif %}
这将以提供的电子邮件地址为标签创建新 SSH 密钥。
This creates a new SSH key, using the provided email as a label.
```shell
> Generating public/private <em>algorithm</em> key pair.
```
3. 提示您“Enter a file in which to save the key输入要保存密钥的文件”时按 Enter 键。 这会接受默认文件位置。
3. When you're prompted to "Enter a file in which to save the key," press Enter. This accepts the default file location.
{% mac %}
@ -87,36 +90,36 @@ ms.locfileid: '147409137'
{% endlinux %}
4. 在提示符下,键入安全密码。 有关详细信息,请参阅“[使用 SSH 密钥密码](/articles/working-with-ssh-key-passphrases)”。
4. At the prompt, type a secure passphrase. For more information, see ["Working with SSH key passphrases](/articles/working-with-ssh-key-passphrases)."
```shell
> Enter passphrase (empty for no passphrase): <em>[Type a passphrase]</em>
> Enter same passphrase again: <em>[Type passphrase again]</em>
```
## 将 SSH 密钥添加到 ssh-agent
## Adding your SSH key to the ssh-agent
在向 ssh 代理添加新的 SSH 密钥以管理您的密钥之前,您应该检查现有 SSH 密钥并生成新的 SSH 密钥。 <span class="platform-mac">将 SSH 密钥添加到该代理时,应使用默认的 macOS `ssh-add` 命令,而不是使用通过 [macports](https://www.macports.org/)、[homebrew](http://brew.sh/) 或某些其他外部来源安装的应用程序。</span>
Before adding a new SSH key to the ssh-agent to manage your keys, you should have checked for existing SSH keys and generated a new SSH key. <span class="platform-mac">When adding your SSH key to the agent, use the default macOS `ssh-add` command, and not an application installed by [macports](https://www.macports.org/), [homebrew](http://brew.sh/), or some other external source.</span>
{% mac %}
{% data reusables.command_line.start_ssh_agent %}
2. 如果你使用的是 macOS Sierra 10.12.2 或更高版本,则需要修改 `~/.ssh/config` 文件以自动将密钥加载到 ssh-agent 中并在密钥链中存储密码。
2. If you're using macOS Sierra 10.12.2 or later, you will need to modify your `~/.ssh/config` file to automatically load keys into the ssh-agent and store passphrases in your keychain.
* 首先,检查你的 `~/.ssh/config` 文件是否在默认位置。
* First, check to see if your `~/.ssh/config` file exists in the default location.
```shell
$ open ~/.ssh/config
> The file /Users/<em>you</em>/.ssh/config does not exist.
```
* 如果文件不存在,请创建该文件。
* If the file doesn't exist, create the file.
```shell
$ touch ~/.ssh/config
```
* 打开你的 `~/.ssh/config` 文件,然后修改文件以包含以下行。 如果您的 SSH 密钥文件与示例代码具有不同的名称或路径,请修改文件名或路径以匹配您当前的设置。
* Open your `~/.ssh/config` file, then modify the file to contain the following lines. If your SSH key file has a different name or path than the example code, modify the filename or path to match your current setup.
```
Host *
@ -127,11 +130,11 @@ ms.locfileid: '147409137'
{% note %}
**注意:**
**Notes:**
- 如果你选择不向密钥添加密码,应该省略 `UseKeychain` 行。
- If you chose not to add a passphrase to your key, you should omit the `UseKeychain` line.
- 如果看到 `Bad configuration option: usekeychain` 错误,请在配置的 `Host *` 部分添加额外的一行。
- If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *` section.
```
Host *
@ -139,21 +142,21 @@ ms.locfileid: '147409137'
```
{% endnote %}
3. 将 SSH 私钥添加到 ssh-agent 并将密码存储在密钥链中。 {% data reusables.ssh.add-ssh-key-to-ssh-agent %}
3. Add your SSH private key to the ssh-agent and store your passphrase in the keychain. {% data reusables.ssh.add-ssh-key-to-ssh-agent %}
```shell
$ ssh-add -K ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}
```
{% note %}
注意:`-K` 选项位于 Apple 的 `ssh-add` 标准版本中,当你将 ssh 密钥添加到 ssh-agent 时,它会将密码存储在你的密钥链中。 如果选择不向密钥添加密码,请运行命令,而不使用 `-K` 选项。
**Note:** The `-K` option is Apple's standard version of `ssh-add`, which stores the passphrase in your keychain for you when you add an SSH key to the ssh-agent. If you chose not to add a passphrase to your key, run the command without the `-K` option.
如果您没有安装 Apple 的标准版本,可能会收到错误消息。 有关解决此错误的详细信息,请参阅“[错误ssh-add非法选项 -- K](/articles/error-ssh-add-illegal-option-k)”。
If you don't have Apple's standard version installed, you may receive an error. For more information on resolving this error, see "[Error: ssh-add: illegal option -- K](/articles/error-ssh-add-illegal-option-k)."
在 MacOS Monterey (12.0) 中,`-K` 和 `-A` 标志已弃用,分别由 `--apple-use-keychain``--apple-load-keychain` 标志所取代。
In MacOS Monterey (12.0), the `-K` and `-A` flags are deprecated and have been replaced by the `--apple-use-keychain` and `--apple-load-keychain` flags, respectively.
{% endnote %}
4. 将 SSH 密钥添加到 {% data variables.product.product_name %} 上的帐户。 有关详细信息,请参阅“[将新的 SSH 密钥添加到 {% data variables.product.prodname_dotcom %} 帐户](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)”。
4. Add the SSH key to your account on {% data variables.product.product_name %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
{% endmac %}
@ -161,16 +164,17 @@ ms.locfileid: '147409137'
{% data reusables.desktop.windows_git_bash %}
1. 确保 ssh-agent 正在运行。 你可以根据“[使用 SSH 密钥密码](/articles/working-with-ssh-key-passphrases)”中的“自动启动 ssh-agent”说明或者手动启动它
1. Ensure the ssh-agent is running. You can use the "Auto-launching the ssh-agent" instructions in "[Working with SSH key passphrases](/articles/working-with-ssh-key-passphrases)", or start it manually:
```shell
# start the ssh-agent in the background
$ eval "$(ssh-agent -s)"
> Agent pid 59566
```
2. 将 SSH 私钥添加到 ssh-agent。 {% data reusables.ssh.add-ssh-key-to-ssh-agent %} {% data reusables.ssh.add-ssh-key-to-ssh-agent-commandline %}
2. Add your SSH private key to the ssh-agent. {% data reusables.ssh.add-ssh-key-to-ssh-agent %}
{% data reusables.ssh.add-ssh-key-to-ssh-agent-commandline %}
3. 将 SSH 密钥添加到 {% data variables.product.product_name %} 上的帐户。 有关详细信息,请参阅“[将新的 SSH 密钥添加到 {% data variables.product.prodname_dotcom %} 帐户](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)”。
3. Add the SSH key to your account on {% data variables.product.product_name %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
{% endwindows %}
@ -178,33 +182,36 @@ ms.locfileid: '147409137'
{% data reusables.command_line.start_ssh_agent %}
2. 将 SSH 私钥添加到 ssh-agent。 {% data reusables.ssh.add-ssh-key-to-ssh-agent %} {% data reusables.ssh.add-ssh-key-to-ssh-agent-commandline %}
2. Add your SSH private key to the ssh-agent. {% data reusables.ssh.add-ssh-key-to-ssh-agent %}
{% data reusables.ssh.add-ssh-key-to-ssh-agent-commandline %}
3. 将 SSH 密钥添加到 {% data variables.product.product_name %} 上的帐户。 有关详细信息,请参阅“[将新的 SSH 密钥添加到 {% data variables.product.prodname_dotcom %} 帐户](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)”。
3. Add the SSH key to your account on {% data variables.product.product_name %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
{% endlinux %}
## 为硬件安全密钥生成新的 SSH 密钥
## Generating a new SSH key for a hardware security key
如果您使用 macOS 或 Linux 在生成新的 SSH 密钥之前,您可能需要更新 SSH 客户端或安装新的 SSH 客户端。 有关详细信息,请参阅“[错误:未知密钥类型](/github/authenticating-to-github/error-unknown-key-type)”。
If you are using macOS or Linux, you may need to update your SSH client or install a new SSH client prior to generating a new SSH key. For more information, see "[Error: Unknown key type](/github/authenticating-to-github/error-unknown-key-type)."
1. 将硬件安全密钥插入计算机。
1. Insert your hardware security key into your computer.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. 粘贴下面的文本,将电子邮件地址替换为您的 {% data variables.product.product_name %} 帐户的电子邮件地址。
3. Paste the text below, substituting in the email address for your account on {% data variables.product.product_name %}.
```shell
$ ssh-keygen -t {% ifversion ghae %}ecdsa{% else %}ed25519{% endif %}-sk -C "<em>your_email@example.com</em>"
```
{%- ifversion not ghae %} {% note %}
{%- ifversion not ghae %}
{% note %}
注意:如果命令失败,并且你收到错误 `invalid format``feature not supported,`,则表明你可能在使用不支持 Ed25519 算法的硬件安全密钥。 请输入以下命令。
**Note:** If the command fails and you receive the error `invalid format` or `feature not supported,` you may be using a hardware security key that does not support the Ed25519 algorithm. Enter the following command instead.
```shell
$ ssh-keygen -t ecdsa-sk -C "your_email@example.com"
```
{% endnote %} {%- endif %}
4. 出现提示时,请触摸硬件安全密钥上的按钮。
5. 当提示您“Enter a file in which to save the key输入要保存密钥的文件”时按 Enter 接受默认文件位置。
{% endnote %}
{%- endif %}
4. When you are prompted, touch the button on your hardware security key.
5. When you are prompted to "Enter a file in which to save the key," press Enter to accept the default file location.
{% mac %}
@ -230,9 +237,9 @@ ms.locfileid: '147409137'
{% endlinux %}
6. 当提示你输入密码时,请按 Enter。
6. When you are prompted to type a passphrase, press **Enter**.
```shell
> Enter passphrase (empty for no passphrase): <em>[Type a passphrase]</em>
> Enter same passphrase again: <em>[Type passphrase again]</em>
```
7. 将 SSH 密钥添加到 {% data variables.product.prodname_dotcom %} 上的帐户。 有关详细信息,请参阅“[将新的 SSH 密钥添加到 {% data variables.product.prodname_dotcom %} 帐户](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)”。
7. Add the SSH key to your account on {% data variables.product.prodname_dotcom %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."

Просмотреть файл

@ -1,7 +1,7 @@
---
title: 关于使用 CodeQL 进行代码扫描
title: About code scanning with CodeQL
shortTitle: Code scanning with CodeQL
intro: '可以使用 {% data variables.product.prodname_codeql %} 来识别代码中的漏洞和错误。 结果在 {% data variables.product.prodname_dotcom %} 中显示为 {% data variables.product.prodname_code_scanning %} 警报。'
intro: 'You can use {% data variables.product.prodname_codeql %} to identify vulnerabilities and errors in your code. The results are shown as {% data variables.product.prodname_code_scanning %} alerts in {% data variables.product.prodname_dotcom %}.'
product: '{% data reusables.gated-features.code-scanning %}'
redirect_from:
- /code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql
@ -15,58 +15,58 @@ topics:
- Advanced Security
- Code scanning
- CodeQL
ms.openlocfilehash: 41531627f73e7878cfa5667560b61cd4e21d20b7
ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/05/2022
ms.locfileid: '147052174'
---
{% data reusables.code-scanning.beta %} {% data reusables.code-scanning.enterprise-enable-code-scanning %}
## 关于使用 {% data variables.product.prodname_codeql %} 进行 {% data variables.product.prodname_code_scanning %}
{% data reusables.code-scanning.beta %}
{% data reusables.code-scanning.enterprise-enable-code-scanning %}
## About {% data variables.product.prodname_code_scanning %} with {% data variables.product.prodname_codeql %}
{% data reusables.code-scanning.about-codeql-analysis %}
对 {% data variables.product.prodname_code_scanning %} 使用 {% data variables.product.prodname_codeql %} 有两种主要方法:
There are two main ways to use {% data variables.product.prodname_codeql %} analysis for {% data variables.product.prodname_code_scanning %}:
- 将 {% data variables.product.prodname_codeql %} 工作流程添加到存储库。 这使用 [github/codeql-action](https://github.com/github/codeql-action/) 运行 {% data variables.product.prodname_codeql_cli %}。 有关详细信息,请参阅“[为存储库设置 {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository#setting-up-code-scanning-using-actions)”。
- 直接在外部 CI 系统中运行 {% data variables.product.prodname_codeql %} CLI 并将结果上传到 {% data variables.product.prodname_dotcom %}。 有关详细信息,请参阅“[关于 CI 系统中的 {% data variables.product.prodname_codeql %} 代码扫描](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system)”。
- Add the {% data variables.product.prodname_codeql %} workflow to your repository. This uses the [github/codeql-action](https://github.com/github/codeql-action/) to run the {% data variables.product.prodname_codeql_cli %}. For more information, see "[Setting up {% data variables.product.prodname_code_scanning %} for a repository](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository#setting-up-code-scanning-using-actions)."
- Run the {% data variables.product.prodname_codeql %} CLI directly in an external CI system and upload the results to {% data variables.product.prodname_dotcom %}. For more information, see "[About {% data variables.product.prodname_codeql %} code scanning in your CI system ](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system)."
{% ifversion ghes or ghae %}
{% note %} 在 {% data variables.product.product_name %} {% ifversion ghes %}{{ allVersions[currentVersion].currentRelease }} 上,{% endif %} {% data variables.product.prodname_codeql %} 操作默认使用 {% data variables.product.prodname_codeql_cli %} 版本 {% data variables.product.codeql_cli_ghes_recommended_version %}。 如果在外部 CI 系统中运行分析,建议使用 {% data variables.product.prodname_codeql_cli %} 的相同版本。
{% note %}
On {% data variables.product.product_name %} {% ifversion ghes %}{{ allVersions[currentVersion].currentRelease }},{% endif %} the {% data variables.product.prodname_codeql %} action uses {% data variables.product.prodname_codeql_cli %} version {% data variables.product.codeql_cli_ghes_recommended_version %} by default. We recommend that you use the same version of the {% data variables.product.prodname_codeql_cli %} if you run analysis in an external CI system.
{% endnote %}
{% endif %}
## 关于 {% data variables.product.prodname_codeql %}
## About {% data variables.product.prodname_codeql %}
{% data variables.product.prodname_codeql %} 将代码视为数据,允许您在代码中查找潜在漏洞,比传统的静态分析工具更可靠。
{% data variables.product.prodname_codeql %} treats code like data, allowing you to find potential vulnerabilities in your code with greater confidence than traditional static analyzers.
1. 生成 {% data variables.product.prodname_codeql %} 数据库来代表您的代码库。
2. 然后,对该数据库运行 {% data variables.product.prodname_codeql %} 查询,以确定代码库中的问题。
3. 将 {% data variables.product.prodname_codeql %} 与 {% data variables.product.prodname_code_scanning %}一起使用时,查询结果在 {% data variables.product.product_name %} 中显示为 {% data variables.product.prodname_code_scanning %} 警报。
1. You generate a {% data variables.product.prodname_codeql %} database to represent your codebase.
2. Then you run {% data variables.product.prodname_codeql %} queries on that database to identify problems in the codebase.
3. The query results are shown as {% data variables.product.prodname_code_scanning %} alerts in {% data variables.product.product_name %} when you use {% data variables.product.prodname_codeql %} with {% data variables.product.prodname_code_scanning %}.
{% data variables.product.prodname_codeql %} 支持编译的语言和解释的语言,并且可以在使用支持的语言编写的代码中发现漏洞和错误。
{% data variables.product.prodname_codeql %} supports both compiled and interpreted languages, and can find vulnerabilities and errors in code that's written in the supported languages.
{% data reusables.code-scanning.codeql-languages-bullets %}
## 关于 {% data variables.product.prodname_codeql %} 查询
## About {% data variables.product.prodname_codeql %} queries
{% data variables.product.company_short %} 专家、安全研究人员和社区贡献者编写和维护用于 {% data variables.product.prodname_code_scanning %} 的默认 {% data variables.product.prodname_codeql %} 查询。 查询会定期更新,以改进分析并减少任何误报结果。 这些查询是开源查询,因此你可以在 [`github/codeql`](https://github.com/github/codeql) 存储库中查看和参与它们。 有关详细信息,请参阅 {% data variables.product.prodname_codeql %} 网站上的 [{% data variables.product.prodname_codeql %}](https://codeql.github.com/)。 你也可以编写自己的查询。 有关详细信息,请参阅 {% data variables.product.prodname_codeql %} 文档中的“[关于 {% data variables.product.prodname_codeql %} 查询](https://codeql.github.com/docs/writing-codeql-queries/about-codeql-queries/)”。
{% data variables.product.company_short %} experts, security researchers, and community contributors write and maintain the default {% data variables.product.prodname_codeql %} queries used for {% data variables.product.prodname_code_scanning %}. The queries are regularly updated to improve analysis and reduce any false positive results. The queries are open source, so you can view and contribute to the queries in the [`github/codeql`](https://github.com/github/codeql) repository. For more information, see [{% data variables.product.prodname_codeql %}](https://codeql.github.com/) on the {% data variables.product.prodname_codeql %} website. You can also write your own queries. For more information, see "[About {% data variables.product.prodname_codeql %} queries](https://codeql.github.com/docs/writing-codeql-queries/about-codeql-queries/)" in the {% data variables.product.prodname_codeql %} documentation.
您可以在代码扫描分析过程中运行其他查询。
You can run additional queries as part of your code scanning analysis.
{%- ifversion codeql-packs %} 这些查询必须属于已发布的 {% data variables.product.prodname_codeql %} 查询包beta 版本)或存储库中的 QL 包。 与传统的 QL 包相比,{% data variables.product.prodname_codeql %} 包(测试版)具有以下优势:
{%- ifversion codeql-packs %}
These queries must belong to a published {% data variables.product.prodname_codeql %} query pack (beta) or a {% data variables.product.prodname_codeql %} pack in a repository. {% data variables.product.prodname_codeql %} packs (beta) provide the following benefits over traditional {% data variables.product.prodname_ql %} packs:
- 当 {% data variables.product.prodname_codeql %} 查询包(测试版)发布到 {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} 时,查询所需的所有可传递依赖项和编译缓存都包含在包中。 这可以提高性能,并确保在包中运行查询每次都会提供相同的结果,直到升级到新版本的包或 CLI。
- QL 包不包含可传递的依赖项,因此包中的查询只能依赖于标准库(即,查询中的 `import LANGUAGE` 语句引用的库),或查询所在的 QL 包中的库。
- When a {% data variables.product.prodname_codeql %} query pack (beta) is published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %}, all the transitive dependencies required by the queries and a compilation cache are included in the package. This improves performance and ensures that running the queries in the pack gives identical results every time until you upgrade to a new version of the pack or the CLI.
- {% data variables.product.prodname_ql %} packs do not include transitive dependencies, so queries in the pack can depend only on the standard libraries (that is, the libraries referenced by an `import LANGUAGE` statement in your query), or libraries in the same {% data variables.product.prodname_ql %} pack as the query.
- {% data variables.product.prodname_codeql %} query packs (beta) can be downloaded from multiple GitHub container registries. For more information, see "[Configuring {% data variables.product.prodname_code_scanning %}](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#downloading-codeql-packs-from-github-enterprise-server)."
有关详细信息,请参阅 {% data variables.product.prodname_codeql %} 文档中的“[关于 {% data variables.product.prodname_codeql %} 包](https://codeql.github.com/docs/codeql-cli/about-codeql-packs/)”和“[关于 {% data variables.product.prodname_ql %} 包](https://codeql.github.com/docs/codeql-cli/about-ql-packs/)”。
For more information, see "[About {% data variables.product.prodname_codeql %} packs](https://codeql.github.com/docs/codeql-cli/about-codeql-packs/)" in the {% data variables.product.prodname_codeql %} documentation.
{% data reusables.code-scanning.beta-codeql-packs-cli %}
{%- else %} 要运行的查询必须属于存储库中的 QL 包。 查询只能依赖于标准库(即,查询中的 `import LANGUAGE` 语句引用的库)或查询所在的 QL 包中的库。 有关详细信息,请参阅“[关于 {% data variables.product.prodname_ql %} 包](https://codeql.github.com/docs/codeql-cli/about-ql-packs/)”。
{%- else %}
The queries you want to run must belong to a {% data variables.product.prodname_ql %} pack in a repository. Queries must only depend on the standard libraries (that is, the libraries referenced by an `import LANGUAGE` statement in your query), or libraries in the same {% data variables.product.prodname_ql %} pack as the query.
{% endif %}

Просмотреть файл

@ -323,6 +323,38 @@ In the example below, `scope` is the organization or personal account that publi
packs: scope/pack1,scope/pack2@1.2.3,scope/pack3@~3.2.1,scope/pack4@4.5.6:path/to/queries
```
### Downloading {% data variables.product.prodname_codeql %} packs from {% data variables.product.prodname_ghe_server %}
If your workflow uses packs that are published on a {% data variables.product.prodname_ghe_server %} installation, you need to tell your workflow where to find them. You can do this by using the `registries` input of the {% data reusables.actions.action-codeql-action-init %} action. This input accepts a list of `url`, `packages`, and `token` properties as shown below.
```
- uses: {% data reusables.actions.action-codeql-action-init %}
with:
registries: {% raw %}|
# URL to the container registry, usually in this format
- url: https://containers.GHEHOSTNAME1/v2/
# List of package glob patterns to be found at this registry
packages:
- my-company/*
- my-company2/*
# Token, which should be stored as a secret
token: ${{ secrets.GHEHOSTNAME1_TOKEN }}
# URL to the default container registry
- url: https://ghcr.io/v2/
# Packages can also be a string
packages: "*/*"
token: ${{ secrets.GHCR_TOKEN }}
{% endraw %}
```
The package patterns in the registries list are examined in order, so you should generally place the most specific package patterns first. The values for `token` must be a personal access token generated by the GitHub instance you are downloading from with the `read:packages` permission.
Notice the `|` after the `registries` property name. This is important since {% data variables.product.prodname_actions %} inputs can only accept strings. Using the `|` converts the subsequent text to a string, which is parsed later by the {% data reusables.actions.action-codeql-action-init %} action.
### Using queries in QL packs
{% endif %}
To add one or more queries, add a `with: queries:` entry within the `uses: {% data reusables.actions.action-codeql-action-init %}` section of the workflow. If the queries are in a private repository, use the `external-repository-token` parameter to specify a token that has access to checkout the private repository.

Просмотреть файл

@ -55,7 +55,7 @@ You can display the command-line help for any command using the <nobr>`--help`</
2. Set up the environment for the codebase, making sure that any dependencies are available. For more information, see [Creating databases for non-compiled languages](https://codeql.github.com/docs/codeql-cli/creating-codeql-databases/#creating-databases-for-non-compiled-languages) and [Creating databases for compiled languages](https://codeql.github.com/docs/codeql-cli/creating-codeql-databases/#creating-databases-for-compiled-languages) in the documentation for the {% data variables.product.prodname_codeql_cli %}.
3. Find the build command, if any, for the codebase. Typically this is available in a configuration file in the CI system.
4. Run `codeql database create` from the checkout root of your repository and build the codebase.
```shell
# Single supported language - create one CodeQL databsae
codeql database create &lt;database&gt; --command&lt;build&gt; --language=&lt;language-identifier&gt;
@ -64,7 +64,7 @@ You can display the command-line help for any command using the <nobr>`--help`</
codeql database create &lt;database&gt; --command&lt;build&gt; \
--db-cluster --language=&lt;language-identifier&gt;,&lt;language-identifier&gt;
```
{% note %}
**Note:** If you use a containerized build, you need to run the {% data variables.product.prodname_codeql_cli %} inside the container where your build task takes place.
@ -75,9 +75,9 @@ You can display the command-line help for any command using the <nobr>`--help`</
|--------|:--------:|-----|
| `<database>` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the name and location of a directory to create for the {% data variables.product.prodname_codeql %} database. The command will fail if you try to overwrite an existing directory. If you also specify `--db-cluster`, this is the parent directory and a subdirectory is created for each language analyzed.|
| <nobr>`--language`</nobr> | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the identifier for the language to create a database for, one of: `{% data reusables.code-scanning.codeql-languages-keywords %}` (use `javascript` to analyze TypeScript code). When used with <nobr>`--db-cluster`</nobr>, the option accepts a comma-separated list, or can be specified more than once.
| <nobr>`--command`</nobr> | | Recommended. Use to specify the build command or script that invokes the build process for the codebase. Commands are run from the current folder or, where it is defined, from <nobr>`--source-root`</nobr>. Not needed for Python and JavaScript/TypeScript analysis. |
| <nobr>`--command`</nobr> | | Recommended. Use to specify the build command or script that invokes the build process for the codebase. Commands are run from the current folder or, where it is defined, from <nobr>`--source-root`</nobr>. Not needed for Python and JavaScript/TypeScript analysis. |
| <nobr>`--db-cluster`</nobr> | | Optional. Use in multi-language codebases to generate one database for each language specified by <nobr>`--language`</nobr>.
| <nobr>`--no-run-unnecessary-builds`</nobr> | | Recommended. Use to suppress the build command for languages where the {% data variables.product.prodname_codeql_cli %} does not need to monitor the build (for example, Python and JavaScript/TypeScript).
| <nobr>`--no-run-unnecessary-builds`</nobr> | | Recommended. Use to suppress the build command for languages where the {% data variables.product.prodname_codeql_cli %} does not need to monitor the build (for example, Python and JavaScript/TypeScript).
| <nobr>`--source-root`</nobr> | | Optional. Use if you run the CLI outside the checkout root of the repository. By default, the `database create` command assumes that the current directory is the root directory for the source files, use this option to specify a different location. |{% ifversion fpt or ghec or ghes > 3.2 or ghae %}
| <nobr>`--codescanning-config`</nobr> | | Optional (Advanced). Use if you have a configuration file that specifies how to create the {% data variables.product.prodname_codeql %} databases and what queries to run in later steps. For more information, see "[Using a custom configuration file](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-a-custom-configuration-file)" and "[database create](https://codeql.github.com/docs/codeql-cli/manual/database-create/#cmdoption-codeql-database-create-codescanning-config)." |{% endif %}
@ -275,6 +275,10 @@ If you want to download a {% data variables.product.prodname_codeql %} pack with
```shell
echo $OCTO-ORG_ACCESS_TOKEN | codeql pack download &lt;scope/name@version:path&gt; &lt;scope/name@version:path&gt; ...
```
### Downloading {% data variables.product.prodname_codeql %} packs from multiple {% data variables.product.company_short %} container registries
If your {% data variables.product.prodname_codeql %} packs reside on multiple container registries, then you must instruct the {% data variables.product.prodname_codeql_cli %} where to find each pack. For more information, see "[Configuring {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors#downloading-codeql-packs-from-github-enterprise-server)."
{% endif %}
## Example CI configuration for {% data variables.product.prodname_codeql %} analysis
@ -331,3 +335,4 @@ If you want to upload more than one set of results to the {% data variables.prod
- [Creating CodeQL databases](https://codeql.github.com/docs/codeql-cli/creating-codeql-databases/)
- [Analyzing databases with the CodeQL CLI](https://codeql.github.com/docs/codeql-cli/analyzing-databases-with-the-codeql-cli/)
- [Publishing and using CodeQL packs](https://codeql.github.com/docs/codeql-cli/publishing-and-using-codeql-packs/)

Просмотреть файл

@ -1,6 +1,6 @@
---
title: 在 GitHub Advisory Database 中编辑安全公告
intro: '你可以对 {% data variables.product.prodname_advisory_database %} 中发布的任何公告提交改进建议。'
title: Editing security advisories in the GitHub Advisory Database
intro: 'You can submit improvements to any advisory published in the {% data variables.product.prodname_advisory_database %}.'
redirect_from:
- /code-security/security-advisories/editing-security-advisories-in-the-github-advisory-database
- /code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/editing-security-advisories-in-the-github-advisory-database
@ -17,37 +17,39 @@ topics:
- Vulnerabilities
- CVEs
shortTitle: Edit Advisory Database
ms.openlocfilehash: 062779bfb9a39a651b10501c523047f3ae2805b6
ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/05/2022
ms.locfileid: '147409409'
---
## 关于在 {% data variables.product.prodname_advisory_database %} 中编辑公告
位于 [github.com/advisories](https://github.com/advisories) 的 {% data variables.product.prodname_advisory_database %} 中的安全公告被视为全局公告。 任何人都可以对 {% data variables.product.prodname_advisory_database %} 中的任何全局安全公告提出改进建议。 可以编辑或添加任何详细信息,包括其他受影响的生态系统、严重性级别或受影响方的说明。 {% data variables.product.prodname_security %} 策展团队将评审提交的改进,并在接受后将其发布到 {% data variables.product.prodname_advisory_database %} 上。
{% ifversion fpt or ghec %}只有存储库所有者和管理员才能编辑存储库级别的安全公告。 有关详细信息,请参阅“[编辑存储库安全性公告](/code-security/security-advisories/editing-a-security-advisory)”。{% endif %}
## 在 GitHub Advisory Database 中编辑公告
## About editing advisories in the {% data variables.product.prodname_advisory_database %}
Security advisories in the {% data variables.product.prodname_advisory_database %} at [github.com/advisories](https://github.com/advisories) are considered global advisories. Anyone can suggest improvements on any global security advisory in the {% data variables.product.prodname_advisory_database %}. You can edit or add any detail, including additionally affected ecosystems, severity level or description of who is impacted. The {% data variables.product.prodname_security %} curation team will review the submitted improvements and publish them onto the {% data variables.product.prodname_advisory_database %} if accepted.
{% ifversion fpt or ghec %}
Only repository owners and administrators can edit repository-level security advisories. For more information, see "[Editing a repository security advisory](/code-security/security-advisories/editing-a-security-advisory)."{% endif %}
1. 导航到 https://github.com/advisories。
2. 选择要编辑的安全公告。
3. 在页面右侧,单击“此漏洞的建议改进”链接。
![建议改进链接](/assets/images/help/security/suggest-improvements-to-advisory.png)
4. 在贡献形式中,进行所需的改进。 可以编辑或添加任何详细信息。
5. 编辑完公告后,单击“提交改进”。
6. 提交改进后,系统将创建包含你的更改的拉取请求,供 {% data variables.product.prodname_security %} 策展团队在 [github/advisory-database](https://github.com/github/advisory-database) 中查看。 如果公告源自 {% data variables.product.prodname_dotcom %} 存储库,我们还会标记原始发布者以便提供可选评论。 可以在拉取请求更新或关闭时查看拉取请求并获取通知。
## Editing advisories in the GitHub Advisory Database
还可以直接在 [github/advisory-database](https://github.com/github/advisory-database) 存储库中的公告文件上打开拉取请求。 有关详细信息,请参阅[贡献指南](https://github.com/github/advisory-database/blob/main/CONTRIBUTING.md)。
1. Navigate to https://github.com/advisories.
1. Select the security advisory you would like to contribute to.
1. On the right-hand side of the page, click the **Suggest improvements for this vulnerability** link.
![Screenshot of the suggest improvements link](/assets/images/help/security/suggest-improvements-to-advisory.png)
1. In the contribution form, make the desired improvements. You can edit or add any detail.{% ifversion security-advisories-reason-for-change %}
1. Under **Reason for change**, explain why you want to make this improvement. If you include links to supporting material this will help our reviewers.
![Screenshot of the reason for change field](/assets/images/help/security/security-advisories-suggest-improvement-reason.png){% endif %}
1. When you finish editing the advisory, click **Submit improvements**.
1. Once you submit your improvements, a pull request containing your changes will be created for review in [github/advisory-database](https://github.com/github/advisory-database) by the {% data variables.product.prodname_security %} curation team. If the advisory originated from a {% data variables.product.prodname_dotcom %} repository, we will also tag the original publisher for optional commentary. You can view the pull request and get notifications when it is updated or closed.
You can also open a pull request directly on an advisory file in the [github/advisory-database](https://github.com/github/advisory-database) repository. For more information, see the [contribution guidelines](https://github.com/github/advisory-database/blob/main/CONTRIBUTING.md).
{% ifversion security-advisories-ghes-ghae %}
## 编辑来自 {% data variables.product.product_location %} 的公告
## Editing advisories from {% data variables.product.product_location %}
如果已为 {% data variables.product.product_location %} 启用 {% data variables.product.prodname_github_connect %},你将能够通过将 `/advisories` 添加到实例 URL 来查看公告。
If you have {% data variables.product.prodname_github_connect %} enabled for {% data variables.product.product_location %}, you will be able to see advisories by adding `/advisories` to the instance url.
1. 导航到 `https://HOSTNAME/advisories`
2. 选择要编辑的安全公告。
3. 在页面右侧,单击“在 Github.com 上针对此漏洞提出改进建议”。 链接。 此时会在 {% data variables.product.prodname_dotcom_the_website %} 上打开一个新选项卡,该选项卡具有相同的安全公告。
![建议改进链接](/assets/images/help/security/suggest-improvements-to-advisory-on-github-com.png)
4. 按照上述“[在 GitHub 公告数据库中编辑公告](#editing-advisories-in-the-github-advisory-database)”中的步骤 4 到 6 编辑公告。
1. Navigate to `https://HOSTNAME/advisories`.
2. Select the security advisory you would like to contribute to.
3. On the right-hand side of the page, click the **Suggest improvements for this vulnerability on Github.com.** link. A new tab opens with the same security advisory on {% data variables.product.prodname_dotcom_the_website %}.
![Suggest improvements link](/assets/images/help/security/suggest-improvements-to-advisory-on-github-com.png)
4. Edit the advisory, following steps four through six in "[Editing advisories in the GitHub Advisory Database](#editing-advisories-in-the-github-advisory-database)" above.
{% endif %}

Просмотреть файл

@ -86,7 +86,7 @@ childGroups:
- issues
- search-github
- name: Developers
octicon: MarkGithubIcon
octicon: CodeSquareIcon
children:
- developers
- rest

Просмотреть файл

@ -1,6 +1,6 @@
---
title: 合并拉取请求
intro: 在工作完成时将拉取请求合并到上游分支。 对仓库具有推送权限的任何人都可以完成合并。
title: Merging a pull request
intro: Merge a pull request into the upstream branch when work is completed. Anyone with push access to the repository can complete the merge.
redirect_from:
- /github/collaborating-with-issues-and-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request
- /articles/merging-a-pull-request
@ -13,70 +13,66 @@ versions:
ghec: '*'
topics:
- Pull requests
ms.openlocfilehash: cccb85404c9cfe7305d639911528afed3706edfa
ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/10/2022
ms.locfileid: '145129632'
---
## 关于拉取请求合并
## About pull request merges
在拉取请求中,您提议将您对头部分支所做的更改合并到基础分支。 默认情况下,任何拉取请求都可随时合并,除非头部分支与基本分支冲突。 但是,何时可以将拉取请求合并到特定分支中可能会有一些限制。 例如,如果必需状态检查通过,您可能只能将拉取请求合并到默认分支。 有关详细信息,请参阅“[关于受保护的分支](/github/administering-a-repository/about-protected-branches)”。
In a pull request, you propose that changes you've made on a head branch should be merged into a base branch. By default, any pull request can be merged at any time, unless the head branch is in conflict with the base branch. However, there may be restrictions on when you can merge a pull request into a specific branch. For example, you may only be able to merge a pull request into the default branch if required status checks are passing. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches)."
{% data reusables.pull_requests.you-can-auto-merge %}
如果拉取请求具有合并冲突,或者你在合并前想要测试更改,可以[本地签出拉取请求](/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally),然后使用命令行进行合并。
If the pull request has merge conflicts, or if you'd like to test the changes before merging, you can [check out the pull request locally](/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally) and merge it using the command line.
无法合并草稿拉取请求。 有关草稿拉取请求的详细信息,请参阅“[关于拉取请求](/articles/about-pull-requests#draft-pull-requests)”。
You can't merge a draft pull request. For more information about draft pull requests, see "[About pull requests](/articles/about-pull-requests#draft-pull-requests)."
仓库可配置为在您合并拉请求时自动删除拉取请求的头部分支。 有关详细信息,请参阅“[管理分支的自动删除](/github/administering-a-repository/managing-the-automatic-deletion-of-branches)”。
The repository may be configured so that the head branch for a pull request is automatically deleted when you merge a pull request. For more information, see "[Managing the automatic deletion of branches](/github/administering-a-repository/managing-the-automatic-deletion-of-branches)."
{% note %}
注意:{% data reusables.pull_requests.retargeted-on-branch-deletion %}有关详细信息,请参阅“[关于分支](/github/collaborating-with-issues-and-pull-requests/about-branches#working-with-branches)”。
**Note:** {% data reusables.pull_requests.retargeted-on-branch-deletion %}
For more information, see "[About branches](/github/collaborating-with-issues-and-pull-requests/about-branches#working-with-branches)."
{% endnote %}
拉取请求可通过 [`--no-ff` 选项](https://git-scm.com/docs/git-merge#_fast_forward_merge) 进行合并,但[其提交已压缩或变基的拉取请求](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges)除外,这些拉取请求通过快进选项进行合并。
Pull requests are merged using [the `--no-ff` option](https://git-scm.com/docs/git-merge#_fast_forward_merge), except for [pull requests with squashed or rebased commits](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges), which are merged using the fast-forward option.
{% data reusables.pull_requests.close-issues-using-keywords %}
如果决定不想让主题分支中的更改合并到上游分支,可以[关闭拉取请求](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/closing-a-pull-request)而不合并。
If you decide you don't want the changes in a topic branch to be merged to the upstream branch, you can [close the pull request](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/closing-a-pull-request) without merging.
## 合并拉取请求
## Merging a pull request
{% webui %}
{% data reusables.repositories.sidebar-pr %}
2. 在“Pull Requests拉取请求”列表中单击要合并的拉取请求。
3. 根据对仓库启用的合并选项,您可以:
- 单击“合并拉取请求”,[将所有提交合并到基分支中](/articles/about-pull-request-merges/)。 如果未显示“合并拉取请求”选项,则单击合并下拉菜单,然后选择“创建合并提交” 。
2. In the "Pull Requests" list, click the pull request you'd like to merge.
3. Depending on the merge options enabled for your repository, you can:
- [Merge all of the commits into the base branch](/articles/about-pull-request-merges/) by clicking **Merge pull request**. If the **Merge pull request** option is not shown, then click the merge drop down menu and select **Create a merge commit**.
![merge-pull-request-button](/assets/images/help/pull_requests/pullrequest-mergebutton.png)
- 单击合并下拉菜单,选择“压缩并合并”,然后单击“压缩并合并”按钮,[将多个提交压缩为一个提交](/articles/about-pull-request-merges/#squash-and-merge-your-pull-request-commits) 。
- [Squash the commits into one commit](/articles/about-pull-request-merges/#squash-and-merge-your-pull-request-commits) by clicking the merge drop down menu, selecting **Squash and merge** and then clicking the **Squash and merge** button.
![click-squash-and-merge-button](/assets/images/help/pull_requests/select-squash-and-merge-from-drop-down-menu.png)
- 单击合并下拉菜单,选择“变基并合并”,然后单击“变基并合并”按钮,[将多个提交变基为一个基分支](/articles/about-pull-request-merges/#rebase-and-merge-your-pull-request-commits) 。
- [Rebase the commits individually onto the base branch](/articles/about-pull-request-merges/#rebase-and-merge-your-pull-request-commits) by clicking the merge drop down menu, selecting **Rebase and merge** and then clicking the **Rebase and merge** button.
![select-rebase-and-merge-from-drop-down-menu](/assets/images/help/pull_requests/select-rebase-and-merge-from-drop-down-menu.png)
{% note %}
注意:变基并合并始终会更新提交者信息,并创建新的提交 SHA。 有关详细信息,请参阅“[关于拉取请求合并](/articles/about-pull-request-merges#rebase-and-merge-your-pull-request-commits)”。
**Note:** Rebase and merge will always update the committer information and create new commit SHAs. For more information, see "[About pull request merges](/articles/about-pull-request-merges#rebase-and-merge-your-pull-request-commits)."
{% endnote %}
4. 如有提示,输入提交消息,或接受默认消息。
4. If prompted, type a commit message, or accept the default message.
{% data reusables.pull_requests.default-commit-message-squash-merge %} ![提交消息字段](/assets/images/help/pull_requests/merge_box/pullrequest-commitmessage.png)
{% data reusables.pull_requests.default-commit-message-squash-merge %}
![Commit message field](/assets/images/help/pull_requests/merge_box/pullrequest-commitmessage.png)
{% data reusables.files.choose-commit-email %}
{% note %}
注意:电子邮件选择器不可用于变基合并(无法创建合并提交)或压缩合并(将创建拉取请求的用户计为压缩提交的作者)。
**Note:** The email selector is not available for rebase merges, which do not create a merge commit{% ifversion squash-merge-email %}. For squash merges, the email selector is only shown if you are the pull request author and you have more than one email address associated with your account.{% else %}, or for squash merges, which credit the user who created the pull request as the author of the squashed commit.{% endif %}
{% endnote %}
6. 单击“确认合并”、“确认压缩并合并”,或“确认变基并合并” 。
6. (可选)[删除分支](/articles/deleting-unused-branches)。 这有助于仓库的分支列表保持整洁。
6. Click **Confirm merge**, **Confirm squash and merge**, or **Confirm rebase and merge**.
6. Optionally, [delete the branch](/articles/deleting-unused-branches). This keeps the list of branches in your repository tidy.
{% endwebui %}
@ -84,15 +80,15 @@ ms.locfileid: '145129632'
{% data reusables.cli.cli-learn-more %}
要合并拉取请求,请使用 `gh pr merge` 子命令。 将 `pull-request` 替换为拉取请求的数字、URL 或主分支。
To merge a pull request, use the `gh pr merge` subcommand. Replace `pull-request` with the number, URL, or head branch of the pull request.
```shell
gh pr merge <em>pull-request</em>
```
按照交互式提示完成合并。 有关可以选择的合并方法的详细信息,请参阅“[关于拉取请求合并](/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges)”。
Follow the interactive prompts to complete the merge. For more information about the merge methods that you can choose, see "[About pull request merges](/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges)."
或者,您可以使用标志跳过交互式提示。 例如,此命令会将提交压缩为带有提交消息“我的压缩提交”的单个提交,将压缩的提交合并到基本分支,然后删除本地和远程分支。
Alternatively, you can use flags to skip the interactive prompts. For example, this command will squash the commits into a single commit with the commit message "my squash commit", merge the squashed commit into the base branch, and then delete the local and remote branch.
```shell
gh pr merge 523 --squash --body "my squash commit" --delete-branch
@ -100,9 +96,9 @@ gh pr merge 523 --squash --body "my squash commit" --delete-branch
{% endcli %}
## 延伸阅读
## Further reading
- [还原拉取请求](/articles/reverting-a-pull-request)
- 使用 {% data variables.product.prodname_desktop %} [同步分支](/desktop/guides/contributing-to-projects/syncing-your-branch/)
- [关于拉取请求合并](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges)
- “[解决合并冲突](/github/collaborating-with-pull-requests/addressing-merge-conflicts)”
- "[Reverting a pull request](/articles/reverting-a-pull-request)"
- "[Syncing your branch](/desktop/guides/contributing-to-projects/syncing-your-branch/)" using {% data variables.product.prodname_desktop %}
- "[About pull request merges](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges)"
- "[Addressing merge conflicts](/github/collaborating-with-pull-requests/addressing-merge-conflicts)"

Просмотреть файл

@ -0,0 +1,123 @@
---
title: GitHub 社区行为准则
redirect_from:
- /articles/github-community-forum-code-of-conduct
- /github/site-policy/github-community-forum-code-of-conduct
- /github/site-policy/acceptable-use-policies/github-community-forum-code-of-conduct
- /site-policy/github-terms/github-community-forum-code-of-conduct
versions:
fpt: '*'
topics:
- Policy
- Legal
ms.openlocfilehash: 72b487e302242e4809cd267dc10e7041e7e21d8d
ms.sourcegitcommit: d298d354a4585e6c154f2a8428aebb214d49e2a1
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/07/2022
ms.locfileid: '147858666'
---
## 概述和宗旨
全球数以百万计的开发人员在 GitHub 上托管了数百万个项目,包括开源和闭源项目。 我们很幸运能够每天促进开发人员社区的协作,这是我们很重视的责任。 我们很高兴有机会一起让这个社区成为我们值得骄傲的地方。
GitHub 社区由 GitHub Discussions 提供支持,旨在成为推动协作、支持和集思广益的地方。 这是一个文明荟萃之地,在这里,您可以与其他用户联系、学习新技能、分享反馈和想法、寻找您的 GitHub 项目所需的所有支持。 参与 GitHub 社区,即表示您同意遵守适用于 GitHub.com 的[服务条款](/github/site-policy/github-terms-of-service/)以及 [GitHub 可接受使用政策](/github/site-policy/github-acceptable-use-policies)以及本 GitHub 社区特定的行为准则。
我们希望通过本行为准则,帮助您了解如何在 GitHub 社区中完美协作、版主的职能以及哪些类型的行为或内容可能导致暂停或永久性终止社区参与。 我们将调查任何滥用举报,并且可能会审核 GitHub 社区内我们确定违反了 GitHub 服务条款或本行为准则的公共内容。
我们多样化的用户群带来了不同的观点、想法和经验从上周刚创建第一个“Hello World”项目的初学者到世界上最知名的软件开发人员涵盖各种各样的人群。 我们致力于将 GitHub 营造成一个兼容并蓄的环境,让我们社区的参与者可以带来不同的声音和观点,同时维护一个让开发人员可以出色完成工作的安全环境。
## 承诺
为了营造一个开放和包容的环境我们作为参与者和维护者在此承诺GitHub 社区不歧视任何参与者,不论他们的年龄、身材、能力、种族、性别认同和表达、经验水平、国籍、外貌、民族、宗教或性认同和性取向如何。
## 标准
尊重 GitHub 社区。 论坛是一种共享资源,人们在这里通过不断对话来分享技能、知识和兴趣的地方。
以下规则并非硬性规定,仅用于帮助我们社区的人为判断。 我们使用这些准则为文明的公众讨论提供一个干净光明的环境。
### *维持强大社区的最佳做法*
GitHub 社区的主要目的是协作处理软件项目。 我们致力于维持一个用户能够自由表达意见并对彼此想法(包括技术和其他方面)提出挑战的社区。 同时,重要的是用户要保持尊重,并为其他人留出公开贡献的空间。 为了营造一个安全和富有成效的环境,我们鼓励社区成员参考这些准则,以了解如何在我们的平台上进行互动。 作为 GitHub 社区的重要成员,您可以在下面找到一些有关如何成功互动的建议。
- 以体贴和尊重的方式参与。
- **热情和开放** - 每天都有新用户加入我们的社区。 有些是成熟的开发人员,而另一些则刚刚入门。 请对有其他想法和经验水平的用户持开放态度。 善于接纳其他人的意见,友善对待新的协作者和刚入门的协作者。
- **尊重他人** - 在协作环境中工作难免会发生分歧。 但请记住,您的批评要对事不对人。 分享深思熟虑的建设性批评,并对与您互动的人保持礼貌。 如果您无法以尊重的方式参与,请考虑做出一些让步或使用我们的一些缓和工具来缓解紧张的氛围。
- **富有同情心** - GitHub 是一个全球性社区,社区中的用户背景各异,他们的观点也各不相同,其中许多人的背景和观点可能与您不同。 试着设身处地为他人着想,在对他们说话之前,先了解他们的感受。 尽最大努力帮助使 GitHub 成为一个任何人都能放心地作出贡献、参与讨论和分享不同想法的社区。
- 以积极和建设性的方式参与。
- **改善讨论。** 请始终努力以某种方式改善讨论(哪怕是极小的改善),帮助我们将论坛打造成优质的讨论场所。 如果您不确定自己的帖子会给对话带来什么影响,请斟酌您要表达的内容,三思而后行。
论坛讨论的主题对我们非常重要,我们希望您也重视这些主题。 即使您不同意其中的某些内容,但请尊重主题和讨论主题的人。
- **明确并专注于主题。** GitHub 社区用于协作、分享想法和帮助彼此完成工作。 脱离主题的评论对于完成工作和取得成效是一种干扰(有时可能受欢迎,但这种情况很少)。 紧扣主题有助于产生积极和富有成效的讨论。
这也适用于分享链接。 在 GitHub 社区讨论中分享任何链接均应以提供相关和适当的信息为目的。 不能只是为某个站点吸引流量或关注而发布链接。 链接应始终附有对链接内容和目的的充分说明。 发布不具备富有价值的相关背景信息的链接,特别是未经请求提供这种链接,可能会被视作广告或带有更具恶意的目的。
- **谨慎分享。** 要求他人提供反馈或协作处理项目时,请只分享有价值的相关资源以提供背景信息。 不要发布对讨论无价值的链接,不要在其他用户的帖子中主动发布指向您自己项目或站点的链接。
此外,请勿分享敏感信息。 这包括您自己的电子邮件地址。 我们不允许在 GitHub 社区中分享此类信息,因为它可能会给发帖者和其他用户带来安全和隐私风险。 如果要邀请其他 GitHub 用户协作处理项目或与您合作,请分享指向您要处理的项目所在存储库的链接。 通过分享项目存储库的链接,并简要说明您的项目以及您要寻求什么类型的帮助或反馈,就可以邀请他人通过议题或拉取请求与您协作,而不必分享您的私人信息。 还可以将其他人添加为项目存储库的外部协作者,给他们特殊权限以便帮助您开发项目。
- **井然有序。** 尽可能做到物归其位,以便我们减少整理时间,将更多的时间花在讨论上。 因此:
- 不要在错误的类别中开始讨论。
- 不要在多个讨论中交叉发布同样的内容。
- 不要发布无意义回复。
- 除非您有新的相关信息要分享,否则不要贸然发帖。
- 不要中途转换讨论。
使用赞成按钮,而不要发布“+1”或“同意”。 不要将现有讨论带到完全不同的方向,这种情况应该开启一个新讨论。
- 让自己值得信赖。
- **保持真诚。** 不要有意分享错误信息或故意误导 GitHub 社区的其他参与者。 如果您不知道某人问题的答案,但仍想提供帮助,您可以尝试帮助他们研究问题或寻找资源。 GitHub 工作人员也活跃在 GitHub 社区中,因此如果您不确定答案,版主或许能够提供帮助。
### *不允许的情形*
GitHub 的[可接受使用政策](/site-policy/acceptable-use-policies/github-acceptable-use-policies)是 GitHub [服务条款](/github/site-policy/github-terms-of-service/)的一部分,为 GitHub 上不允许的情形设定了基线。 由于 GitHub 社区在 GitHub.com 上,因此这些条款和限制适用于 GitHub 社区,包括以下限制:
- **13 岁以下的任何人。** 如果您是未满 13 周岁的儿童,则您不得在 GitHub 上拥有帐户。 GitHub 不会有意收集未满 13 周岁儿童的信息,也没有专门为他们定制任何内容。 如果我们得知或有理由怀疑您是 13 岁以下的用户,很遗憾,我们不得不关闭您的 GitHub.com 帐户。 我们并不想阻止您学习编程,但这是规则。 有关帐户终止的信息,请参阅我们的[服务条款](/github/site-policy/github-terms-of-service/)。
- **在帐户被限制后创建新帐户。** GitHub 的[服务条款](/github/site-policy/github-terms-of-service/)规定,“一个人或法人实体最多只能保有一个免费帐户”。 为查询 GitHub 中被标记或暂停的帐户而创建的其他免费帐户将被删除。
- **在职业场合中会被认为不适当的其他行为。** GitHub 社区是一个专业环境,应按专业环境来对待它。
- **违反服务条款。** 如果您的 GitHub.com 帐户被发现违反[服务条款](/github/site-policy/github-terms-of-service/),我们将不得不关闭您的帐户。
## 执行
### GitHub 社区参与者可以做什么
- **发现问题请举报。** 版主拥有特殊权限;他们对本 GitHub 社区负责。 但这也是你们的责任。 在您的帮助下,版主可以成为社区的推动者,而不仅仅是“门卫”或“警察”。
发现不良行为时,请勿回复。 回复会增加不良行为的存在感,浪费您的精力,也浪费大家的时间。 您可以向 GitHub 报告不良用户或不良内容。 有关详细信息,请参阅“[报告滥用或垃圾邮件](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)”。
### 我们的职责
针对不当行为或内容,我们可能会采取各种措施。 它通常取决于特定案例的确切情况。 我们知道,有时人们可能会出于各种原因而去说或去做一些不适当的事情。 也许他们并未意识到自己的言论会被如何解读。 或者他们只是想让自己的情绪得到宣泄。 当然,有时候,有些人只是想散发垃圾信息或存心捣乱。
每种情况都需要采用不同的方法,因此我们会努力调整对策,以满足具体情况的需要。 我们将逐案审查每种情况。 在每个案例中,我们都会安排一个多元化的团队,调查内容及相关事实,并以本行为准则为决策指导,采取适当的措施。
为响应标记或滥用举报,我们可能采取的措施包括但不限于:
- 删除内容
- 屏蔽内容
- GitHub 帐户暂停
- GitHub 帐户终止
GitHub 社区版主如果不真诚地遵守或执行行为准则,可能面临 GitHub 社区其他领导成员决定的临时或永久性处罚。
## 联系 GitHub 工作人员
如果出于任何原因要私下联系 GitHub 社区的 GitHub 工作人员、社区管理员或版主,您可以使用我们的[支持联系表](https://support.github.com/contact?tags=docs-community-support)。 强烈建议不要通过未经请求的提及或 ping 或者通过 GitHub 社区或支持联系表以外的渠道联系任何 GitHub 工作人员,否则可能被视为违反我们禁止骚扰的规定。
让我们共同努力,互相尊重并珍惜每个人的时间,使 GitHub 社区成为一个人们可以安心参与的环境。
## 法律声明
确实,法律条文枯燥乏味,但是我们必须保护自己,并进一步保护您和您的数据,免受不友好人士的侵害。 我们的[服务条款](/github/site-policy/github-terms-of-service/)(包括我们的[可接受使用政策](/github/site-policy/github-acceptable-use-policies))和[隐私声明](/github/site-policy/github-privacy-statement/)阐述了您(和我们)在内容、隐私和法律方面的行为和权利。 要使用此服务,您必须同意遵守我们的[服务条款](/github/site-policy/github-terms-of-service/)、[GitHub 可接受使用政策](/github/site-policy/github-acceptable-use-policies)和[隐私声明](/github/site-policy/github-privacy-statement/)。
本行为准则不修改我们的[服务条款](/github/site-policy/github-terms-of-service/) - 包括我们的[可接受使用政策](/github/site-policy/github-acceptable-use-policies)),也不预期成为一个完整的列表。 针对非法、冒犯、威胁、诽谤、诬蔑、色情、淫秽或其他令人反感行为或者违反任何一方知识产权或我们服务条款的活动GitHub 保留根据[服务条款](/github/site-policy/github-terms-of-service/)删除或限制任何内容或帐户的完全酌处权。 本行为准则说明了我们将在哪些情况下行使该酌处权。
### 数据保留和数据删除
如果您是 GitHub 的用户,您可以通过[编辑您的用户个人资料](https://github.com/settings/profile)或联系 [GitHub 支持](https://support.github.com/contact)来访问、更新、更改或删除您的基本用户个人资料信息。 我们将根据需要保留并使用您的信息,以履行我们的法律义务、解决争议和执行我们的协议,但是除非法律要求,否则我们将在您请求后 90 天内(在合理时间内)删除您的完整个人资料。 有关详细信息,请参阅 [GitHub隐私声明](/github/site-policy/github-privacy-statement)。

Просмотреть файл

@ -8,17 +8,14 @@ versions:
topics:
- Policy
- Legal
ms.openlocfilehash: eab72dc5769e26fd5de12865e29404e7271d4557
ms.sourcegitcommit: 93b306112b5cd5ce482d468a25c9961ad02f87ac
ms.openlocfilehash: 083bccdf0b4baf040d27bf4078c391001b60f206
ms.sourcegitcommit: d298d354a4585e6c154f2a8428aebb214d49e2a1
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 08/29/2022
ms.locfileid: '147099202'
ms.lasthandoff: 09/07/2022
ms.locfileid: '147858644'
---
_这些条款适用于 1) 已接受《公司服务条款》的 GitHub.com非企业客户以及 2) 在 2021 年 1 月 4 日之前已获得服务许可的企业客户。在此日期之后购买产品或服务的企业客户转至 https://github.com/enterprise-legal 以查看现行条款。_
感谢您选择 GitHub 满足您公司的业务需求。 请仔细阅读本协议,因为它管辖对产品(定义如下)的使用,除非 GITHUB 已出于该目的与客户签订了单独的书面协议。
单击“I AGREE”我同意或类似按钮或者使用产品即表示客户接受本协议的所有条款和条件。 如果客户代表公司或其他法律实体签订本协议,则表示其拥有让公司或其他法律实体受本协议约束的法律权限。
这些条款适用于已执行引用《公司服务条款》的协议的 GitHub.com 客户。所有其他企业或机构客户都会定向到 [github.com/customer-terms](https://github.com/customer-terms) 以了解当前条款。
## GitHub 公司服务条款
版本生效日期2020 年 11 月 16 日

Просмотреть файл

@ -12,12 +12,12 @@ versions:
topics:
- Policy
- Legal
ms.openlocfilehash: 31b10a4119a78f8c98767f185a6ba65bbbbc012a
ms.sourcegitcommit: 93b306112b5cd5ce482d468a25c9961ad02f87ac
ms.openlocfilehash: 8797f3c85a5db4be9d00976619fd7adde470cb93
ms.sourcegitcommit: d298d354a4585e6c154f2a8428aebb214d49e2a1
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 08/29/2022
ms.locfileid: '147099210'
ms.lasthandoff: 09/07/2022
ms.locfileid: '147858643'
---
版本生效日期2021 年 8 月 10 日
@ -26,9 +26,9 @@ ms.locfileid: '147099210'
使用附加产品和功能,即表示您也同意下面列出的适用的 GitHub 附加产品和功能条款。 违反这些 GitHub 附加产品和功能条款即为违反协议。 此处未定义的术语与协议中规定的含义相同。
**对于企业用户**
- **GitHub Enterprise Cloud** 用户可以访问以下附加产品和功能Actions、Advanced Security、Advisory Database、Codespaces、Dependabot Preview、GitHub Enterprise Importer、Learning Lab、Packages 和 Pages。
- GitHub Enterprise Cloud 用户可以访问以下附加产品和功能Actions、Advanced Security、Advisory Database、Codespaces、Dependabot Preview、GitHub Enterprise Importer、Packages 和 Pages。
- **GitHub Enterprise Server** 用户可以访问以下附加产品和功能Actions、Advanced Security、Advisory Database、Connect、Dependabot Preview、GitHub Enterprise Importer、Learning Lab、Packages、Pages 和 SQL Server Images。
- GitHub Enterprise Server 用户可以访问以下附加产品和功能Actions、Advanced Security、Advisory Database、Connect、Dependabot Preview、GitHub Enterprise Importer、Packages、Pages 和 SQL Server Images。
- **GitHub AE** 用户可以访问以下附加产品和功能Actions、Advanced Security、Advisory Database、Connect、Dependabot Preview、GitHub Enterprise Importer、Packages 和 Pages。
@ -111,19 +111,6 @@ GitHub Copilot (i) 可以收集你的代码的片段,以及 (ii) 通过绑定
## GitHub Enterprise Importer
Importer 是将数据从其他源导出到 GitHub 平台的框架。 Importer“按原样”提供。
## Learning Lab
GitHub Learning Lab 提供已内置于 GitHub 的免费交互式课程,并提供即时自动反馈和帮助。
课程材料。 GitHub 对其提供的课程材料具备所有权,并授予您在全球范围内有效的非独占、有限期、不可转让、免版税的许可,以便您出于与 Learning Lab 使用相关的内部业务目的而复制、维护、使用和运行这些课程材料。
开源许可证条款可能适用于课程材料中提供的源代码部分。
您对您所创建的课程材料具备所有权,并授予 GitHub 在全球范围内有效的非独占、有限期、不可转让、免版税的许可,以便其复制、维护、使用、托管和运行这些课程材料。
您对 GitHub 课程材料的使用以及对自己课程材料的创建和存储并不构成对任一方各自知识产权的共同所有权。
对个人数据的使用受 [GitHub 隐私声明](/github/site-policy/github-privacy-statement)管理。
## npm
npm 是一种软件包托管服务,允许您以私有方式或公开方式托管软件包,并将软件包用作项目中的依赖项。 npm 是 JavaScript 生态系统的记录注册表。 npm 公共注册表可以免费使用,但客户如果想要发布私有包或使用团队管理私有包,则需收取费用。 [npm 文档](https://docs.npmjs.com/)包含有关帐户类型限制以及如何管理[私有包](https://docs.npmjs.com/about-private-packages)和[组织](https://docs.npmjs.com/organizations)的详细信息。 [开源条款](https://www.npmjs.com/policies/open-source-terms)概述了可接受的 npm 注册表使用。 npm [solo](https://www.npmjs.com/policies/solo-plan) 和 [org](https://www.npmjs.com/policies/orgs-plan) 计划都有补充条款。 npm [使用条款](https://www.npmjs.com/policies/terms)适用于您对 npm 的使用。

Просмотреть файл

@ -12,12 +12,12 @@ versions:
topics:
- Policy
- Legal
ms.openlocfilehash: e2e18667095ef8d9c30dc3d10384ede21f115456
ms.sourcegitcommit: 93b306112b5cd5ce482d468a25c9961ad02f87ac
ms.openlocfilehash: e483abe3bffda4cdca5ee767b8e06ce4093f074a
ms.sourcegitcommit: d298d354a4585e6c154f2a8428aebb214d49e2a1
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 08/29/2022
ms.locfileid: '144556462'
ms.lasthandoff: 09/07/2022
ms.locfileid: '147858629'
---
GitHub.com、GitHub Enterprise Server 以及您上传至其中任一产品的信息都需遵守贸易管制法规包括美国出口管理条例Export Administration RegulationsEAR

Просмотреть файл

@ -10,12 +10,12 @@ versions:
topics:
- Policy
- Legal
ms.openlocfilehash: ee7ad9a57437858e33a51bedf6b03fcf48606079
ms.sourcegitcommit: 93b306112b5cd5ce482d468a25c9961ad02f87ac
ms.openlocfilehash: 991c060af22a9161e026aa396037a1d52e66fcea
ms.sourcegitcommit: d298d354a4585e6c154f2a8428aebb214d49e2a1
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 08/29/2022
ms.locfileid: '144556515'
ms.lasthandoff: 09/07/2022
ms.locfileid: '147858615'
---
您是否是一名执法官员,所开展的调查可能涉及到 GitHub 上托管的用户内容?
或者您是一位非常注重隐私的人士,希望了解我们在哪些情况下与执法机构分享哪些信息。
@ -215,7 +215,7 @@ c/o Corporation Service Company
Sacramento, CA 95833-3505
```
抄送件可通过电子邮件发送至 legal@support.github.com。
抄送件可通过电子邮件发送至 legal-support@github.com
请尽可能具体描述请求并缩小请求范围,包含以下信息:

Просмотреть файл

@ -13,14 +13,14 @@ versions:
topics:
- Policy
- Legal
ms.openlocfilehash: c94f3c4bc3eb2bd056c074309fc1a07e695b9cc5
ms.sourcegitcommit: 93b306112b5cd5ce482d468a25c9961ad02f87ac
ms.openlocfilehash: d8115f14884bf80b64a1f563b1c08ce37691a607
ms.sourcegitcommit: d298d354a4585e6c154f2a8428aebb214d49e2a1
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 08/29/2022
ms.locfileid: '147099186'
ms.lasthandoff: 09/07/2022
ms.locfileid: '147858658'
---
生效日期2022 年 5 月 31 日
生效日期2022 年 9 月 1 日
感谢您将源代码、项目和个人数据交托给 GitHub Inc. 或 GitHub B.V. “GitHub”、“我们”或“我们的”。 本隐私声明解释了我们在收集、使用和披露您的数据方面的做法,包括我们收集和处理的与我们的网站以及 GitHub 提供的任何应用程序、软件、产品和服务(包括任何 Beta 预览版,统称为“服务”)相关的任何个人数据。
@ -30,7 +30,7 @@ ms.locfileid: '147099186'
## 精简版
我们按照本隐私声明所述的方式使用您的个人信息。 我们为全球所有国籍或地区的所有用户提供同等的高标准隐私保护,无论他们位于何处、居住在何处或他们拥有哪国国籍
我们按照本隐私声明所述的方式使用您的个人信息。 无论您位于何处、居住在何处或拥有哪国国籍,在使用 GitHub 的产品时,都将作为我们的全球用户获得同等的高标准隐私保护
要查看我们针对加州居民的隐私声明,请访问 [GitHub 关于《加州消费者隐私法案》的声明](#githubs-notice-to-california-residents)或向下滚动。
@ -39,12 +39,12 @@ ms.locfileid: '147099186'
| 节 | 包含哪些内容? |
|---|---|
| [谁负责处理您的信息](#who-is-responsible-for-the-processing-of-your-information) | 除有限的例外情况外GitHub 是负责处理您与网站或服务相关的个人数据的控制者和实体。 |
| [谁负责处理您的信息](#who-is-responsible-for-the-processing-of-your-information) | 除有限的例外情况外,只要您在北美,GitHub 是负责处理您与网站或服务相关的个人数据的控制者和实体。 对于北美以外的个人,数据控制者是 GitHub B.V.。 |
| [GitHub 收集哪些信息](#what-information-github-collects) | GitHub 从您这里直接收集关于您的注册、付款、交易和用户个人资料的信息。 我们还会自动从您这里收集您的使用信息、Cookie 和设备信息,必要情况下会征求您的同意。 GitHub 还可能从第三方那里收集个人数据。 我们只会从您这里收集最低限度的必需个人数据,除非您选择提供更多数据。|
| [GitHub 如何使用您的信息](#how-github-uses-your-information) | 本节说明我们使用您的信息的方式,包括为了向您提供服务、与您通信、出于安全性与合规性目的,以及为了改进我们的服务或者开发我们网站或服务的新特性和功能而使用您的信息。 我们还将介绍我们根据法律要求处理您的信息时的合法基础。 |
| [我们如何共享我们收集的信息](#how-we-share-the-information-we-collect) | 在以下任一情况下,我们可能会与第三方共享您的信息:在您同意的情况下共享信息;与我们的服务提供商共享信息;出于安全目的而共享信息;为履行我们的法定义务而共享信息;企业实体或业务部门的控制权出现变更或被出售时共享信息。 我们不会出售您的个人信息,也不会在 GitHub 上放置广告。 |
| [您对我们处理您的个人数据的选择](#your-choices-regarding-our-processing-of-your-personal-data) | 我们为您提供访问、更改或删除您的个人信息的途径。 |
| [Cookie](#cookies) | 我们仅使用绝对必要的 Cookie 来提供、保护和改进我们的网站或服务,或开发我们网站或服务的新特性和功能。 我们提供了一个页面来高度透明地说明这一点。 我们不会向第三方分析服务发送任何信息。 |
| [Cookie](#cookies) | 除在我们的企业营销网页上使用 Cookie 外,我们仅使用绝对必要的 Cookie 来提供、保护和改进我们的网站或服务,或开发我们网站或服务的新特性和功能。<br><br>如下所述,我们可能会在我们网站的某些页面上使用非必要的 Cookie 来支持我们的企业营销工作并向企业客户推销我们的产品和服务,例如在 resources.github.com统称为“企业营销页面”上。<br><br>我们提供了一个[页面](https://github.com/privacy/cookies),用于将 Cookie 的所有使用变得非常透明。 |
| [GitHub 如何保护您的信息](#how-github-secures-your-information) | 我们采用所有合理和必要的措施来保护您在 GitHub 上的个人数据的机密性、真实性和可用性,以及保护我们服务器的恢复能力。 |
| [通信偏好](#communication-preferences) | 我们通过电子邮件与您通信。 您可以通过帐户设置或联系我们来控制我们与您联系的方式。 |
| [解决投诉](#resolving-complaints) | 虽然这种情况极少发生,但如果我们无法尽快和充分地解决隐私问题,我们将提供解决争议的途径。 |
@ -117,7 +117,7 @@ ms.locfileid: '147099186'
公开可用的资源。 我们还可能从 GitHub 存储库等公开来源获取信息。
您被要求提供个人数据时,您可以拒绝。 您可以使用 Web 浏览器或操作系统控件来阻止某些类型的自动数据收集。 但是,如果您选择不提供或不允许某些服务或功能所需的信息,则这些服务或功能可能无法使用或无法完全发挥作用。
当要求提供个人数据时,您可以拒绝。 您可以使用 Web 浏览器或操作系统控件来阻止某些类型的自动数据收集。 但是,如果您选择不提供或不允许某些服务或功能所需的信息,则这些服务或功能可能无法使用或无法完全发挥作用。
## GitHub 如何使用您的信息
我们可能会使用您的信息来提供、治理、分析、管理和运营我们的服务。 例如,我们会将您的信息用于以下目的:
@ -127,13 +127,14 @@ ms.locfileid: '147099186'
- 通过了解您和您的偏好来个性化我们的服务,以增强您使用我们服务的体验和享受。
- 提供客户支持并回答您的问题。
- 向您提供有关新服务、功能、优惠、促销和其他有关我们服务的信息的促销通信。
- 个性化您收到的与企业营销页面相关的企业商业广告、促销宣传或营销并衡量效果。
- 向您发送信息,包括确认、发票、技术通知、更新、安全警报、支持和管理消息。
我们将出于这些目的从不同来源收集的数据结合起来,为您提供更加无缝、一致和个性化的体验。
## 我们如何共享我们收集的信息
我们会在您同意或者为完成您的交易或提供您请求或授权的服务所需的情况下共享个人数据。 此外,出于以下商业目的,我们可能会与下述类型的第三方共享上述每个类别的您的个人数据:
我们会在您同意或者为完成您的交易或提供您请求或授权的服务所需的情况下共享以下所述的个人数据。 此外,出于以下商业目的,我们可能会与下述类型的第三方共享上述每个类别的您的个人数据:
### 公开信息
您可以选择通过我们的服务提供的选项来公开显示和共享您的姓名和/或用户名以及某些其他信息,例如您的个人资料、人口统计数据、内容和文件或地理位置数据。 如果您不希望公开您的电子邮件地址,即使在公共存储库中发布评论时也不公开,[您可以在您的用户个人资料中将您的电子邮件地址设置调整为不公开](https://github.com/settings/emails)。 您还应该[更新本地 Git 配置以使用私密电子邮件地址](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address)。 有关提交消息中的电子邮件地址的更多信息,请参阅[此处](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address)。
@ -141,7 +142,7 @@ ms.locfileid: '147099186'
请注意,如果您希望编译 GitHub 数据,则必须遵守我们的[服务条款](/site-policy/github-terms/github-terms-of-service)中关于信息使用和隐私的规定,并且您只能将您收集的任何面向公众开放的信息用于我们的用户允许的用途。 例如,如果 GitHub 用户将电子邮件地址设为面向公众开放以用于识别和归属的目的,则请勿使用该电子邮件地址向用户发送未经请求的电子邮件或将用户个人信息出售给招聘者、猎头和招聘网站等,或发送商业广告。 我们希望您采取合理的措施保护您从 GitHub 收集的信息,并及时回应来自 GitHub 或 GitHub 用户的投诉、删除请求和“请勿联系”请求。
### 第三方应用程序
我们会在您要求时与第三方享您的个人数据。 例如,如果您购买我们的市场上列出的应用程序,我们将共享您的用户名,以便该应用程序的开发人员为您提供服务。 此外,您在 GitHub 上执行的操作可能会指引我们共享您的个人数据。 例如,如果您加入某个组织,则您表明您愿意向该组织的所有者提供在该组织的访问日志中查看您的活动的权限。
我们会在您要求时与第三方享您的个人数据。 例如,如果您购买我们的市场上列出的应用程序,我们将共享您的用户名,以便该应用程序的开发人员为您提供服务。 此外,您在 GitHub 上执行的操作可能会指引我们共享您的个人数据。 例如,如果您加入某个组织,则您表明您愿意向该组织的所有者提供在该组织的访问日志中查看您的活动的权限。
您可以在您的帐户中启用或添加第三方应用程序(也称为“开发人员产品”)。 这些开发人员产品不是您使用 GitHub 的必要前提。 我们会在您要求时与此类第三方应用程序共享您的个人数据,但是,您应对您对第三方开发人员产品的使用以及您选择与其共享的个人数据的数量负责。 您可以查看我们的 [API 文档](/rest/reference/users),了解当您使用您的 GitHub 个人资料经身份验证进入开发人员产品时,会提供哪些信息。
@ -149,10 +150,10 @@ ms.locfileid: '147099186'
您可以通过在 GitHub 上执行相关操作来表明您愿意共享您的个人数据。 如果您与某个组织开展协作或成为某个组织的成员,则该组织的帐户所有者可能会收到您的个人数据。 当您接受加入某个组织的邀请时,您将会收到通知,告知您所有者可能会看到哪些类型的信息(有关更多信息,请参阅[关于组织成员身份](/github/setting-up-and-managing-your-github-user-account/about-organization-membership))。 关于帐户组织可能会如何处理您的个人数据以及您可以如何访问、更新、更改或删除存储在该帐户中的个人数据的更多详情,请联系帐户所有者。
### 服务提供商
我们与代表我们处理信息以提供或改进我们的服务的服务提供商共享您的个人数据。 例如,我们的服务提供商可能会执行支付处理、客户支持工单、网络数据传输、安全及其他类似服务。 GitHub 将在美国境内处理所有个人数据,但我们的服务提供商可能会在美国境外或欧盟处理数据。 服务提供商进行的此类处理将遵守适用法律,包括任何相关的传输机制。
我们与代表我们处理信息以提供或改进我们的服务的服务提供商共享您的个人数据。 例如,我们的服务提供商可能会执行支付处理、客户支持工单、网络数据传输、Web 分析、营销运作、安全及其他类似服务。 GitHub 将在美国境内处理所有个人数据,但我们的服务提供商可能会在美国境外或欧盟处理数据。 服务提供商进行的此类处理将遵守适用法律,包括任何相关的传输机制。
### 关联公司
我们允许跨我们的子公司、关联公司和相关公司访问个人数据,例如在我们共享通用数据系统或需要访问以运营和提供服务的地方
我们在以下情况下允许跨我们的子公司、关联公司和相关公司访问个人数据,例如:我们共享通用数据系统、关联公司代表我们提供服务或需要访问以运营和提供服务
### 针对安全目的
如果我们认为有必要,我们将披露个人数据,以:
@ -178,7 +179,7 @@ ms.locfileid: '147099186'
## 您对我们处理您的个人数据的选择
我们提供有关我们收集的关于您的个人数据的选择。 您所做的选择将不适用于与您帐户下的组织相关联的任何个人数据。
访问、更正和删除。 如果您是 GitHub 用户,您可以通过[编辑您的用户个人资料](https://github.com/settings/profile)或者联系 [GitHub 支持](https://support.github.com/contact)或 [GitHub 高级支持](https://enterprise.githubsupport.com/hc/en-us)来访问、更新、更改或删除您的基本用户个人资料信息。 您可以通过限制您的个人资料中的信息、及时更新您的信息或者联系 [GitHub 支持](https://support.github.com/contact)或 [GitHub 高级支持](https://enterprise.githubsupport.com/hc/en-us)来控制我们能够收集您的哪些信息。
访问、更正和删除。 如果您是 GitHub 用户,您可以通过[编辑您的用户个人资料](https://github.com/settings/profile)或者联系 [GitHub 支持](https://support.github.com/contact)或 [GitHub 高级支持](https://enterprise.githubsupport.com/hc/en-us)来访问、更新、更改或删除您的基本用户个人资料信息。 您可以通过限制您的个人资料中的信息、及时更新您的信息、更改 Cookie 首选项或者联系 [GitHub 支持](https://support.github.com/contact)或 [GitHub 高级支持](https://enterprise.githubsupport.com/hc/en-us)来控制我们能够收集您的哪些信息。
我们会按照本隐私声明中的说明保留和使用您的信息,但除非法律要求,否则我们将在您提出请求后的 90 天内删除您的完整个人资料。 帐户删除后,某些数据(例如,在其他用户的存储库中提交的内容及在其他人的问题中发表的评论)将保留。 但是,我们会通过将您的个人数据(包括您的用户名和电子邮件地址)与幽灵用户相关联的方式,从问题、拉取请求和评论的作者字段中删除该等信息或对其进行去标识化处理。 也就是说,您通过 Git 提交设置提供的电子邮件地址将始终与您在 Git 系统中的提交相关联。 如果您选择将您的电子邮件地址设为不公开,则您还应该更新您的 Git 提交设置。 我们无法更改或删除 Git 提交历史记录中的数据,因为 Git 软件设计为保留记录,但我们允许您控制您在该记录中可以放入哪些信息。
@ -215,13 +216,65 @@ Git 版本控制系统设计为将许多操作与用户的电子邮件地址相
### Cookie 和跟踪技术
GitHub 使用 Cookie 来提供、保护和改进我们的服务或开发我们服务的新特性和功能。 例如,我们使用它们来让您保持登录状态、记住您的偏好、出于安全目的识别您的设备、编制统计报告以及为 GitHub 的未来发展提供信息。 在这种情况下,我们使用我们自己的 Cookie并且不使用任何第三方服务提供商。 如果您在您的浏览器或设备上禁用接受这些 Cookie 的权限,您将无法登录或使用我们的服务。 我们在 [GitHub 次级处理者和 Cookie](/github/site-policy/github-subprocessors-and-cookies#cookies-on-github) 页面上提供了关于 [GitHub 上的 Cookie](/github/site-policy/github-subprocessors-and-cookies) 的更多信息,其中阐述了我们设置哪些 Cookie、我们需要使用这些 Cookie 的原因,以及这些 Cookie 的有效期限。
GitHub 使用 Cookie 来提供、保护和改进我们的服务或开发我们服务的新特性和功能。 例如Cookie 可用于 (i) 让您保持登录状态 (ii) 记住您的偏好 (iii) 出于安全和欺诈目的标识您的设备,包括根据需要维护我们服务的完整性 (iv) 搜集统计报告 (v) 为 GitHub 未来的发展提供信息和见解。 我们提供了关于 [GitHub 上的 Cookie](https://github.com/privacy/cookies) 的更多信息,其中阐述了我们设置哪些 Cookie、我们需要使用这些 Cookie 的原因,以及这些 Cookie 的有效期限。
对于企业营销页面,我们还可能使用非必要的 Cookie 来 (i) 收集企业用户的兴趣和在线活动的相关信息以个性化体验,包括让用户看到或收到相关性更高的广告、内容、推荐和营销 (ii) 投放有针对性的广告和开展其他营销工作并衡量效果。 如果在企业营销页面上禁用非必要的 Cookie您看到的广告、内容和营销可能不太相关。
我们发送给用户的电子邮件中可能会包含像素标签,这是一种小型清晰图像,可告知我们您是否打开过电子邮件以及您的 IP 地址是什么。 我们使用该像素标签是为了更有针对性地向您发送电子邮件,并确保不会向您发送您不希望收到的电子邮件。
### DNT
Cookie 在您的浏览器或设备上保留的时长取决于它是“持久性”Cookie 还是“会话”Cookie。 会话 Cookie 只会在设备上保留到您停止浏览为止。 持久性 Cookie 会一直保留,直到它们过期或被删除。 适用于持久性 Cookie 的到期时间或保留期取决于 Cookie 收集的目的和使用的工具。 您可以按照此处所述删除 Cookie 数据。
#### 什么是 Cookie 和类似技术?
我们使用 Cookie 和类似技术(例如网络信标、本地存储和移动分析)来运营和提供服务。 在访问企业营销页面(如 resources.github.com这些 Cookie 和其他 Cookie如广告 ID可能会用于销售和营销目的。
Cookie 是浏览器在设备上存储的小型文本文件。 稍后当浏览器连接到同一网域中之前在设备上放置 Cookie 的网络服务器时,网站便可读取该 Cookie。 Cookie 中的文本包含一串数字和字母,可以唯一标识设备,也可以包含其他信息。 因此,在一段时间过后,浏览器每次连接到网络服务器时,该网络服务器都能识别该浏览器。
网络信标是包含在网站或电子邮件中的电子图像(也称为“单像素”或“透明 GIF”。 浏览器打开包含网络信标的网页或电子邮件时,会自动连接到托管图像的网络服务器(通常由第三方运营)。 这样,网络服务器便可记录有关设备的信息,并设置和读取它自己的 Cookie。 同样,我们网站上的第三方内容(例如嵌入式视频、插件或广告)会导致您的浏览器连接到托管该内容的第三方网络服务器。
移动设备上的应用访问和使用用于分析的移动标识符的方式与网站访问和使用 Cookie 的方式大致相同。 因此,在移动设备上访问企业营销页面(如 resources.github.com我们和我们的第三方分析和广告合作伙伴可以收集用于销售和营销目的的数据。
我们也可能使用所谓的“Flash Cookie”也称为“本地共享对象”或“LSO”来收集和存储与使用我们的服务有关的信息。 Flash Cookie 通常用于广告和视频。
#### 我们和我们的合作伙伴如何使用 Cookie 及类似技术?
GitHub 服务将 Cookie 及类似技术用于各种目的,包括存储您的偏好和设置、允许您登录、分析我们的服务的效果、跟踪您与服务的交互情况、开发推理、打击欺诈和履行其他合法目的。 其中一些 Cookie 和技术可能由第三方提供,包括服务提供商和广告合作伙伴。 例如,我们的分析和广告合作伙伴可能会在我们的服务中使用这些技术来收集您在一段时间在我们的服务中进行的在线活动的相关个人信息(例如您访问的页面、单击的链接以及类似的使用信息、标识符和设备信息),以用于包括投放有针对性的广告等各种目的。 GitHub 将在我们向企业客户推销产品和服务的页面上(例如在 resources.github.com 上)放置非必要的 Cookie。
我们和/或我们的合作伙伴也出于这些目的与第三方共享我们收集或推断的信息。
下表提供了有关我们如何使用不同类型 Cookie 的其他信息:
| 目的 | 说明 |
|:---|:---|
| 所需 Cookie | GitHub 使用所需的 Cookie 来执行基本的网站功能并提供服务。 例如Cookie 用于允许登录、保存语言首选项、提供购物车体验、提高性能、在网络服务器之间路由流量、检测屏幕大小、确定页面加载时间、改善用户体验以及用于受众调查。 我们的网站正常运行就需要这些 Cookie。 |
| 分析 | 我们允许第三方使用分析 Cookie 来了解您如何使用我们的网站,以便我们可以进行改进。 例如Cookie 用于收集有关您访问的页面以及完成一项任务所需的点击次数的信息。 我们还使用一些分析 Cookie 来投放个性化广告。 |
| 社交媒体 | GitHub 和第三方使用社交媒体 Cookie 根据您在 GitHub 网站上的社交媒体个人资料和活动向您展示广告和内容。 这可确保您在我们的网站和社交媒体上看到的广告和内容将更好地反映您的兴趣。 这也使第三方能够开发和改进他们的产品,他们可以在非 GitHub 拥有或运营的网站上使用这些产品。 |
| 广告 | 此外GitHub 和第三方可使用广告 Cookie 根据您已经看过的广告向您展示新广告。 Cookie 还会跟踪您点击了哪些广告或在点击广告后进行了哪些购买。 其目的是完成支付操作并向您展示更相关的广告。 例如Cookie 用于检测您何时点击广告,并根据您的社交媒体兴趣和网站浏览历史向您展示广告。 |
#### 您的 Cookie 选项和控制有哪些?
您有几个选项可禁用非必要的 Cookie
1. **专用于 GitHub 企业营销页面**
任何提供非必要 Cookie 的 GitHub 页面都会在页面的页脚中有一个指向 Cookie 设置的链接。 您可以随时通过单击该链接并更新设置来表达您的偏好。
一些用户还可以通过 Cookie 同意横幅管理非必要 Cookie包括接受、管理和拒绝所有非必要 Cookie 的选项。
2. **通用于所有网站**
您可以使用各种广泛提供的工具来控制您在网络上遇到的 Cookie。 例如:
- 如果浏览器发送[请勿跟踪](https://en.wikipedia.org/wiki/Do_Not_Track) (DNT) 信号GitHub 将不会设置非必要 Cookie也不会加载设置非必要 Cookie 的第三方资源。
- 许多浏览器提供 Cookie 控件,可限制您在线遇到的 Cookie 类型。 查看您的浏览器的文档以了解更多信息。
- 如果您启用旨在阻止跟踪的浏览器扩展(例如 [Privacy Badger](https://en.wikipedia.org/wiki/Privacy_Badger)),则可能会禁用网站或第三方设置的非必要 Cookie。
- 如果您启用旨在阻止恶意内容的浏览器扩展(例如 [uBlock Origin](https://en.wikipedia.org/wiki/UBlock_Origin)),则会禁用非必要 Cookie甚至会阻止设置非必要 Cookie 的内容。
- 广告控制。 我们的广告合作伙伴可能会加入可通过简单方式选择退出广告定位的协会,访问方式如下:
- 美国:[NAI](http://optout.networkadvertising.org) 和 [DAA](http://optout.aboutads.info/)
- 加拿大:[加拿大数字广告联盟](https://youradchoices.ca/)
- 欧洲:[欧洲数字广告联盟](http://www.youronlinechoices.com/)
这些选项特定于您使用的浏览器。 如果您从其他设备或浏览器访问我们的服务,请从这些系统执行以上操作,以确保您的选项适用于您使用这些系统时收集的数据。
“[禁止跟踪](https://www.eff.org/issues/do-not-track)”(DNT) 是一个隐私首选项,如果您不希望在线服务从第三方跟踪服务那里收集和共享有关您的在线活动的特定类型的信息,您可以在浏览器中设置该选项。 GitHub 回应浏览器 DNT 指示并遵守[关于回应 DNT 指示的 W3C 标准](https://www.w3.org/TR/tracking-dnt/)。 如果您希望通过设置浏览器来指示不希望被跟踪,请检查浏览器的文档,以了解如何启用该指示。 有一些优秀的应用程序会拦截在线跟踪,例如 [Privacy Badger](https://privacybadger.org/)。
## 个人数据的保留
我们会在必要时保留个人数据,以提供服务和完成您要求的事务、遵守我们的法律义务、解决争议、执行我们的协议以及用于其他合法的商业目的。 由于在不同服务的上下文中,不同数据类型的这些需求可能会有所不同,因此实际保留期可能会因用户期望或同意、数据敏感性、使用户能够删除数据的自动化控制的可用性,以及我们的法律或合同义务等标准而有很大差异。 例如,出于安全目的,我们可能会在必要时根据适用法律将您的个人数据保留更长时间。
@ -245,15 +298,22 @@ GitHub 在美国境内和境外处理个人数据,并依靠“标准合同条
### 解决投诉
如果您对 GitHub 处理您的个人数据的方式有疑虑,请立即告知我们。 我们希望能够帮助到您。 您可以通过填写[隐私联系表](https://support.github.com/contact/privacy)来联系我们。 您也可以直接发送电子邮件至 privacy@github.com 联系我们,并在标题行中标明“隐私问题”。 我们会及时做出答复,最晚不超过 45 天。
您也可以直接联系我们的数据保护官
您也可以在 github [at]dp-officer [dot] com 直接联系我们的数据保护官
| 我们的美国总部 | 我们的欧盟办事处 |
|---|---|
| GitHub 数据保护官 | GitHub BV |
| 88 Colin P. Kelly Jr. St. | Vijzelstraat 68-72 |
| San Francisco, CA 94107 | 1017 HL Amsterdam |
| 美国 | The Netherlands |
| **privacy@github.com** | **privacy@github.com** |
**如果您在北美:**<br>
GitHub 数据保护官<br>
88 Colin P. Kelly Jr. St.<br>
San Francisco, CA 94107<br>
United States<br>
**privacy@github.com**<br>
**如果您不在北美:**<br>
GitHub 数据保护官<br>
c/o DP Dock DPO Services GmbH,<br>
Attn: GitHub BV, Gut Projensdorf,<br>
24161 Altenholz, Germany<br>
github@dp-officer.com cc: **privacy [at] github [dot] com**<br>
CC: GitHub BV, Vijzelstraat 68-72, 1017 HL Amsterdam, The Netherlands
### 争议解决流程
@ -324,7 +384,7 @@ CCPA 为加州居民提供与其个人信息相关的某些权利。 要基于
您有权不因行使您的 CCPA 权利而遭受歧视。 我们不会因您行使 CCPA 权利而歧视您。
您可以以书面形式或通过授权委托书指定授权代理人来代表您提出请求,以行使您在 CCPA 下的权利。 在接受代理人的此类请求之前,我们将要求代理人提供您已授权其代表您行事的证明,并且我们可能需要您直接向我们验证您的身份。
此外,为了提供或删除特定的个人信息,我们需要在法律要求的确定性范围内验证您的身份。 我们将通过要求您从与您的帐户关联的电子邮件地址提交请求或要求您提供验证您的帐户所需的信息来验证您的请求。 [请注意,您可以对您的 GitHub 帐户使用双重身份验证](/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication)
此外,为了提供或删除特定的个人信息,我们需要在法律要求的确定性范围内验证您的身份。 我们将通过要求您从与您的帐户关联的电子邮件地址提交请求或要求您提供验证您的帐户所需的信息来验证您的请求。 [请注意,您可以对您的 GitHub 帐户使用双重身份验证](/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication)
最后,您有权在收集个人信息之时或之前收到有关我们的做法的通知。
此外,根据《加州民法典》第 1798.83 条(也称为《反客户信息披露法》),向与个人建立业务关系的企业提供个人信息以用于个人或家庭目的的加州居民(“加州客户”)可能会要求提供有关企业是否出于第三方直接营销目的向任何第三方披露个人信息的信息。 请注意,我们不会出于本法所定义的任何第三方的直接营销目的向任何第三方披露个人信息。

Просмотреть файл

@ -12,75 +12,30 @@ versions:
topics:
- Policy
- Legal
ms.openlocfilehash: b8072adbca2f5e42acd5dda3b8d213dd795c13be
ms.sourcegitcommit: 93b306112b5cd5ce482d468a25c9961ad02f87ac
ms.openlocfilehash: a7f017ec2243c015d93797b0117229fe9fdb528c
ms.sourcegitcommit: d298d354a4585e6c154f2a8428aebb214d49e2a1
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 08/29/2022
ms.locfileid: '147099218'
ms.lasthandoff: 09/07/2022
ms.locfileid: '147858616'
---
生效日期:**2021 年 4 月 2 日**
生效日期2022 年 9 月 1 日
GitHub 高度透明地公开我们将如何使用数据、如何收集数据以及与谁共享数据。 出于这个目的,我们提供本页面,以详细介绍[我们的次级处理者](#github-subprocessors)以及我们如何使用 [Cookie](#cookies-on-github)。
## GitHub 次级处理者
当我们与第三方次级处理者(例如我们的供应商和服务提供商)共享您的信息时,我们仍然对您的信息负责。 当我们引入新的供应商时,我们竭力维护您的信任,并要求所有供应商与我们订立数据保护协议,以限制他们处理用户的个人信息(在 [隐私声明](/articles/github-privacy-statement/))。 可以在[此处](https://www.github.com/privacy/subprocessors)注册以接收子处理方列表更新。
当我们与第三方次级处理者(例如我们的供应商和服务提供商)共享您的信息时,我们仍然对您的信息负责。 当我们引入新的供应商时,我们竭力维护您的信任,并要求所有供应商与我们订立数据保护协议,以限制他们处理用户的个人信息(在 [隐私声明](/articles/github-privacy-statement/))。
| 次级处理者的名称 | 处理说明 | 处理地点 | 企业地点
|:---|:---|:---|:---|
| 自动 | 博客服务 | 美国 | 美国 |
| AWS Amazon | 数据托管 | 美国 | 美国 |
| Braintree (PayPal) | 订阅信用卡支付处理商 | 美国 | 美国 |
| Clearbit | 市场营销数据增强服务 | 美国 | 美国 |
| Discourse | 社区论坛软件提供商 | 美国 | 美国 |
| Eloqua | 市场营销活动自动化 | 美国 | 美国 |
| Google Apps | 内部公司基础结构 | 美国 | 美国 |
| MailChimp | 客户票证邮寄服务提供商 | 美国 | 美国 |
| Mailgun | 事务性邮寄服务提供商 | 美国 | 美国 |
| 微软 | Microsoft 服务 | 美国 | 美国 |
| Nexmo | 短信通知提供商 | 美国 | 美国 |
| Salesforce.com | 客户关系管理 | 美国 | 美国 |
| Sentry.io | 应用程序监控提供商 | 美国 | 美国 |
| Stripe | 支付服务提供商 | 美国 | 美国 |
| Twilio &amp; Twilio Sendgrid | 短信通知提供商和事务性邮寄服务提供商 | 美国 | 美国 |
| Zendesk | 客户支持工单系统 | 美国 | 美国 |
| Zuora | 企业账单系统 | 美国 | 美国 |
当我们引入新的次级处理者处理我们用户的个人信息、删除次级处理者或更改我们使用次级处理者的方式时,我们将更新次级处理者列表。 您可以在 [https://www.github.com/privacy/subprocessors](https://www.github.com/privacy/subprocessors) 查看最新次级处理者列表并注册接收次级处理者列表更新。
当我们引入新的次级处理者处理我们用户的个人信息、删除次级处理者或更改我们使用次级处理者的方式时,我们将更新此页面。 如果您对新的次级处理者有疑问或顾虑,我们乐意为您提供帮助。 请通过 {% data variables.contact.contact_privacy %} 联系我们。
如果您对新的次级处理者有疑问或顾虑,我们乐意为您提供帮助。 请通过 {% data variables.contact.contact_privacy %} 联系我们。
## GitHub 上的 Cookie
GitHub 使用 Cookie 提供和保护我们的网站,以及分析我们网站的使用情况,以便为您提供良好的用户体验。 如果您希望进一步了解 Cookie以及我们如何及为何使用 Cookie请阅读我们的[隐私声明](/github/site-policy/github-privacy-statement#our-use-of-cookies-and-tracking)。
Cookie 的数量和名称可能会有更改,因此下表可能会不时更新。
| 服务提供商 | Cookie 名称 | 说明 | 有效期* |
|:---|:---|:---|:---|
| GitHub | `app_manifest_token` | 该 Cookie 在应用部件清单 (Manifest) 流程中得到使用,以便在重定向以获取用户会话期间保持流程状态。 | 5 分钟 |
| GitHub | `color_mode` | 该 Cookie 用于指示用户选择的主题偏好。 | 会话 |
| GitHub | `_device_id` | 该 Cookie 用于跟踪已识别的设备以达到安全目的。 | 1 年 |
| GitHub | `dotcom_user` | 该 Cookie 用于向我们指示用户已登录。 | 1 年 |
| GitHub | `_gh_ent` | 该 Cookie 用于多个页面之间的临时应用程序和框架状态,例如,客户在一个多步骤表单中处于哪个步骤。 | 2 周 |
| GitHub | `_gh_sess` | 该 Cookie 用于多个页面之间的临时应用程序和框架状态,例如,用户在一个多步骤表单中处于哪个步骤。 | 会话 |
| GitHub | `gist_oauth_csrf` | 该 Cookie 由 Gist 设置,以确保开始 OAuth 流程与完成 OAuth 流程的用户是同一人。 | 验证 OAuth 状态后删除 |
| GitHub | `gist_user_session` | 在单独的主机上运行时Gist 使用该 Cookie。 | 2 周 |
| GitHub | `has_recent_activity` | 该 Cookie 用于阻止向最近访问过应用的用户显示安全插屏广告。 | 1 小时 |
| GitHub | `__Host-gist_user_session_same_site` | 设置该 Cookie 是为了确保支持 SameSite Cookie 的浏览器可以检查某个请求是否来源于 GitHub。 | 2 周 |
| GitHub | `__Host-user_session_same_site` | 设置该 Cookie 是为了确保支持 SameSite Cookie 的浏览器可以检查某个请求是否来源于 GitHub。 | 2 周 |
| GitHub | `logged_in` | 该 Cookie 用于向我们指示用户已登录。 | 1 年 |
| GitHub | `marketplace_repository_ids` | 该 Cookie 用于 marketplace 安装流程。 | 1 小时 |
| GitHub | `marketplace_suggested_target_id` | 该 Cookie 用于 marketplace 安装流程。 | 1 小时 |
| GitHub | `_octo` | 该 Cookie 用于会话管理,包括缓存动态内容、条件性功能访问、支持请求元数据,以及第一方分析。 | 1 年 |
| GitHub | `org_transform_notice` | 该 Cookie 用于在组织转型期间提供通知。 | 1 小时 |
| GitHub | `private_mode_user_session` | 该 Cookie 用于 Enterprise 身份验证请求。 | 2 周 |
| GitHub | `saml_csrf_token` | 该 Cookie 通过 SAML 身份验证路径方法进行设置,以将令牌与客户端关联。 | 直到用户关闭浏览器或完成身份验证请求 |
| GitHub | `saml_csrf_token_legacy` | 该 Cookie 通过 SAML 身份验证路径方法进行设置,以将令牌与客户端关联。 | 直到用户关闭浏览器或完成身份验证请求 |
| GitHub | `saml_return_to` | 该 Cookie 通过 SAML 身份验证路径方法进行设置,以便在 SAML 身份验证循环中维持状态。 | 直到用户关闭浏览器或完成身份验证请求 |
| GitHub | `saml_return_to_legacy` | 该 Cookie 通过 SAML 身份验证路径方法进行设置,以便在 SAML 身份验证循环中维持状态。 | 直到用户关闭浏览器或完成身份验证请求 |
| GitHub | `tz` | 该 Cookie 允许我们根据您所在的时区自定义时间戳。 | 会话 |
| GitHub | `user_session` | 该 Cookie 用于使您登录。 | 2 周 |
_*_ 下面列出的 Cookie **有效期** 通常适用于连续滚动的时间。
您可以在 [https://github.com/privacy/cookies](https://github.com/privacy/cookies) 查看最新的 GitHub 上的 Cookie 列表并注册接收 Cookie 列表更新。
(!)请注意,尽管我们仅限于在提供外部功能以呈现外部内容时根据需要使用第三方 Cookie但我们网站上的某些页面可能会设置其他第三方 Cookie。 例如,我们可能会嵌入来自其他站点的内容(如视频),而该站点设置 Cookie。 尽管我们会尽可能避免使用这些第三方 Cookie但我们无法总是控制第三方内容会设置哪些 Cookie。