1
0
mirror of synced 2025-12-30 12:02:01 -05:00

New translation batch for cn (#31921)

This commit is contained in:
docubot
2022-10-20 10:59:06 -07:00
committed by GitHub
parent dcb7cf9b87
commit 6bc8b888e0
45 changed files with 854 additions and 684 deletions

View File

@@ -81,6 +81,7 @@ translations/zh-CN/content/codespaces/customizing-your-codespace/personalizing-c
translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-default-editor-for-codespaces.md,file deleted because it no longer exists in main
translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-default-region-for-codespaces.md,file deleted because it no longer exists in main
translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces.md,file deleted because it no longer exists in main
translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,file deleted because it no longer exists in main
translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md,file deleted because it no longer exists in main
translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md,file deleted because it no longer exists in main
translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-with-github-cli.md,file deleted because it no longer exists in main
@@ -263,7 +264,7 @@ translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifi
translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md,broken liquid tags
translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md,broken liquid tags
translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md,rendering error
translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md,broken liquid tags
translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md,rendering error
@@ -275,13 +276,13 @@ translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-pers
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/removing-a-collaborator-from-a-personal-repository.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/removing-yourself-from-a-collaborators-repository.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/adding-an-email-address-to-your-github-account.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/adding-an-email-address-to-your-github-account.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/index.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/remembering-your-github-username-or-email.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/changing-your-github-username.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-accessibility-settings.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/requesting-organization-approval-for-oauth-apps.md,rendering error
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md,broken liquid tags
translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md,broken liquid tags
@@ -312,7 +313,7 @@ translations/zh-CN/content/actions/hosting-your-own-runners/adding-self-hosted-r
translations/zh-CN/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md,rendering error
translations/zh-CN/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md,broken liquid tags
translations/zh-CN/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md,rendering error
translations/zh-CN/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md,broken liquid tags
translations/zh-CN/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md,rendering error
translations/zh-CN/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md,rendering error
translations/zh-CN/content/actions/hosting-your-own-runners/running-scripts-before-or-after-a-job.md,broken liquid tags
translations/zh-CN/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md,rendering error
@@ -335,22 +336,23 @@ translations/zh-CN/content/actions/security-guides/security-hardening-for-github
translations/zh-CN/content/actions/using-github-hosted-runners/about-github-hosted-runners.md,rendering error
translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md,rendering error
translations/zh-CN/content/actions/using-workflows/about-workflows.md,rendering error
translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md,broken liquid tags
translations/zh-CN/content/actions/using-workflows/creating-starter-workflows-for-your-organization.md,rendering error
translations/zh-CN/content/actions/using-workflows/events-that-trigger-workflows.md,rendering error
translations/zh-CN/content/actions/using-workflows/reusing-workflows.md,rendering error
translations/zh-CN/content/actions/using-workflows/sharing-workflows-secrets-and-runners-with-your-organization.md,rendering error
translations/zh-CN/content/actions/using-workflows/storing-workflow-data-as-artifacts.md,broken liquid tags
translations/zh-CN/content/actions/using-workflows/storing-workflow-data-as-artifacts.md,rendering error
translations/zh-CN/content/actions/using-workflows/triggering-a-workflow.md,rendering error
translations/zh-CN/content/actions/using-workflows/workflow-commands-for-github-actions.md,rendering error
translations/zh-CN/content/actions/using-workflows/workflow-syntax-for-github-actions.md,rendering error
translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md,broken liquid tags
translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-secret-scanning-for-your-appliance.md,broken liquid tags
translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-secret-scanning-for-your-appliance.md,rendering error
translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/about-supply-chain-security-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/about-supply-chain-security-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/viewing-the-vulnerability-data-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-github-connect/about-github-connect.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-unified-contributions-for-your-enterprise.md,broken liquid tags
@@ -362,29 +364,32 @@ translations/zh-CN/content/admin/configuration/configuring-network-settings/conf
translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-built-in-firewall-rules.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-dns-nameservers.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-tls.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-network-settings/enabling-subdomain-isolation.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-network-settings/enabling-subdomain-isolation.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-network-settings/network-ports.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-network-settings/using-github-enterprise-server-with-a-load-balancer.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-network-settings/validating-your-domain-settings.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/accessing-the-management-console.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-applications.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-backups-on-your-appliance.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-the-referrer-policy-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/enabling-private-mode.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md,broken liquid tags
translations/zh-CN/content/admin/configuration/configuring-your-enterprise/troubleshooting-tls-errors.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/accessing-the-monitor-dashboard.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/configuring-collectd.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/generating-a-health-check-for-your-enterprise.md,broken liquid tags
@@ -394,21 +399,21 @@ translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance
translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/enabling-automatic-update-checks.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-cpu-or-memory-resources.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrade-requirements.md,broken liquid tags
translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrade-requirements.md,rendering error
translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server.md,rendering error
translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/using-a-staging-environment.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-gateway-for-nas-storage.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md,rendering error
translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises.md,rendering error
translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md,rendering error
translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md,rendering error
translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md,broken liquid tags
translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect.md,rendering error
translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md,rendering error
translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md,rendering error
translations/zh-CN/content/admin/identity-and-access-management/index.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md,broken liquid tags
@@ -425,8 +430,8 @@ translations/zh-CN/content/admin/identity-and-access-management/using-enterprise
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-saml-single-sign-on-for-enterprise-managed-users.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users.md,rendering error
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups.md,rendering error
translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/index.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md,broken liquid tags
@@ -441,11 +446,11 @@ translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-e
translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/troubleshooting-saml-authentication.md,broken liquid tags
translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/updating-a-users-saml-nameid.md,broken liquid tags
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md,broken liquid tags
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md,broken liquid tags
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md,broken liquid tags
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md,broken liquid tags
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md,broken liquid tags
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md,rendering error
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md,rendering error
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md,rendering error
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md,rendering error
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md,rendering error
translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/setting-up-a-staging-instance.md,broken liquid tags
translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md,broken liquid tags
translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/exporting-server-statistics.md,broken liquid tags
@@ -461,12 +466,12 @@ translations/zh-CN/content/admin/overview/about-enterprise-accounts.md,rendering
translations/zh-CN/content/admin/overview/about-github-enterprise-server.md,broken liquid tags
translations/zh-CN/content/admin/overview/about-github-for-enterprises.md,rendering error
translations/zh-CN/content/admin/overview/accessing-compliance-reports-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/overview/system-overview.md,broken liquid tags
translations/zh-CN/content/admin/overview/system-overview.md,rendering error
translations/zh-CN/content/admin/packages/enabling-github-packages-with-aws.md,broken liquid tags
translations/zh-CN/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md,broken liquid tags
translations/zh-CN/content/admin/packages/enabling-github-packages-with-minio.md,broken liquid tags
translations/zh-CN/content/admin/packages/getting-started-with-github-packages-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md,broken liquid tags
translations/zh-CN/content/admin/packages/getting-started-with-github-packages-for-your-enterprise.md,rendering error
translations/zh-CN/content/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md,rendering error
translations/zh-CN/content/admin/packages/quickstart-for-configuring-your-minio-storage-bucket-for-github-packages.md,broken liquid tags
translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/about-enterprise-policies.md,broken liquid tags
translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md,broken liquid tags
@@ -475,10 +480,10 @@ translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise
translations/zh-CN/content/admin/policies/enforcing-policy-with-pre-receive-hooks/about-pre-receive-hooks.md,broken liquid tags
translations/zh-CN/content/admin/policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-people-to-teams.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-people-to-teams.md,rendering error
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/continuous-integration-using-jenkins.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/creating-teams.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/requiring-two-factor-authentication-for-an-organization.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/creating-teams.md,rendering error
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/requiring-two-factor-authentication-for-an-organization.md,rendering error
translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/restoring-a-deleted-organization.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-repositories-in-your-enterprise/configuring-git-large-file-storage-for-your-enterprise.md,broken liquid tags
translations/zh-CN/content/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md,broken liquid tags
@@ -494,24 +499,24 @@ translations/zh-CN/content/authentication/authenticating-with-saml-single-sign-o
translations/zh-CN/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md,rendering error
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,rendering error
translations/zh-CN/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md,broken liquid tags
translations/zh-CN/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md,rendering error
translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md,rendering error
translations/zh-CN/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md,rendering error
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md,rendering error
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/index.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md,rendering error
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md,rendering error
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md,rendering error
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md,broken liquid tags
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md,rendering error
translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md,rendering error
translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md,rendering error
translations/zh-CN/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md,broken liquid tags
translations/zh-CN/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md,rendering error
translations/zh-CN/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md,broken liquid tags
translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md,rendering error
translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md,broken liquid tags
@@ -520,7 +525,7 @@ translations/zh-CN/content/authentication/managing-commit-signature-verification
translations/zh-CN/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md,broken liquid tags
translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md,broken liquid tags
translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md,broken liquid tags
translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md,broken liquid tags
translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md,rendering error
translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md,broken liquid tags
translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md,broken liquid tags
translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md,broken liquid tags
@@ -536,7 +541,7 @@ translations/zh-CN/content/billing/managing-billing-for-github-codespaces/managi
translations/zh-CN/content/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage.md,broken liquid tags
translations/zh-CN/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md,broken liquid tags
translations/zh-CN/content/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription.md,broken liquid tags
translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md,broken liquid tags
translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md,rendering error
translations/zh-CN/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.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/connecting-an-azure-subscription-to-your-enterprise.md,broken liquid tags
@@ -564,10 +569,10 @@ translations/zh-CN/content/code-security/code-scanning/integrating-with-code-sca
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/about-codeql-code-scanning-in-your-ci-system.md,rendering error
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,rendering error
translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md,broken liquid tags
translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md,rendering error
translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system.md,broken liquid tags
translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md,rendering error
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md,rendering error
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md,rendering error
translations/zh-CN/content/code-security/dependabot/dependabot-alerts/editing-security-advisories-in-the-github-advisory-database.md,broken liquid tags
@@ -579,9 +584,9 @@ translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/c
translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates.md,rendering error
translations/zh-CN/content/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions.md,rendering error
translations/zh-CN/content/code-security/dependabot/working-with-dependabot/managing-encrypted-secrets-for-dependabot.md,rendering error
translations/zh-CN/content/code-security/dependabot/working-with-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md,broken liquid tags
translations/zh-CN/content/code-security/dependabot/working-with-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md,rendering error
translations/zh-CN/content/code-security/getting-started/github-security-features.md,rendering error
translations/zh-CN/content/code-security/getting-started/securing-your-organization.md,broken liquid tags
translations/zh-CN/content/code-security/getting-started/securing-your-organization.md,rendering error
translations/zh-CN/content/code-security/getting-started/securing-your-repository.md,rendering error
translations/zh-CN/content/code-security/secret-scanning/about-secret-scanning.md,rendering error
translations/zh-CN/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md,rendering error
@@ -615,7 +620,6 @@ translations/zh-CN/content/codespaces/developing-in-codespaces/creating-a-codesp
translations/zh-CN/content/codespaces/developing-in-codespaces/deleting-a-codespace.md,broken liquid tags
translations/zh-CN/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md,broken liquid tags
translations/zh-CN/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md,broken liquid tags
translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,broken liquid tags
translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-for-pull-requests.md,broken liquid tags
translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-in-visual-studio-code.md,broken liquid tags
translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md,broken liquid tags
@@ -669,9 +673,9 @@ translations/zh-CN/content/developers/apps/building-github-apps/authenticating-w
translations/zh-CN/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md,rendering error
translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md,rendering error
translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md,broken liquid tags
translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md,broken liquid tags
translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md,broken liquid tags
translations/zh-CN/content/developers/apps/getting-started-with-apps/about-apps.md,broken liquid tags
translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md,rendering error
translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md,rendering error
translations/zh-CN/content/developers/apps/getting-started-with-apps/about-apps.md,rendering error
translations/zh-CN/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md,broken liquid tags
translations/zh-CN/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md,rendering error
translations/zh-CN/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md,rendering error
@@ -702,12 +706,12 @@ translations/zh-CN/content/education/manage-coursework-with-github-classroom/tea
translations/zh-CN/content/get-started/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md,broken liquid tags
translations/zh-CN/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md,broken liquid tags
translations/zh-CN/content/get-started/exploring-projects-on-github/following-organizations.md,broken liquid tags
translations/zh-CN/content/get-started/getting-started-with-git/about-remote-repositories.md,broken liquid tags
translations/zh-CN/content/get-started/getting-started-with-git/about-remote-repositories.md,rendering error
translations/zh-CN/content/get-started/getting-started-with-git/associating-text-editors-with-git.md,broken liquid tags
translations/zh-CN/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md,broken liquid tags
translations/zh-CN/content/get-started/getting-started-with-git/managing-remote-repositories.md,broken liquid tags
translations/zh-CN/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md,broken liquid tags
translations/zh-CN/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md,broken liquid tags
translations/zh-CN/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md,rendering error
translations/zh-CN/content/get-started/getting-started-with-git/managing-remote-repositories.md,rendering error
translations/zh-CN/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md,rendering error
translations/zh-CN/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md,rendering error
translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md,broken liquid tags
translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line.md,broken liquid tags
translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md,broken liquid tags
@@ -715,30 +719,31 @@ translations/zh-CN/content/get-started/learning-about-github/about-github-advanc
translations/zh-CN/content/get-started/learning-about-github/access-permissions-on-github.md,broken liquid tags
translations/zh-CN/content/get-started/learning-about-github/types-of-github-accounts.md,broken liquid tags
translations/zh-CN/content/get-started/onboarding/getting-started-with-github-ae.md,broken liquid tags
translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md,broken liquid tags
translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md,rendering error
translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-server.md,broken liquid tags
translations/zh-CN/content/get-started/onboarding/getting-started-with-github-team.md,broken liquid tags
translations/zh-CN/content/get-started/onboarding/getting-started-with-your-github-account.md,broken liquid tags
translations/zh-CN/content/get-started/quickstart/be-social.md,broken liquid tags
translations/zh-CN/content/get-started/quickstart/communicating-on-github.md,broken liquid tags
translations/zh-CN/content/get-started/quickstart/contributing-to-projects.md,broken liquid tags
translations/zh-CN/content/get-started/quickstart/create-a-repo.md,broken liquid tags
translations/zh-CN/content/get-started/quickstart/fork-a-repo.md,broken liquid tags
translations/zh-CN/content/get-started/quickstart/git-and-github-learning-resources.md,broken liquid tags
translations/zh-CN/content/get-started/signing-up-for-github/verifying-your-email-address.md,broken liquid tags
translations/zh-CN/content/get-started/signing-up-for-github/verifying-your-email-address.md,rendering error
translations/zh-CN/content/get-started/using-git/about-git-rebase.md,broken liquid tags
translations/zh-CN/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md,broken liquid tags
translations/zh-CN/content/get-started/using-github/github-command-palette.md,broken liquid tags
translations/zh-CN/content/get-started/using-github/github-mobile.md,broken liquid tags
translations/zh-CN/content/get-started/using-github/github-mobile.md,rendering error
translations/zh-CN/content/get-started/using-github/keyboard-shortcuts.md,rendering error
translations/zh-CN/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md,broken liquid tags
translations/zh-CN/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md,rendering error
translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/attaching-files.md,broken liquid tags
translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md,broken liquid tags
translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md,rendering error
translations/zh-CN/content/github-cli/github-cli/quickstart.md,broken liquid tags
translations/zh-CN/content/graphql/guides/forming-calls-with-graphql.md,broken liquid tags
translations/zh-CN/content/github-cli/github-cli/quickstart.md,rendering error
translations/zh-CN/content/graphql/guides/forming-calls-with-graphql.md,rendering error
translations/zh-CN/content/graphql/guides/introduction-to-graphql.md,broken liquid tags
translations/zh-CN/content/graphql/guides/managing-enterprise-accounts.md,broken liquid tags
translations/zh-CN/content/graphql/guides/managing-enterprise-accounts.md,rendering error
translations/zh-CN/content/graphql/guides/migrating-from-rest-to-graphql.md,broken liquid tags
translations/zh-CN/content/graphql/overview/about-the-graphql-api.md,rendering error
translations/zh-CN/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md,broken liquid tags
@@ -754,49 +759,50 @@ translations/zh-CN/content/issues/tracking-your-work-with-issues/filtering-and-s
translations/zh-CN/content/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue.md,rendering error
translations/zh-CN/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md,broken liquid tags
translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/about-two-factor-authentication-and-saml-single-sign-on.md,broken liquid tags
translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md,broken liquid tags
translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md,rendering error
translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization.md,rendering error
translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md,rendering error
translations/zh-CN/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md,rendering error
translations/zh-CN/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md,broken liquid tags
translations/zh-CN/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md,broken liquid tags
translations/zh-CN/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md,rendering error
translations/zh-CN/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md,broken liquid tags
translations/zh-CN/content/organizations/managing-organization-settings/deleting-an-organization-account.md,broken liquid tags
translations/zh-CN/content/organizations/managing-organization-settings/deleting-an-organization-account.md,rendering error
translations/zh-CN/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md,rendering error
translations/zh-CN/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md,rendering error
translations/zh-CN/content/organizations/managing-organization-settings/integrating-jira-with-your-organization-project-board.md,rendering error
translations/zh-CN/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md,broken liquid tags
translations/zh-CN/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md,rendering error
translations/zh-CN/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md,broken liquid tags
translations/zh-CN/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization.md,rendering error
translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on.md,broken liquid tags
translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md,broken liquid tags
translations/zh-CN/content/organizations/organizing-members-into-teams/about-teams.md,broken liquid tags
translations/zh-CN/content/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team.md,rendering error
translations/zh-CN/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md,broken liquid tags
translations/zh-CN/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/about-permissions-for-github-packages.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md,broken liquid tags
translations/zh-CN/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/deleting-and-restoring-a-package.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/installing-a-package.md,broken liquid tags
translations/zh-CN/content/packages/learn-github-packages/installing-a-package.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/introduction-to-github-packages.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/publishing-a-package.md,broken liquid tags
translations/zh-CN/content/packages/learn-github-packages/publishing-a-package.md,rendering error
translations/zh-CN/content/packages/learn-github-packages/viewing-packages.md,rendering error
translations/zh-CN/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md,broken liquid tags
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md,broken liquid tags
translations/zh-CN/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md,broken liquid tags
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md,broken liquid tags
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,broken liquid tags
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,broken liquid tags
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,rendering error
translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,rendering error
translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md,broken liquid tags
translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md,rendering error
translations/zh-CN/content/pages/getting-started-with-github-pages/about-github-pages.md,broken liquid tags
translations/zh-CN/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md,rendering error
translations/zh-CN/content/pages/index.md,broken liquid tags
translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md,broken liquid tags
translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md,rendering error
translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md,broken liquid tags
translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md,broken liquid tags
translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md,rendering error
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/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/committing-changes-to-a-pull-request-branch-created-from-a-fork.md,broken liquid tags
translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository.md,rendering error
@@ -809,7 +815,7 @@ translations/zh-CN/content/pull-requests/committing-changes-to-your-project/crea
translations/zh-CN/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-on-behalf-of-an-organization.md,broken liquid tags
translations/zh-CN/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md,broken liquid tags
translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/commit-exists-on-github-but-not-in-my-local-clone.md,broken liquid tags
translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md,broken liquid tags
translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md,rendering error
translations/zh-CN/content/repositories/archiving-a-github-repository/archiving-repositories.md,rendering error
translations/zh-CN/content/repositories/archiving-a-github-repository/backing-up-a-repository.md,broken liquid tags
translations/zh-CN/content/repositories/archiving-a-github-repository/referencing-and-citing-content.md,broken liquid tags
@@ -828,7 +834,7 @@ translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-
translations/zh-CN/content/repositories/creating-and-managing-repositories/about-repositories.md,broken liquid tags
translations/zh-CN/content/repositories/creating-and-managing-repositories/cloning-a-repository.md,broken liquid tags
translations/zh-CN/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md,broken liquid tags
translations/zh-CN/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md,broken liquid tags
translations/zh-CN/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md,rendering error
translations/zh-CN/content/repositories/creating-and-managing-repositories/transferring-a-repository.md,rendering error
translations/zh-CN/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md,broken liquid tags
translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md,rendering error
@@ -871,7 +877,7 @@ translations/zh-CN/content/rest/enterprise-admin/users.md,broken liquid tags
translations/zh-CN/content/rest/gitignore.md,broken liquid tags
translations/zh-CN/content/rest/guides/building-a-ci-server.md,broken liquid tags
translations/zh-CN/content/rest/guides/getting-started-with-the-rest-api.md,rendering error
translations/zh-CN/content/rest/guides/traversing-with-pagination.md,broken liquid tags
translations/zh-CN/content/rest/guides/traversing-with-pagination.md,rendering error
translations/zh-CN/content/rest/guides/working-with-comments.md,broken liquid tags
translations/zh-CN/content/rest/migrations/source-imports.md,broken liquid tags
translations/zh-CN/content/rest/overview/other-authentication-methods.md,broken liquid tags
@@ -891,7 +897,7 @@ translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponso
translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md,broken liquid tags
translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-personal-account.md,broken liquid tags
translations/zh-CN/content/support/contacting-github-support/providing-data-to-github-support.md,broken liquid tags
translations/zh-CN/content/support/learning-about-github-support/about-github-premium-support.md,broken liquid tags
translations/zh-CN/content/support/learning-about-github-support/about-github-premium-support.md,rendering error
translations/zh-CN/content/support/learning-about-github-support/about-github-support.md,rendering error
translations/zh-CN/data/learning-tracks/admin.yml,broken liquid tags
translations/zh-CN/data/release-notes/enterprise-server/2-20/15.yml,rendering error
@@ -971,7 +977,7 @@ translations/zh-CN/data/reusables/advanced-security/secret-scanning-add-custom-p
translations/zh-CN/data/reusables/advanced-security/secret-scanning-create-custom-pattern.md,rendering error
translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md,broken liquid tags
translations/zh-CN/data/reusables/apps/user-to-server-rate-limits.md,broken liquid tags
translations/zh-CN/data/reusables/audit_log/audit-log-action-categories.md,broken liquid tags
translations/zh-CN/data/reusables/audit_log/audit-log-action-categories.md,rendering error
translations/zh-CN/data/reusables/audit_log/audit-log-events-workflows.md,rendering error
translations/zh-CN/data/reusables/audit_log/audit_log_sidebar_for_org_admins.md,rendering error
translations/zh-CN/data/reusables/audit_log/audit_log_sidebar_for_site_admins.md,rendering error
@@ -1006,6 +1012,7 @@ translations/zh-CN/data/reusables/dependabot/beta-security-and-version-updates.m
translations/zh-CN/data/reusables/dependabot/default-dependencies-allow-ignore.md,broken liquid tags
translations/zh-CN/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md,rendering error
translations/zh-CN/data/reusables/dependabot/enterprise-enable-dependabot.md,rendering error
translations/zh-CN/data/reusables/dependabot/supported-package-managers.md,broken liquid tags
translations/zh-CN/data/reusables/desktop/get-an-account.md,broken liquid tags
translations/zh-CN/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md,broken liquid tags
translations/zh-CN/data/reusables/discussions/navigate-to-repo-or-org.md,broken liquid tags
@@ -1024,7 +1031,7 @@ translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-gist.md,bro
translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-interact.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-propose.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-repo.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise-accounts/emu-short-summary.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise-accounts/emu-short-summary.md,rendering error
translations/zh-CN/data/reusables/enterprise-accounts/oidc-gei-warning.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise-accounts/repo-creation-policy.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise-accounts/security-tab.md,broken liquid tags
@@ -1033,7 +1040,7 @@ translations/zh-CN/data/reusables/enterprise/rate_limit.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise/test-in-staging.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise_enterprise_support/installing-releases.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise_installation/download-package.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise_installation/hardware-considerations-all-platforms.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise_installation/hardware-considerations-all-platforms.md,rendering error
translations/zh-CN/data/reusables/enterprise_installation/hotpatching-explanation.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise_installation/image-urls-viewable-warning.md,broken liquid tags
translations/zh-CN/data/reusables/enterprise_installation/ssh-into-instance.md,broken liquid tags
@@ -1077,7 +1084,7 @@ translations/zh-CN/data/reusables/organizations/security.md,rendering error
translations/zh-CN/data/reusables/organizations/teams_sidebar.md,rendering error
translations/zh-CN/data/reusables/organizations/verified-domains.md,rendering error
translations/zh-CN/data/reusables/package_registry/authenticate-packages.md,broken liquid tags
translations/zh-CN/data/reusables/package_registry/authenticate-to-container-registry-steps.md,broken liquid tags
translations/zh-CN/data/reusables/package_registry/authenticate-to-container-registry-steps.md,rendering error
translations/zh-CN/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md,broken liquid tags
translations/zh-CN/data/reusables/package_registry/package-registry-with-github-tokens.md,broken liquid tags
translations/zh-CN/data/reusables/package_registry/packages-billing.md,broken liquid tags
@@ -1104,7 +1111,7 @@ translations/zh-CN/data/reusables/repositories/repository-branches.md,rendering
translations/zh-CN/data/reusables/repositories/sidebar-notifications.md,rendering error
translations/zh-CN/data/reusables/repositories/suggest-changes.md,broken liquid tags
translations/zh-CN/data/reusables/repositories/you-can-fork.md,broken liquid tags
translations/zh-CN/data/reusables/rest-api/dotcom-only-guide-note.md,broken liquid tags
translations/zh-CN/data/reusables/rest-api/dotcom-only-guide-note.md,rendering error
translations/zh-CN/data/reusables/saml/about-authorized-credentials.md,broken liquid tags
translations/zh-CN/data/reusables/saml/about-linked-identities.md,broken liquid tags
translations/zh-CN/data/reusables/saml/about-saml-access-enterprise-account.md,broken liquid tags
@@ -1122,7 +1129,7 @@ translations/zh-CN/data/reusables/security-overview/permissions.md,rendering err
translations/zh-CN/data/reusables/shortdesc/rate_limits_github_apps.md,broken liquid tags
translations/zh-CN/data/reusables/sponsors/select-sponsorship-billing.md,broken liquid tags
translations/zh-CN/data/reusables/ssh/about-ssh.md,broken liquid tags
translations/zh-CN/data/reusables/ssh/key-type-support.md,broken liquid tags
translations/zh-CN/data/reusables/ssh/key-type-support.md,rendering error
translations/zh-CN/data/reusables/ssh/rsa-sha-1-connection-failure-criteria.md,broken liquid tags
translations/zh-CN/data/reusables/support/help_resources.md,rendering error
translations/zh-CN/data/reusables/support/submit-a-ticket.md,broken liquid tags
@@ -1132,7 +1139,7 @@ translations/zh-CN/data/reusables/user-settings/appearance-settings.md,rendering
translations/zh-CN/data/reusables/user-settings/developer_settings.md,rendering error
translations/zh-CN/data/reusables/user-settings/emails.md,rendering error
translations/zh-CN/data/reusables/user-settings/organizations.md,rendering error
translations/zh-CN/data/reusables/user-settings/password-authentication-deprecation.md,broken liquid tags
translations/zh-CN/data/reusables/user-settings/password-authentication-deprecation.md,rendering error
translations/zh-CN/data/reusables/user-settings/personal_access_tokens.md,broken liquid tags
translations/zh-CN/data/reusables/user-settings/removes-personal-access-tokens.md,broken liquid tags
translations/zh-CN/data/reusables/user-settings/repo-tab.md,rendering error
1 file reason
81 translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-default-editor-for-codespaces.md file deleted because it no longer exists in main
82 translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-default-region-for-codespaces.md file deleted because it no longer exists in main
83 translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces.md file deleted because it no longer exists in main
84 translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md file deleted because it no longer exists in main
85 translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md file deleted because it no longer exists in main
86 translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md file deleted because it no longer exists in main
87 translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-with-github-cli.md file deleted because it no longer exists in main
264 translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md broken liquid tags
265 translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md broken liquid tags
266 translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md rendering error
267 translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md broken liquid tags rendering error
268 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md rendering error
269 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md broken liquid tags
270 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md rendering error
276 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository.md rendering error
277 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/removing-a-collaborator-from-a-personal-repository.md rendering error
278 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/removing-yourself-from-a-collaborators-repository.md rendering error
279 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/adding-an-email-address-to-your-github-account.md broken liquid tags rendering error
280 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/index.md broken liquid tags
281 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/remembering-your-github-username-or-email.md broken liquid tags
282 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address.md broken liquid tags rendering error
283 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/changing-your-github-username.md rendering error
284 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-accessibility-settings.md broken liquid tags
285 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories.md broken liquid tags rendering error
286 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/requesting-organization-approval-for-oauth-apps.md rendering error
287 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md broken liquid tags
288 translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md broken liquid tags
313 translations/zh-CN/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md rendering error
314 translations/zh-CN/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md broken liquid tags
315 translations/zh-CN/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md rendering error
316 translations/zh-CN/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md broken liquid tags rendering error
317 translations/zh-CN/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md rendering error
318 translations/zh-CN/content/actions/hosting-your-own-runners/running-scripts-before-or-after-a-job.md broken liquid tags
319 translations/zh-CN/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md rendering error
336 translations/zh-CN/content/actions/using-github-hosted-runners/about-github-hosted-runners.md rendering error
337 translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md rendering error
338 translations/zh-CN/content/actions/using-workflows/about-workflows.md rendering error
339 translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md broken liquid tags
340 translations/zh-CN/content/actions/using-workflows/creating-starter-workflows-for-your-organization.md rendering error
341 translations/zh-CN/content/actions/using-workflows/events-that-trigger-workflows.md rendering error
342 translations/zh-CN/content/actions/using-workflows/reusing-workflows.md rendering error
343 translations/zh-CN/content/actions/using-workflows/sharing-workflows-secrets-and-runners-with-your-organization.md rendering error
344 translations/zh-CN/content/actions/using-workflows/storing-workflow-data-as-artifacts.md broken liquid tags rendering error
345 translations/zh-CN/content/actions/using-workflows/triggering-a-workflow.md rendering error
346 translations/zh-CN/content/actions/using-workflows/workflow-commands-for-github-actions.md rendering error
347 translations/zh-CN/content/actions/using-workflows/workflow-syntax-for-github-actions.md rendering error
348 translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md broken liquid tags
349 translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-secret-scanning-for-your-appliance.md broken liquid tags rendering error
350 translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md broken liquid tags
351 translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/about-supply-chain-security-for-your-enterprise.md broken liquid tags rendering error
352 translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md broken liquid tags rendering error
353 translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/viewing-the-vulnerability-data-for-your-enterprise.md broken liquid tags
354 translations/zh-CN/content/admin/configuration/configuring-github-connect/about-github-connect.md broken liquid tags
355 translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise.md broken liquid tags rendering error
356 translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise.md rendering error
357 translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md broken liquid tags
358 translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-unified-contributions-for-your-enterprise.md broken liquid tags
364 translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-built-in-firewall-rules.md broken liquid tags
365 translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-dns-nameservers.md broken liquid tags
366 translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-tls.md broken liquid tags
367 translations/zh-CN/content/admin/configuration/configuring-network-settings/enabling-subdomain-isolation.md broken liquid tags rendering error
368 translations/zh-CN/content/admin/configuration/configuring-network-settings/network-ports.md broken liquid tags
369 translations/zh-CN/content/admin/configuration/configuring-network-settings/using-github-enterprise-server-with-a-load-balancer.md broken liquid tags
370 translations/zh-CN/content/admin/configuration/configuring-network-settings/validating-your-domain-settings.md broken liquid tags
371 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh.md broken liquid tags
372 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/accessing-the-management-console.md broken liquid tags
373 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md broken liquid tags rendering error
374 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-applications.md broken liquid tags
375 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-backups-on-your-appliance.md broken liquid tags
376 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md broken liquid tags
377 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise.md broken liquid tags rendering error
378 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance.md broken liquid tags
379 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md rendering error
380 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance.md broken liquid tags rendering error
381 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-the-referrer-policy-for-your-enterprise.md broken liquid tags
382 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing.md broken liquid tags
383 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode.md broken liquid tags
384 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/enabling-private-mode.md broken liquid tags
385 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md broken liquid tags
386 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md broken liquid tags rendering error
387 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md broken liquid tags
388 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md broken liquid tags
389 translations/zh-CN/content/admin/configuration/configuring-your-enterprise/troubleshooting-tls-errors.md broken liquid tags
390 translations/zh-CN/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md broken liquid tags
391 translations/zh-CN/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md broken liquid tags
392 translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md broken liquid tags
393 translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/accessing-the-monitor-dashboard.md broken liquid tags
394 translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/configuring-collectd.md broken liquid tags
395 translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/generating-a-health-check-for-your-enterprise.md broken liquid tags
399 translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/enabling-automatic-update-checks.md broken liquid tags
400 translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-cpu-or-memory-resources.md broken liquid tags
401 translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md broken liquid tags
402 translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrade-requirements.md broken liquid tags rendering error
403 translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server.md rendering error
404 translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled.md broken liquid tags
405 translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md broken liquid tags rendering error
406 translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/using-a-staging-environment.md broken liquid tags
407 translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-gateway-for-nas-storage.md broken liquid tags
408 translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md broken liquid tags rendering error
409 translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises.md rendering error
410 translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md broken liquid tags rendering error
411 translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md rendering error
412 translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md rendering error
413 translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md broken liquid tags
414 translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect.md broken liquid tags rendering error
415 translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md broken liquid tags rendering error
416 translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md broken liquid tags rendering error
417 translations/zh-CN/content/admin/identity-and-access-management/index.md broken liquid tags
418 translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md broken liquid tags
419 translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md broken liquid tags
430 translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users.md broken liquid tags
431 translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-saml-single-sign-on-for-enterprise-managed-users.md broken liquid tags
432 translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md broken liquid tags
433 translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users.md broken liquid tags rendering error
434 translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups.md broken liquid tags rendering error
435 translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md broken liquid tags
436 translations/zh-CN/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/index.md broken liquid tags
437 translations/zh-CN/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md broken liquid tags
446 translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md broken liquid tags
447 translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/troubleshooting-saml-authentication.md broken liquid tags
448 translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/updating-a-users-saml-nameid.md broken liquid tags
449 translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md broken liquid tags rendering error
450 translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md broken liquid tags rendering error
451 translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md broken liquid tags rendering error
452 translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md broken liquid tags rendering error
453 translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md broken liquid tags rendering error
454 translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/setting-up-a-staging-instance.md broken liquid tags
455 translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md broken liquid tags
456 translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/exporting-server-statistics.md broken liquid tags
466 translations/zh-CN/content/admin/overview/about-github-enterprise-server.md broken liquid tags
467 translations/zh-CN/content/admin/overview/about-github-for-enterprises.md rendering error
468 translations/zh-CN/content/admin/overview/accessing-compliance-reports-for-your-enterprise.md broken liquid tags
469 translations/zh-CN/content/admin/overview/system-overview.md broken liquid tags rendering error
470 translations/zh-CN/content/admin/packages/enabling-github-packages-with-aws.md broken liquid tags
471 translations/zh-CN/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md broken liquid tags
472 translations/zh-CN/content/admin/packages/enabling-github-packages-with-minio.md broken liquid tags
473 translations/zh-CN/content/admin/packages/getting-started-with-github-packages-for-your-enterprise.md broken liquid tags rendering error
474 translations/zh-CN/content/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md broken liquid tags rendering error
475 translations/zh-CN/content/admin/packages/quickstart-for-configuring-your-minio-storage-bucket-for-github-packages.md broken liquid tags
476 translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/about-enterprise-policies.md broken liquid tags
477 translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md broken liquid tags
480 translations/zh-CN/content/admin/policies/enforcing-policy-with-pre-receive-hooks/about-pre-receive-hooks.md broken liquid tags
481 translations/zh-CN/content/admin/policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md broken liquid tags
482 translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md broken liquid tags
483 translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-people-to-teams.md broken liquid tags rendering error
484 translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/continuous-integration-using-jenkins.md broken liquid tags
485 translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/creating-teams.md broken liquid tags rendering error
486 translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/requiring-two-factor-authentication-for-an-organization.md broken liquid tags rendering error
487 translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/restoring-a-deleted-organization.md broken liquid tags
488 translations/zh-CN/content/admin/user-management/managing-repositories-in-your-enterprise/configuring-git-large-file-storage-for-your-enterprise.md broken liquid tags
489 translations/zh-CN/content/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md broken liquid tags
499 translations/zh-CN/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md rendering error
500 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md broken liquid tags
501 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md rendering error
502 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md broken liquid tags rendering error
503 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md rendering error
504 translations/zh-CN/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md broken liquid tags
505 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md broken liquid tags rendering error
506 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md broken liquid tags
507 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md broken liquid tags rendering error
508 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md broken liquid tags
509 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/index.md broken liquid tags
510 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md broken liquid tags
511 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md broken liquid tags
512 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md rendering error
513 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md rendering error
514 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md broken liquid tags rendering error
515 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md broken liquid tags
516 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md broken liquid tags rendering error
517 translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md broken liquid tags rendering error
518 translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md rendering error
519 translations/zh-CN/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md broken liquid tags rendering error
520 translations/zh-CN/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md broken liquid tags
521 translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md rendering error
522 translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md broken liquid tags
525 translations/zh-CN/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md broken liquid tags
526 translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md broken liquid tags
527 translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md broken liquid tags
528 translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md broken liquid tags rendering error
529 translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md broken liquid tags
530 translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md broken liquid tags
531 translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md broken liquid tags
541 translations/zh-CN/content/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage.md broken liquid tags
542 translations/zh-CN/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md broken liquid tags
543 translations/zh-CN/content/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription.md broken liquid tags
544 translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md broken liquid tags rendering error
545 translations/zh-CN/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.md broken liquid tags
546 translations/zh-CN/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md rendering error
547 translations/zh-CN/content/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise.md broken liquid tags
569 translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md broken liquid tags
570 translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system.md rendering error
571 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 rendering error
572 translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md broken liquid tags rendering error
573 translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system.md broken liquid tags
574 translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system.md broken liquid tags
575 translations/zh-CN/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md broken liquid tags rendering error
576 translations/zh-CN/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md rendering error
577 translations/zh-CN/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md rendering error
578 translations/zh-CN/content/code-security/dependabot/dependabot-alerts/editing-security-advisories-in-the-github-advisory-database.md broken liquid tags
584 translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates.md rendering error
585 translations/zh-CN/content/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions.md rendering error
586 translations/zh-CN/content/code-security/dependabot/working-with-dependabot/managing-encrypted-secrets-for-dependabot.md rendering error
587 translations/zh-CN/content/code-security/dependabot/working-with-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md broken liquid tags rendering error
588 translations/zh-CN/content/code-security/getting-started/github-security-features.md rendering error
589 translations/zh-CN/content/code-security/getting-started/securing-your-organization.md broken liquid tags rendering error
590 translations/zh-CN/content/code-security/getting-started/securing-your-repository.md rendering error
591 translations/zh-CN/content/code-security/secret-scanning/about-secret-scanning.md rendering error
592 translations/zh-CN/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md rendering error
620 translations/zh-CN/content/codespaces/developing-in-codespaces/deleting-a-codespace.md broken liquid tags
621 translations/zh-CN/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md broken liquid tags
622 translations/zh-CN/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md broken liquid tags
translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md broken liquid tags
623 translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-for-pull-requests.md broken liquid tags
624 translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-in-visual-studio-code.md broken liquid tags
625 translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md broken liquid tags
673 translations/zh-CN/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md rendering error
674 translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md rendering error
675 translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md broken liquid tags
676 translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md broken liquid tags rendering error
677 translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md broken liquid tags rendering error
678 translations/zh-CN/content/developers/apps/getting-started-with-apps/about-apps.md broken liquid tags rendering error
679 translations/zh-CN/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md broken liquid tags
680 translations/zh-CN/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md rendering error
681 translations/zh-CN/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md rendering error
706 translations/zh-CN/content/get-started/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md broken liquid tags
707 translations/zh-CN/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md broken liquid tags
708 translations/zh-CN/content/get-started/exploring-projects-on-github/following-organizations.md broken liquid tags
709 translations/zh-CN/content/get-started/getting-started-with-git/about-remote-repositories.md broken liquid tags rendering error
710 translations/zh-CN/content/get-started/getting-started-with-git/associating-text-editors-with-git.md broken liquid tags
711 translations/zh-CN/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md broken liquid tags rendering error
712 translations/zh-CN/content/get-started/getting-started-with-git/managing-remote-repositories.md broken liquid tags rendering error
713 translations/zh-CN/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md broken liquid tags rendering error
714 translations/zh-CN/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md broken liquid tags rendering error
715 translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md broken liquid tags
716 translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line.md broken liquid tags
717 translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md broken liquid tags
719 translations/zh-CN/content/get-started/learning-about-github/access-permissions-on-github.md broken liquid tags
720 translations/zh-CN/content/get-started/learning-about-github/types-of-github-accounts.md broken liquid tags
721 translations/zh-CN/content/get-started/onboarding/getting-started-with-github-ae.md broken liquid tags
722 translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md broken liquid tags rendering error
723 translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-server.md broken liquid tags
724 translations/zh-CN/content/get-started/onboarding/getting-started-with-github-team.md broken liquid tags
725 translations/zh-CN/content/get-started/onboarding/getting-started-with-your-github-account.md broken liquid tags
726 translations/zh-CN/content/get-started/quickstart/be-social.md broken liquid tags
727 translations/zh-CN/content/get-started/quickstart/communicating-on-github.md broken liquid tags
728 translations/zh-CN/content/get-started/quickstart/contributing-to-projects.md broken liquid tags
729 translations/zh-CN/content/get-started/quickstart/create-a-repo.md broken liquid tags
730 translations/zh-CN/content/get-started/quickstart/fork-a-repo.md broken liquid tags
731 translations/zh-CN/content/get-started/quickstart/git-and-github-learning-resources.md broken liquid tags
732 translations/zh-CN/content/get-started/signing-up-for-github/verifying-your-email-address.md broken liquid tags rendering error
733 translations/zh-CN/content/get-started/using-git/about-git-rebase.md broken liquid tags
734 translations/zh-CN/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md broken liquid tags
735 translations/zh-CN/content/get-started/using-github/github-command-palette.md broken liquid tags
736 translations/zh-CN/content/get-started/using-github/github-mobile.md broken liquid tags rendering error
737 translations/zh-CN/content/get-started/using-github/keyboard-shortcuts.md rendering error
738 translations/zh-CN/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md broken liquid tags
739 translations/zh-CN/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md rendering error
740 translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/attaching-files.md broken liquid tags
741 translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md broken liquid tags
742 translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md rendering error
743 translations/zh-CN/content/github-cli/github-cli/quickstart.md broken liquid tags rendering error
744 translations/zh-CN/content/graphql/guides/forming-calls-with-graphql.md broken liquid tags rendering error
745 translations/zh-CN/content/graphql/guides/introduction-to-graphql.md broken liquid tags
746 translations/zh-CN/content/graphql/guides/managing-enterprise-accounts.md broken liquid tags rendering error
747 translations/zh-CN/content/graphql/guides/migrating-from-rest-to-graphql.md broken liquid tags
748 translations/zh-CN/content/graphql/overview/about-the-graphql-api.md rendering error
749 translations/zh-CN/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md broken liquid tags
759 translations/zh-CN/content/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue.md rendering error
760 translations/zh-CN/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md broken liquid tags
761 translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/about-two-factor-authentication-and-saml-single-sign-on.md broken liquid tags
762 translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md broken liquid tags rendering error
763 translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization.md rendering error
764 translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md rendering error
765 translations/zh-CN/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md rendering error
766 translations/zh-CN/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md broken liquid tags
767 translations/zh-CN/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md broken liquid tags rendering error
768 translations/zh-CN/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md broken liquid tags
769 translations/zh-CN/content/organizations/managing-organization-settings/deleting-an-organization-account.md broken liquid tags rendering error
770 translations/zh-CN/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md rendering error
771 translations/zh-CN/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md rendering error
772 translations/zh-CN/content/organizations/managing-organization-settings/integrating-jira-with-your-organization-project-board.md rendering error
773 translations/zh-CN/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md broken liquid tags rendering error
774 translations/zh-CN/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md broken liquid tags
775 translations/zh-CN/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization.md rendering error
776 translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on.md broken liquid tags
777 translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md broken liquid tags
778 translations/zh-CN/content/organizations/organizing-members-into-teams/about-teams.md broken liquid tags
779 translations/zh-CN/content/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team.md rendering error
780 translations/zh-CN/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md broken liquid tags rendering error
781 translations/zh-CN/content/packages/learn-github-packages/about-permissions-for-github-packages.md rendering error
782 translations/zh-CN/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md rendering error
783 translations/zh-CN/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md broken liquid tags rendering error
784 translations/zh-CN/content/packages/learn-github-packages/deleting-and-restoring-a-package.md rendering error
785 translations/zh-CN/content/packages/learn-github-packages/installing-a-package.md broken liquid tags rendering error
786 translations/zh-CN/content/packages/learn-github-packages/introduction-to-github-packages.md rendering error
787 translations/zh-CN/content/packages/learn-github-packages/publishing-a-package.md broken liquid tags rendering error
788 translations/zh-CN/content/packages/learn-github-packages/viewing-packages.md rendering error
789 translations/zh-CN/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md rendering error
790 translations/zh-CN/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md broken liquid tags rendering error
791 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md broken liquid tags rendering error
792 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md rendering error
793 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md broken liquid tags rendering error
794 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md broken liquid tags rendering error
795 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md rendering error
796 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md broken liquid tags rendering error
797 translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md broken liquid tags rendering error
798 translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md broken liquid tags
799 translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md rendering error
800 translations/zh-CN/content/pages/getting-started-with-github-pages/about-github-pages.md broken liquid tags
801 translations/zh-CN/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md rendering error
802 translations/zh-CN/content/pages/index.md broken liquid tags
803 translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md broken liquid tags rendering error
804 translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md broken liquid tags
805 translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md broken liquid tags rendering error
806 translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md broken liquid tags
807 translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/committing-changes-to-a-pull-request-branch-created-from-a-fork.md broken liquid tags
808 translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository.md rendering error
815 translations/zh-CN/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-on-behalf-of-an-organization.md broken liquid tags
816 translations/zh-CN/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md broken liquid tags
817 translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/commit-exists-on-github-but-not-in-my-local-clone.md broken liquid tags
818 translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md broken liquid tags rendering error
819 translations/zh-CN/content/repositories/archiving-a-github-repository/archiving-repositories.md rendering error
820 translations/zh-CN/content/repositories/archiving-a-github-repository/backing-up-a-repository.md broken liquid tags
821 translations/zh-CN/content/repositories/archiving-a-github-repository/referencing-and-citing-content.md broken liquid tags
834 translations/zh-CN/content/repositories/creating-and-managing-repositories/about-repositories.md broken liquid tags
835 translations/zh-CN/content/repositories/creating-and-managing-repositories/cloning-a-repository.md broken liquid tags
836 translations/zh-CN/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md broken liquid tags
837 translations/zh-CN/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md broken liquid tags rendering error
838 translations/zh-CN/content/repositories/creating-and-managing-repositories/transferring-a-repository.md rendering error
839 translations/zh-CN/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md broken liquid tags
840 translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md rendering error
877 translations/zh-CN/content/rest/gitignore.md broken liquid tags
878 translations/zh-CN/content/rest/guides/building-a-ci-server.md broken liquid tags
879 translations/zh-CN/content/rest/guides/getting-started-with-the-rest-api.md rendering error
880 translations/zh-CN/content/rest/guides/traversing-with-pagination.md broken liquid tags rendering error
881 translations/zh-CN/content/rest/guides/working-with-comments.md broken liquid tags
882 translations/zh-CN/content/rest/migrations/source-imports.md broken liquid tags
883 translations/zh-CN/content/rest/overview/other-authentication-methods.md broken liquid tags
897 translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md broken liquid tags
898 translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-personal-account.md broken liquid tags
899 translations/zh-CN/content/support/contacting-github-support/providing-data-to-github-support.md broken liquid tags
900 translations/zh-CN/content/support/learning-about-github-support/about-github-premium-support.md broken liquid tags rendering error
901 translations/zh-CN/content/support/learning-about-github-support/about-github-support.md rendering error
902 translations/zh-CN/data/learning-tracks/admin.yml broken liquid tags
903 translations/zh-CN/data/release-notes/enterprise-server/2-20/15.yml rendering error
977 translations/zh-CN/data/reusables/advanced-security/secret-scanning-create-custom-pattern.md rendering error
978 translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md broken liquid tags
979 translations/zh-CN/data/reusables/apps/user-to-server-rate-limits.md broken liquid tags
980 translations/zh-CN/data/reusables/audit_log/audit-log-action-categories.md broken liquid tags rendering error
981 translations/zh-CN/data/reusables/audit_log/audit-log-events-workflows.md rendering error
982 translations/zh-CN/data/reusables/audit_log/audit_log_sidebar_for_org_admins.md rendering error
983 translations/zh-CN/data/reusables/audit_log/audit_log_sidebar_for_site_admins.md rendering error
1012 translations/zh-CN/data/reusables/dependabot/default-dependencies-allow-ignore.md broken liquid tags
1013 translations/zh-CN/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md rendering error
1014 translations/zh-CN/data/reusables/dependabot/enterprise-enable-dependabot.md rendering error
1015 translations/zh-CN/data/reusables/dependabot/supported-package-managers.md broken liquid tags
1016 translations/zh-CN/data/reusables/desktop/get-an-account.md broken liquid tags
1017 translations/zh-CN/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md broken liquid tags
1018 translations/zh-CN/data/reusables/discussions/navigate-to-repo-or-org.md broken liquid tags
1031 translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-interact.md broken liquid tags
1032 translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-propose.md broken liquid tags
1033 translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-repo.md broken liquid tags
1034 translations/zh-CN/data/reusables/enterprise-accounts/emu-short-summary.md broken liquid tags rendering error
1035 translations/zh-CN/data/reusables/enterprise-accounts/oidc-gei-warning.md broken liquid tags
1036 translations/zh-CN/data/reusables/enterprise-accounts/repo-creation-policy.md broken liquid tags
1037 translations/zh-CN/data/reusables/enterprise-accounts/security-tab.md broken liquid tags
1040 translations/zh-CN/data/reusables/enterprise/test-in-staging.md broken liquid tags
1041 translations/zh-CN/data/reusables/enterprise_enterprise_support/installing-releases.md broken liquid tags
1042 translations/zh-CN/data/reusables/enterprise_installation/download-package.md broken liquid tags
1043 translations/zh-CN/data/reusables/enterprise_installation/hardware-considerations-all-platforms.md broken liquid tags rendering error
1044 translations/zh-CN/data/reusables/enterprise_installation/hotpatching-explanation.md broken liquid tags
1045 translations/zh-CN/data/reusables/enterprise_installation/image-urls-viewable-warning.md broken liquid tags
1046 translations/zh-CN/data/reusables/enterprise_installation/ssh-into-instance.md broken liquid tags
1084 translations/zh-CN/data/reusables/organizations/teams_sidebar.md rendering error
1085 translations/zh-CN/data/reusables/organizations/verified-domains.md rendering error
1086 translations/zh-CN/data/reusables/package_registry/authenticate-packages.md broken liquid tags
1087 translations/zh-CN/data/reusables/package_registry/authenticate-to-container-registry-steps.md broken liquid tags rendering error
1088 translations/zh-CN/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md broken liquid tags
1089 translations/zh-CN/data/reusables/package_registry/package-registry-with-github-tokens.md broken liquid tags
1090 translations/zh-CN/data/reusables/package_registry/packages-billing.md broken liquid tags
1111 translations/zh-CN/data/reusables/repositories/sidebar-notifications.md rendering error
1112 translations/zh-CN/data/reusables/repositories/suggest-changes.md broken liquid tags
1113 translations/zh-CN/data/reusables/repositories/you-can-fork.md broken liquid tags
1114 translations/zh-CN/data/reusables/rest-api/dotcom-only-guide-note.md broken liquid tags rendering error
1115 translations/zh-CN/data/reusables/saml/about-authorized-credentials.md broken liquid tags
1116 translations/zh-CN/data/reusables/saml/about-linked-identities.md broken liquid tags
1117 translations/zh-CN/data/reusables/saml/about-saml-access-enterprise-account.md broken liquid tags
1129 translations/zh-CN/data/reusables/shortdesc/rate_limits_github_apps.md broken liquid tags
1130 translations/zh-CN/data/reusables/sponsors/select-sponsorship-billing.md broken liquid tags
1131 translations/zh-CN/data/reusables/ssh/about-ssh.md broken liquid tags
1132 translations/zh-CN/data/reusables/ssh/key-type-support.md broken liquid tags rendering error
1133 translations/zh-CN/data/reusables/ssh/rsa-sha-1-connection-failure-criteria.md broken liquid tags
1134 translations/zh-CN/data/reusables/support/help_resources.md rendering error
1135 translations/zh-CN/data/reusables/support/submit-a-ticket.md broken liquid tags
1139 translations/zh-CN/data/reusables/user-settings/developer_settings.md rendering error
1140 translations/zh-CN/data/reusables/user-settings/emails.md rendering error
1141 translations/zh-CN/data/reusables/user-settings/organizations.md rendering error
1142 translations/zh-CN/data/reusables/user-settings/password-authentication-deprecation.md broken liquid tags rendering error
1143 translations/zh-CN/data/reusables/user-settings/personal_access_tokens.md broken liquid tags
1144 translations/zh-CN/data/reusables/user-settings/removes-personal-access-tokens.md broken liquid tags
1145 translations/zh-CN/data/reusables/user-settings/repo-tab.md rendering error

View File

@@ -279,19 +279,21 @@ After this setting is applied, the JWT will contain the updated `iss` value. In
{% endif %}
### Customizing the subject claims for an organization
### Customizing the subject claims for an organization or repository
To configure organization-wide security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)."
To help improve security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. You can use the [OIDC REST API](/rest/actions/oidc) to apply a customization template for the OIDC subject claim; for example, you can require that the `sub` claim within the OIDC token must always include a specific custom claim, such as `job_workflow_ref`.
Customizing the claims results in a new format for the entire `sub` claim, which replaces the default predefined `sub` format in the token described in "[Example subject claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims)."
The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, organization admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim. {% data reusables.actions.use-request-body-api %}
The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim.
{% data reusables.actions.use-request-body-api %}
To customize your subject claims, you should first create a matching condition in your cloud provider's OIDC configuration, before customizing the configuration using the REST API. Once the configuration is completed, each time a new job runs, the OIDC token generated during that job will follow the new customization template. If the matching condition doesn't exist in the cloud provider's OIDC configuration before the job runs, the generated token might not be accepted by the cloud provider, since the cloud conditions may not be synchronized.
{% note %}
**Note**: When the organization template is applied, it will not affect any existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration. For more information, see "[Set the opt-in flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)."
**Note**: When the organization template is applied, it will not affect any action workflows in existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration, or alternatively could apply a different configuration specific to the repo. For more information, see "[Set the customization template for an OIDC subject claim for a repository](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-a-repository)."
{% endnote %}
@@ -312,7 +314,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re
#### Example: Allowing access to all repositories with a specific owner
This example template enables the `sub` claim to have a new format with only the value of `repository_owner`. {% data reusables.actions.use-request-body-api %}
This example template enables the `sub` claim to have a new format with only the value of `repository_owner`.
{% data reusables.actions.use-request-body-api %}
```json
{
@@ -343,7 +347,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re
#### Example: Requiring a reusable workflow and other claims
The following example template combines the requirement of a specific reusable workflow with additional claims. {% data reusables.actions.use-request-body-api %}
The following example template combines the requirement of a specific reusable workflow with additional claims.
{% data reusables.actions.use-request-body-api %}
This example also demonstrates how to use `"context"` to define your conditions. This is the part that follows the repository in the [default `sub` format](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims). For example, when the job references an environment, the context contains: `environment:<environmentName>`.
@@ -380,7 +386,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re
#### Example: Using system-generated GUIDs
This example template enables predictable OIDC claims with system-generated GUIDs that do not change between renames of entities (such as renaming a repository). {% data reusables.actions.use-request-body-api %}
This example template enables predictable OIDC claims with system-generated GUIDs that do not change between renames of entities (such as renaming a repository).
{% data reusables.actions.use-request-body-api %}
```json
{
@@ -406,7 +414,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re
#### Resetting your customizations
This example template resets the subject claims to the default format. {% data reusables.actions.use-request-body-api %} This template effectively opts out of any organization-level customization policy.
This example template resets the subject claims to the default format. This template effectively opts out of any organization-level customization policy.
{% data reusables.actions.use-request-body-api %}
```json
{
@@ -421,7 +431,7 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re
#### Using the default subject claims
For repositories that can receive a subject claim policy from their organization, the repository owner can later choose to opt-out and instead use the default `sub` claim format. To configure this, the repository admin must use the REST API endpoint at "[Set the opt-out flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-out-flag-of-an-oidc-subject-claim-customization-for-a-repository)" with the following request body:
For repositories that can receive a subject claim policy from their organization, the repository owner can later choose to opt-out and instead use the default `sub` claim format. To configure this, the repository admin must use the REST API endpoint at "[Set the customization template for an OIDC subject claim for a repository](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-a-repository)" with the following request body:
```json
{

View File

@@ -118,7 +118,7 @@ In most places in a workflow, the only types of variables that you can use are e
When you set a custom environment variable, you cannot use any of the default environment variable names. For a complete list of these, see "[Default environment variables](#default-environment-variables)" below. If you attempt to override the value of one of these default environment variables, the assignment is ignored.
Any new environment variables you set that point to a location on the filesystem should have a `_PATH` suffix. The `HOME`, `GITHUB_ENV`, and `GITHUB_WORKSPACE` default environment variables are exceptions to this convention.
Any new environment variables you set that point to a location on the filesystem should have a `_PATH` suffix. The `GITHUB_ENV` and `GITHUB_WORKSPACE` default environment variables are exceptions to this convention.
## Default environment variables

View File

@@ -12,6 +12,8 @@ versions:
In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled.
When {% data variables.actions.hosted_runner %}s are enabled for your organization, a default runner group is automatically created for you with a set of four pre-configured {% data variables.actions.hosted_runner %}s.
When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define.
## Machine specs for {% data variables.actions.hosted_runner %}s

View File

@@ -1,7 +1,7 @@
---
title: 缓存依赖项以加快工作流程
shortTitle: Caching dependencies
intro: 为了使工作流程更快、更高效,可以为依赖项及其他经常重复使用的文件创建和使用缓存。
title: Caching dependencies to speed up workflows
shortTitle: Cache dependencies
intro: 'To make your workflows faster and more efficient, you can create and use caches for dependencies and other commonly reused files.'
redirect_from:
- /github/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows
- /actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows
@@ -14,65 +14,60 @@ type: tutorial
topics:
- Workflows
miniTocMaxHeadingLevel: 3
ms.openlocfilehash: 558d5f186ce75d9ace6f6c6be63e2e3eaeff3230
ms.sourcegitcommit: b0323777cfe4324a09552d0ea268d1afacc3da37
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 08/17/2022
ms.locfileid: '147580669'
---
## <a name="about-caching-workflow-dependencies"></a>关于缓存工作流程依赖项
工作流程运行通常在不同运行之间重新使用相同的输出或下载的依赖项。 例如Maven、Gradle、npm 和 Yarn 等软件包和依赖项管理工具都会对下载的依赖项保留本地缓存。
## About caching workflow dependencies
{% data variables.product.prodname_dotcom %} 托管的运行器上的 {% ifversion fpt or ghec %} 作业在干净的运行器映像中启动,每次都必须下载依赖项,导致网络利用率提高、运行时间延长和成本增加。 {% endif %}为帮助加快重新创建依赖项等文件,{% data variables.product.prodname_dotcom %} 可以缓存你在工作流中经常使用的文件。
Workflow runs often reuse the same outputs or downloaded dependencies from one run to another. For example, package and dependency management tools such as Maven, Gradle, npm, and Yarn keep a local cache of downloaded dependencies.
要缓存作业的依赖项,可以使用 {% data variables.product.prodname_dotcom %} 的 [`cache` 操作](https://github.com/actions/cache)。 该操作创建和还原由唯一键标识的缓存。 或者,如果要缓存下列包管理器,则使用其各自的 setup-* 操作需要最小配置并将为你创建和还原依赖项缓存。
{% ifversion fpt or ghec %} Jobs on {% data variables.product.prodname_dotcom %}-hosted runners start in a clean runner image and must download dependencies each time, causing increased network utilization, longer runtime, and increased cost. {% endif %}To help speed up the time it takes to recreate files like dependencies, {% data variables.product.prodname_dotcom %} can cache files you frequently use in workflows.
| 包管理器 | 用于缓存的 setup-* 操作 |
To cache dependencies for a job, you can use {% data variables.product.prodname_dotcom %}'s [`cache` action](https://github.com/actions/cache). The action creates and restores a cache identified by a unique key. Alternatively, if you are caching the package managers listed below, using their respective setup-* actions requires minimal configuration and will create and restore dependency caches for you.
| Package managers | setup-* action for caching |
|---|---|
| npmYarnpnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) |
| pippipenvPoetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) |
| GradleMaven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) |
| npm, Yarn, pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) |
| pip, pipenv, Poetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) |
| Gradle, Maven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) |
| RubyGems | [setup-ruby](https://github.com/ruby/setup-ruby#caching-bundle-install-automatically) |
| Go `go.sum` | [setup-go](https://github.com/actions/setup-go#caching-dependency-files-and-build-outputs) |
{% warning %}
警告:{% ifversion fpt or ghec %}将缓存与 {% data variables.product.prodname_actions %} 结合使用时,请注意以下几点:
**Warning**: {% ifversion fpt or ghec %}Be mindful of the following when using caching with {% data variables.product.prodname_actions %}:
* {% endif %}建议不要在缓存中存储任何敏感信息。 例如,敏感信息可以包括存储在缓存路径的文件中的访问令牌或登录凭据。 此外,命令行接口 (CLI) 程序(例如 `docker login`)可以将访问凭据保存在配置文件中。 具有读取访问权限的任何人都可以在存储库上创建拉取请求并访问缓存的内容。 仓库的复刻也可在基本分支上创建拉取请求,并在基本分支上访问缓存。
* {% endif %}We recommend that you don't store any sensitive information in the cache. For example, sensitive information can include access tokens or login credentials stored in a file in the cache path. Also, command line interface (CLI) programs like `docker login` can save access credentials in a configuration file. Anyone with read access can create a pull request on a repository and access the contents of a cache. Forks of a repository can also create pull requests on the base branch and access caches on the base branch.
{%- ifversion fpt or ghec %}
* 使用自托管运行器时,工作流运行中的缓存存储在 {% data variables.product.company_short %} 拥有的云存储上。 客户拥有的存储解决方案仅适用于 {% data variables.product.prodname_ghe_server %}
* When using self-hosted runners, caches from workflow runs are stored on {% data variables.product.company_short %}-owned cloud storage. A customer-owned storage solution is only available with {% data variables.product.prodname_ghe_server %}.
{%- endif %}
{% endwarning %}
{% data reusables.actions.comparing-artifacts-caching %}
有关工作流运行工件的详细信息,请参阅“[使用工件持久保存工作流数据](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)”。
For more information on workflow run artifacts, see "[Persisting workflow data using artifacts](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)."
## <a name="restrictions-for-accessing-a-cache"></a>访问缓存的限制
## Restrictions for accessing a cache
工作流可以访问和还原当前分支、基础分支(包括复刻的存储库的基本分支)或默认分支(通常是 `main`)中创建的缓存。 例如,在默认分支上创建的缓存可从任何拉取请求访问。 此外,如果分支 `feature-b` 具有基础分支 `feature-a`,则在 `feature-b` 上触发的工作流将有权访问在默认分支 (`main`)`feature-a` `feature-b` 中创建的缓存。
A workflow can access and restore a cache created in the current branch, the base branch (including base branches of forked repositories), or the default branch (usually `main`). For example, a cache created on the default branch would be accessible from any pull request. Also, if the branch `feature-b` has the base branch `feature-a`, a workflow triggered on `feature-b` would have access to caches created in the default branch (`main`), `feature-a`, and `feature-b`.
访问限制通过在不同分支之间创建逻辑边界来提供缓存隔离和安全。 例如,针对分支 `feature-c`(具有基础 `main`)的拉取请求无法访问为分支 `feature-a`(具有基础 `main`)创建的缓存。
Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`).
仓库中的多个工作流程共享缓存条目。 可以从同一仓库和分支的另一个工作流程访问和恢复为工作流程中的分支创建的缓存。
Multiple workflows within a repository share cache entries. A cache created for a branch within a workflow can be accessed and restored from another workflow for the same repository and branch.
## <a name="using-the-cache-action"></a>使用 `cache` 操作
## Using the `cache` action
[`cache` 操作](https://github.com/actions/cache)将尝试根据你提供 `key` 的还原缓存。 当操作找到缓存时,该操作会将缓存的文件还原到你配置的 `path`
The [`cache` action](https://github.com/actions/cache) will attempt to restore a cache based on the `key` you provide. When the action finds a cache, the action restores the cached files to the `path` you configure.
如果没有精确匹配,该操作在作业成功完成时会自动创建一个新缓存。 新缓存将使用你提供的 `key`,并包含你在 `path` 中指定的文件。
If there is no exact match, the action automatically creates a new cache if the job completes successfully. The new cache will use the `key` you provided and contains the files you specify in `path`.
可以选择提供在 `key` 与现有缓存不匹配时要使用的 `restore-keys` 列表。 从另一个分支还原缓存时,`restore-keys` 列表非常有用,因为 `restore-keys` 可以部分匹配缓存密钥。 有关匹配 `restore-keys` 的详细信息,请参阅“[匹配缓存密钥](#matching-a-cache-key)”。
You can optionally provide a list of `restore-keys` to use when the `key` doesn't match an existing cache. A list of `restore-keys` is useful when you are restoring a cache from another branch because `restore-keys` can partially match cache keys. For more information about matching `restore-keys`, see "[Matching a cache key](#matching-a-cache-key)."
### <a name="input-parameters-for-the-cache-action"></a>`cache` 操作的输入参数
### Input parameters for the `cache` action
- `key`:必要。保存缓存时创建的密钥和用于搜索缓存的密钥。 它可以是变量、上下文值、静态字符串和函数的任何组合。 密钥最大长度为 512 个字符,密钥长度超过最大长度将导致操作失败。
- `path`:必要。运行器上用于缓存或还原的路径。
- 可以指定单个路径,也可以在单独的行上添加多个路径。 例如:
- `key`: **Required** The key created when saving a cache and the key used to search for a cache. It can be any combination of variables, context values, static strings, and functions. Keys have a maximum length of 512 characters, and keys longer than the maximum length will cause the action to fail.
- `path`: **Required** The path(s) on the runner to cache or restore.
- You can specify a single path, or you can add multiple paths on separate lines. For example:
```
- name: Cache Gradle packages
@@ -82,9 +77,9 @@ ms.locfileid: '147580669'
~/.gradle/caches
~/.gradle/wrapper
```
- 可以指定目录或单个文件,并且支持 glob 模式。
- 可以指定绝对路径或相对于工作区目录的路径。
- `restore-keys`:可选。包含备用还原键的字符串,每个还原键均放置在一个新行上。 如果 `key` 没有发生缓存命中,则按照提供的顺序依次使用这些还原键来查找和还原缓存。 例如:
- You can specify either directories or single files, and glob patterns are supported.
- You can specify absolute paths, or paths relative to the workspace directory.
- `restore-keys`: **Optional** A string containing alternative restore keys, with each restore key placed on a new line. If no cache hit occurs for `key`, these restore keys are used sequentially in the order provided to find and restore a cache. For example:
{% raw %}
```yaml
@@ -95,13 +90,13 @@ ms.locfileid: '147580669'
```
{% endraw %}
### <a name="output-parameters-for-the-cache-action"></a>`cache` 操作的输出参数
### Output parameters for the `cache` action
- `cache-hit`:表示找到了键的精确匹配项的布尔值。
- `cache-hit`: A boolean value to indicate an exact match was found for the key.
### <a name="example-using-the-cache-action"></a>使用 `cache` 操作的示例
### Example using the `cache` action
此示例在 `package-lock.json` 文件中的包更改时,或运行器的操作系统更改时,创建一个新的缓存。 缓存键使用上下文和表达式生成一个键值,其中包括运行器的操作系统和 `package-lock.json` 文件的 SHA-256 哈希。
This example creates a new cache when the packages in `package-lock.json` file change, or when the runner's operating system changes. The cache key uses contexts and expressions to generate a key that includes the runner's operating system and a SHA-256 hash of the `package-lock.json` file.
```yaml{:copy}
name: Caching with npm
@@ -141,27 +136,27 @@ jobs:
run: npm test
```
`key` 匹配现有缓存时,被称为缓存命中,并且操作会将缓存的文件还原到 `path` 目录。
When `key` matches an existing cache, it's called a _cache hit_, and the action restores the cached files to the `path` directory.
`key` 不匹配现有缓存时,则被称为缓存失误,在作业成功完成时会自动创建一个新缓存。
When `key` doesn't match an existing cache, it's called a _cache miss_, and a new cache is automatically created if the job completes successfully.
发生缓存失误时,该操作还会搜索指定的 `restore-keys` 以查找任何匹配项:
When a cache miss occurs, the action also searches your specified `restore-keys` for any matches:
1. 如果提供 `restore-keys``cache` 操作将按顺序搜索与 `restore-keys` 列表匹配的任何缓存。
- 当存在精确匹配时,该操作会将缓存中的文件还原到 `path` 目录。
- 如果没有精确匹配,操作将会搜索恢复键值的部分匹配。 当操作找到部分匹配时,最近的缓存将还原到 `path` 目录。
1. `cache` 操作完成,作业中的下一个步骤运行。
1. 如果作业成功完成,则操作将自动创建一个包含 `path` 目录内容的新缓存。
1. If you provide `restore-keys`, the `cache` action sequentially searches for any caches that match the list of `restore-keys`.
- When there is an exact match, the action restores the files in the cache to the `path` directory.
- If there are no exact matches, the action searches for partial matches of the restore keys. When the action finds a partial match, the most recent cache is restored to the `path` directory.
1. The `cache` action completes and the next step in the job runs.
1. If the job completes successfully, the action automatically creates a new cache with the contents of the `path` directory.
有关缓存匹配过程的更详细说明,请参阅“[匹配缓存键](#matching-a-cache-key)”。 创建缓存后,无法更改现有缓存的内容,但可以使用新键创建新缓存。
For a more detailed explanation of the cache matching process, see "[Matching a cache key](#matching-a-cache-key)." Once you create a cache, you cannot change the contents of an existing cache but you can create a new cache with a new key.
### <a name="using-contexts-to-create-cache-keys"></a>使用上下文创建缓存键
### Using contexts to create cache keys
缓存键可以包括 {% data variables.product.prodname_actions %} 支持的任何上下文、函数、文本和运算符。 有关详细信息,请参阅“[上下文](/actions/learn-github-actions/contexts)”和“[表达式](/actions/learn-github-actions/expressions)”。
A cache key can include any of the contexts, functions, literals, and operators supported by {% data variables.product.prodname_actions %}. For more information, see "[Contexts](/actions/learn-github-actions/contexts)" and "[Expressions](/actions/learn-github-actions/expressions)."
使用表达式创建 `key` 使你能够在依赖项更改时自动创建新缓存。
Using expressions to create a `key` allows you to automatically create a new cache when dependencies change.
例如,可以使用可计算 npm `package-lock.json` 文件的哈希的表达式创建 `key`。 因此,当构成 `package-lock.json` 文件的依赖项更改时,缓存键会更改,并自动创建新缓存。
For example, you can create a `key` using an expression that calculates the hash of an npm `package-lock.json` file. So, when the dependencies that make up the `package-lock.json` file change, the cache key changes and a new cache is automatically created.
{% raw %}
```yaml
@@ -169,17 +164,17 @@ npm-${{ hashFiles('package-lock.json') }}
```
{% endraw %}
{% data variables.product.prodname_dotcom %} 计算表达式 `hash "package-lock.json"` 以派生最终的 `key`
{% data variables.product.prodname_dotcom %} evaluates the expression `hash "package-lock.json"` to derive the final `key`.
```yaml
npm-d5ea0750
```
### <a name="using-the-output-of-the-cache-action"></a>使用 `cache` 操作的输出
### Using the output of the `cache` action
可以使用 `cache` 操作的输出,以根据发生的是缓存命中还是缓存失误来执行某些操作。 找到指定 `key` 的缓存的精确匹配时,`cache-hit` 输出设置为 `true`
You can use the output of the `cache` action to do something based on whether a cache hit or miss occurred. When an exact match is found for a cache for the specified `key`, the `cache-hit` output is set to `true`.
在上面的示例工作流中,有一个步骤会列出发生缓存失误时节点模块的状态:
In the example workflow above, there is a step that lists the state of the Node modules if a cache miss occurred:
```yaml
- if: {% raw %}${{ steps.cache-npm.outputs.cache-hit != 'true' }}{% endraw %}
@@ -188,13 +183,13 @@ npm-d5ea0750
run: npm list
```
## <a name="matching-a-cache-key"></a>匹配缓存键
## Matching a cache key
`cache` 操作首先在包含工作流运行的分支中搜索 `key` `restore-keys` 的缓存命中。 如果当前分支中没有命中,`cache` 操作将在父分支和上游分支中搜索 `key` `restore-keys`
The `cache` action first searches for cache hits for `key` and `restore-keys` in the branch containing the workflow run. If there are no hits in the current branch, the `cache` action searches for `key` and `restore-keys` in the parent branch and upstream branches.
通过 `restore-keys`,你可以指定当 `key` 中发生缓存失误时要使用的备用还原键列表。 您可以创建从最具体到最不具体的多个恢复键。 `cache` 操作按顺序搜索 `restore-keys`。 当键不直接匹配时,操作将搜索以恢复键为前缀的键。 如果恢复键值有多个部分匹配项,操作将返回最近创建的缓存。
`restore-keys` allows you to specify a list of alternate restore keys to use when there is a cache miss on `key`. You can create multiple restore keys ordered from the most specific to least specific. The `cache` action searches the `restore-keys` in sequential order. When a key doesn't match directly, the action searches for keys prefixed with the restore key. If there are multiple partial matches for a restore key, the action returns the most recently created cache.
### <a name="example-using-multiple-restore-keys"></a>使用多个恢复键值的示例
### Example using multiple restore keys
{% raw %}
```yaml
@@ -205,7 +200,7 @@ restore-keys: |
```
{% endraw %}
运行器将计算表达式,这些表达式解析为以下 `restore-keys`
The runner evaluates the expressions, which resolve to these `restore-keys`:
{% raw %}
```yaml
@@ -216,13 +211,13 @@ restore-keys: |
```
{% endraw %}
还原键 `npm-feature-` 与以字符串 `npm-feature-` 开头的任何键匹配。 例如,`npm-feature-fd3052de` `npm-feature-a9b253ff` 这两个键都与还原键匹配。 将使用创建日期最新的缓存。 此示例中的键值按以下顺序搜索:
The restore key `npm-feature-` matches any key that starts with the string `npm-feature-`. For example, both of the keys `npm-feature-fd3052de` and `npm-feature-a9b253ff` match the restore key. The cache with the most recent creation date would be used. The keys in this example are searched in the following order:
1. `npm-feature-d5ea0750` 匹配特定哈希。
1. `npm-feature-` 匹配前缀为 `npm-feature-` 的缓存键。
1. `npm-` 匹配前缀为 `npm-` 的任何键。
1. **`npm-feature-d5ea0750`** matches a specific hash.
1. **`npm-feature-`** matches cache keys prefixed with `npm-feature-`.
1. **`npm-`** matches any keys prefixed with `npm-`.
#### <a name="example-of-search-priority"></a>搜索优先级示例
#### Example of search priority
```yaml
key:
@@ -232,30 +227,81 @@ restore-keys: |
npm-
```
例如,如果拉取请求包含 `feature` 分支,并以默认分支 (`main`) 为目标,则该操作将按以下顺序搜索 `key` `restore-keys`
For example, if a pull request contains a `feature` branch and targets the default branch (`main`), the action searches for `key` and `restore-keys` in the following order:
1. `feature` 分支中的键 `npm-feature-d5ea0750`
1. `feature` 分支中的键 `npm-feature-`
1. `feature` 分支中的键 `npm-`
1. `main` 分支中的键 `npm-feature-d5ea0750`
1. `main` 分支中的键 `npm-feature-`
1. `main` 分支中的键 `npm-`
1. Key `npm-feature-d5ea0750` in the `feature` branch
1. Key `npm-feature-` in the `feature` branch
1. Key `npm-` in the `feature` branch
1. Key `npm-feature-d5ea0750` in the `main` branch
1. Key `npm-feature-` in the `main` branch
1. Key `npm-` in the `main` branch
## <a name="usage-limits-and-eviction-policy"></a>使用限制和收回政策
## Usage limits and eviction policy
{% data variables.product.prodname_dotcom %} 将删除 7 天内未被访问的任何缓存条目。 可以存储的缓存数没有限制,但存储库中所有缓存的总大小限制{% ifversion actions-cache-policy-apis %}。 默认情况下,每个存储库的限制为 10 GB但根据企业所有者或存储库管理员设置的策略此限制可能有所不同。{% else %} 10 GB{% endif %}
{% data variables.product.prodname_dotcom %} will remove any cache entries that have not been accessed in over 7 days. There is no limit on the number of caches you can store, but the total size of all caches in a repository is limited{% ifversion actions-cache-policy-apis %}. By default, the limit is 10 GB per repository, but this limit might be different depending on policies set by your enterprise owners or repository administrators.{% else %} to 10 GB.{% endif %}
{% data reusables.actions.cache-eviction-process %}
{% data reusables.actions.cache-eviction-process %} {% ifversion actions-cache-ui %}The cache eviction process may cause cache thrashing, where caches are created and deleted at a high frequency. To reduce this, you can review the caches for a repository and take corrective steps, such as removing caching from specific workflows. For more information, see "[Managing caches](#managing-caches)."{% endif %}{% ifversion actions-cache-admin-ui %} You can also increase the cache size limit for a repository. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)."
{% elsif actions-cache-policy-apis %}
For information on changing the policies for the repository cache size limit, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)" and "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)."
{% ifversion actions-cache-policy-apis %} 有关更改存储库缓存大小限制的策略的信息,请参阅“[在企业中强制实施 {% data variables.product.prodname_actions %} 的策略](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)”和“[管理存储库的 {% data variables.product.prodname_actions %} 设置](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)”。
{% endif %}
{% ifversion actions-cache-management %}
## <a name="managing-caches"></a>管理缓存
## Managing caches
可以使用 {% data variables.product.product_name %} REST API 来管理缓存。 {% ifversion actions-cache-list-delete-apis %}可以使用 API 列出和删除缓存条目,并查看缓存使用情况。{% elsif actions-cache-management %}目前,可以使用 API 查看缓存使用情况,将来的更新中预期会有更多功能。{% endif %}有关详细信息,请参阅“[{% data variables.product.prodname_actions %} 缓存](/rest/actions/cache)”REST API 文档。
{% ifversion actions-cache-ui %}
你还可以安装 {% data variables.product.prodname_cli %} 扩展来从命令行管理缓存。 有关扩展的详细信息,请参阅[扩展文档](https://github.com/actions/gh-actions-cache#readme)。 有关 {% data variables.product.prodname_cli %} 扩展的详细信息,请参阅“[使用 GitHub CLI 扩展](/github-cli/github-cli/using-github-cli-extensions)”。
To manage caches created from your workflows, you can:
- View a list of all cache entries for a repository.
- Filter and sort the list of caches using specific metadata such as cache size, creation time, or last accessed time.
- Delete cache entries from a repository.
- Monitor aggregate cache usage for repositories and organizations.
There are multiple ways to manage caches for your repositories:
- Using the {% data variables.product.prodname_dotcom %} web interface, as shown below.
- Using the REST API. For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation.
- Installing a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information, see the [gh-actions-cache](https://github.com/actions/gh-actions-cache) extension.
{% else %}
You can use the {% data variables.product.product_name %} REST API to manage your caches. {% ifversion actions-cache-list-delete-apis %}You can use the API to list and delete cache entries, and see your cache usage.{% elsif actions-cache-management %}At present, you can use the API to see your cache usage, with more functionality expected in future updates.{% endif %} For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation.
You can also install a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information about the extension, see [the extension documentation](https://github.com/actions/gh-actions-cache#readme). For more information about {% data variables.product.prodname_cli %} extensions, see "[Using GitHub CLI extensions](/github-cli/github-cli/using-github-cli-extensions)."
{% endif %}
{% ifversion actions-cache-ui %}
### Viewing cache entries
You can use the web interface to view a list of cache entries for a repository. In the cache list, you can see how much disk space each cache is using, when the cache was created, and when the cache was last used.
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.actions-tab %}
{% data reusables.repositories.actions-cache-list %}
1. Review the list of cache entries for the repository.
* To search for cache entries used for a specific branch, click the **Branch** dropdown menu and select a branch. The cache list will display all of the caches used for the selected branch.
* To search for cache entries with a specific cache key, use the syntax `key: key-name` in the **Filter caches** field. The cache list will display caches from all branches where the key was used.
![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-entry-list.png)
### Deleting cache entries
Users with `write` access to a repository can use the {% data variables.product.prodname_dotcom %} web interface to delete cache entries.
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.actions-tab %}
{% data reusables.repositories.actions-cache-list %}
1. To the right of the cache entry you want to delete, click {% octicon "trash" aria-label="The trash icon" %}.
![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-delete.png)
{% endif %}
{% endif %}

View File

@@ -1,6 +1,6 @@
---
title: 群集网络配置
intro: '{% data variables.product.prodname_ghe_server %} 集群依靠正确的 DNS 名称解析、负载均衡以及节点之间的通信来正常运行。'
title: Cluster network configuration
intro: '{% data variables.product.prodname_ghe_server %} clustering relies on proper DNS name resolution, load balancing, and communication between nodes to operate properly.'
redirect_from:
- /enterprise/admin/clustering/cluster-network-configuration
- /enterprise/admin/enterprise-management/cluster-network-configuration
@@ -14,68 +14,62 @@ topics:
- Infrastructure
- Networking
shortTitle: Configure a cluster network
ms.openlocfilehash: d6e4d50077cccc3e5582be0af39bdae0046cd8c8
ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/10/2022
ms.locfileid: '145098083'
---
## 网络注意事项
## Network considerations
对于集群而言,最简单的网络设计是将节点置于单个 LAN 上。 如果群集必须跨子网,我们不建议在网络之间配置任何防火墙规则。 节点之间的延迟应小于 1 毫秒。
The simplest network design for clustering is to place the nodes on a single LAN. If a cluster must span subnetworks, we do not recommend configuring any firewall rules between the networks. The latency between nodes should be less than 1 millisecond.
{% ifversion ghes %}为获取高可用性,具有主动节点的网络与具有被动节点的网络之间的延迟必须小于 70 毫秒。 我们不建议在两个网络之间配置防火墙。{% endif %}
{% data reusables.enterprise_clustering.network-latency %}
### 最终用户的应用程序端口
### Application ports for end users
应用程序端口为最终用户提供 Web 应用程序和 Git 访问。
Application ports provide web application and Git access for end users.
| 端口 | 说明 | 加密 |
| Port | Description | Encrypted |
| :------------- | :------------- | :------------- |
| 22/TCP | 通过 SSH 访问 Git | 是 |
| 25/TCP | SMTP | 需要 STARTTLS |
| 80/TCP | HTTP | <br>(启用 SSL 后,此端口重定向到 HTTPS |
| 443/TCP | HTTPS | |
| 9418/TCP | 简单的 Git 协议端口<br>(以私密模式禁用) | |
| 22/TCP | Git over SSH | Yes |
| 25/TCP | SMTP | Requires STARTTLS |
| 80/TCP | HTTP | No<br>(When SSL is enabled this port redirects to HTTPS) |
| 443/TCP | HTTPS | Yes |
| 9418/TCP | Simple Git protocol port<br>(Disabled in private mode) | No |
### 管理端口
### Administrative ports
最终用户在使用基本应用程序时不需要管理端口。
Administrative ports are not required for basic application use by end users.
| 端口 | 说明 | 加密 |
| Port | Description | Encrypted |
| :------------- | :------------- | :------------- |
| ICMP | ICMP Ping | |
| 122/TCP | 管理 SSH | |
| 161/UDP | SNMP | |
| 8080/TCP | Management Console HTTP | <br>(启用 SSL 后,此端口重定向到 HTTPS |
| 8443/TCP | Management Console HTTPS | |
| ICMP | ICMP Ping | No |
| 122/TCP | Administrative SSH | Yes |
| 161/UDP | SNMP | No |
| 8080/TCP | Management Console HTTP | No<br>(When SSL is enabled this port redirects to HTTPS) |
| 8443/TCP | Management Console HTTPS | Yes |
### 集群通信端口
### Cluster communication ports
如果节点之间存在网络级防火墙,则需要访问这些端口。 节点之间的通信未加密。 这些端口不应从外部访问。
If a network level firewall is in place between nodes, these ports will need to be accessible. The communication between nodes is not encrypted. These ports should not be accessible externally.
| 端口 | 说明 |
| Port | Description |
| :------------- | :------------- |
| 1336/TCP | 内部 API |
| 3033/TCP | 内部 SVN 访问 |
| 3037/TCP | 内部 SVN 访问 |
| 1336/TCP | Internal API |
| 3033/TCP | Internal SVN access |
| 3037/TCP | Internal SVN access |
| 3306/TCP | MySQL |
| 4486/TCP | 管理者访问 |
| 5115/TCP | 存储后端 |
| 5208/TCP | 内部 SVN 访问 |
| 4486/TCP | Governor access |
| 5115/TCP | Storage backend |
| 5208/TCP | Internal SVN access |
| 6379/TCP | Redis |
| 8001/TCP | Grafana |
| 8090/TCP | 内部 GPG 访问 |
| 8149/TCP | GitRPC 文件服务器访问 |
| 8090/TCP | Internal GPG access |
| 8149/TCP | GitRPC file server access |
| 8300/TCP | Consul |
| 8301/TCP | Consul |
| 8302/TCP | Consul |
| 9000/TCP | Git Daemon |
| 9102/TCP | 页面文件服务器 |
| 9105/TCP | LFS 服务器 |
| 9102/TCP | Pages file server |
| 9105/TCP | LFS server |
| 9200/TCP | Elasticsearch |
| 9203/TCP | 语义代码服务 |
| 9203/TCP | Semantic code service |
| 9300/TCP | Elasticsearch |
| 11211/TCP | Memcache |
| 161/UDP | SNMP |
@@ -84,42 +78,42 @@ ms.locfileid: '145098083'
| 8302/UDP | Consul |
| 25827/UDP | Collectd |
## 配置负载均衡器
## Configuring a load balancer
我们建议使用基于 TCP 的外部负载均衡器,它支持 PROXY 协议来跨节点分配流量。 请考虑以下负载均衡器配置:
We recommend an external TCP-based load balancer that supports the PROXY protocol to distribute traffic across nodes. Consider these load balancer configurations:
- TCP 端口(如下所示)应转发到运行 `web-server` 服务的节点。 这些是提供外部客户端请求的唯一节点。
- 不应启用粘性会话。
- TCP ports (shown below) should be forwarded to nodes running the `web-server` service. These are the only nodes that serve external client requests.
- Sticky sessions shouldn't be enabled.
{% data reusables.enterprise_installation.terminating-tls %}
## 处理客户端连接信息
## Handling client connection information
由于客户端与集群的连接来自负载均衡器,因此客户端 IP 地址可能会丢失。 要正确捕获客户端连接信息,需要考虑其他因素。
Because client connections to the cluster come from the load balancer, the client IP address can be lost. To properly capture the client connection information, additional consideration is required.
{% data reusables.enterprise_clustering.proxy_preference %}
{% data reusables.enterprise_clustering.proxy_xff_firewall_warning %}
### {% data variables.product.prodname_ghe_server %} 上启用 PROXY 支持
### Enabling PROXY support on {% data variables.product.prodname_ghe_server %}
我们强烈建议您为实例和负载均衡器启用 PROXY 支持。
We strongly recommend enabling PROXY support for both your instance and the load balancer.
{% data reusables.enterprise_installation.proxy-incompatible-with-aws-nlbs %}
- 对于您的实例,请使用以下命令:
- For your instance, use this command:
```shell
$ ghe-config 'loadbalancer.proxy-protocol' 'true' && ghe-cluster-config-apply
```
- 对于负载均衡器,请使用供应商提供的说明。
- For the load balancer, use the instructions provided by your vendor.
{% data reusables.enterprise_clustering.proxy_protocol_ports %}
### {% data variables.product.prodname_ghe_server %} 上启用 X-Forwarded-For 支持
### Enabling X-Forwarded-For support on {% data variables.product.prodname_ghe_server %}
{% data reusables.enterprise_clustering.x-forwarded-for %}
若要启用 `X-Forwarded-For` 标头,请使用以下命令:
To enable the `X-Forwarded-For` header, use this command:
```shell
$ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply
@@ -127,11 +121,12 @@ $ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply
{% data reusables.enterprise_clustering.without_proxy_protocol_ports %}
### 配置状态检查
如果预配置的检查在该节点上失败,则状态检查允许负载均衡器停止向未响应的节点发送流量。 如果集群节点出现故障,则与冗余节点配对的状态检查可提供高可用性。
### Configuring Health Checks
Health checks allow a load balancer to stop sending traffic to a node that is not responding if a pre-configured check fails on that node. If a cluster node fails, health checks paired with redundant nodes provides high availability.
{% data reusables.enterprise_clustering.health_checks %} {% data reusables.enterprise_site_admin_settings.maintenance-mode-status %}
{% data reusables.enterprise_clustering.health_checks %}
{% data reusables.enterprise_site_admin_settings.maintenance-mode-status %}
## DNS 要求
## DNS Requirements
{% data reusables.enterprise_clustering.load_balancer_dns %}

View File

@@ -1,6 +1,6 @@
---
title: 为群集配置高可用性复制
intro: '您可以在不同的位置配置整个 {% data variables.product.prodname_ghe_server %} 群集的被动副本,允许群集故障转移至冗余节点。'
title: Configuring high availability replication for a cluster
intro: 'You can configure a passive replica of your entire {% data variables.product.prodname_ghe_server %} cluster in a different location, allowing your cluster to fail over to redundant nodes.'
miniTocMaxHeadingLevel: 3
redirect_from:
- /enterprise/admin/enterprise-management/configuring-high-availability-replication-for-a-cluster
@@ -14,86 +14,80 @@ topics:
- High availability
- Infrastructure
shortTitle: Configure HA replication
ms.openlocfilehash: 3663fe290fab6644c5650c3f1ff435dfae87bcf4
ms.sourcegitcommit: fb047f9450b41b24afc43d9512a5db2a2b750a2a
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/11/2022
ms.locfileid: '145100050'
---
## 关于集群的高可用性复制
## About high availability replication for clusters
您可以配置 {% data variables.product.prodname_ghe_server %} 的群集部署以实现高可用性,其中一组相同的被动节点与活动群集中的节点同步。 如果硬件或软件故障影响具有活动群集的数据中心,您可以手动故障转移到副本节点,继续处理用户请求,以尽可能减少中断的影响。
You can configure a cluster deployment of {% data variables.product.prodname_ghe_server %} for high availability, where an identical set of passive nodes sync with the nodes in your active cluster. If hardware or software failures affect the datacenter with your active cluster, you can manually fail over to the replica nodes and continue processing user requests, minimizing the impact of the outage.
在高可用性模式下,每个活动节点定期与相应的被动节点同步。 被动节点在待机状态下运行,不服务于应用程序或处理用户请求。
In high availability mode, each active node syncs regularly with a corresponding passive node. The passive node runs in standby and does not serve applications or process user requests.
我们建议配置高可用性,作为 {% data variables.product.prodname_ghe_server %} 全面灾难恢复计划的一部分。 我们还建议进行定期备份。 有关详细信息,请参阅“[在设备上配置备份](/enterprise/admin/configuration/configuring-backups-on-your-appliance)”。
We recommend configuring high availability as a part of a comprehensive disaster recovery plan for {% data variables.product.prodname_ghe_server %}. We also recommend performing regular backups. For more information, see "[Configuring backups on your appliance](/enterprise/admin/configuration/configuring-backups-on-your-appliance)."
## 先决条件
## Prerequisites
### 硬件和软件
### Hardware and software
对于活动群集中的每个现有节点,都需要预配第二个具有相同硬件资源的虚拟机。 例如,如果你的群集有 11 个节点,并且每个节点有 12 vCP96 GB RAM 750 GB 的附加存储,则必须预配 11 个新虚拟机,每个虚拟机具有 12 vCPU96 GB RAM 750 GB 的附加存储。
For each existing node in your active cluster, you'll need to provision a second virtual machine with identical hardware resources. For example, if your cluster has 11 nodes and each node has 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage, you must provision 11 new virtual machines that each have 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage.
在每个新虚拟机上,安装活动群集的节点上运行的相同版本 {% data variables.product.prodname_ghe_server %}。 您不需要上传许可证或执行任何其他配置。 有关详细信息,请参阅“[设置 {% data variables.product.prodname_ghe_server %} 实例](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)”。
On each new virtual machine, install the same version of {% data variables.product.prodname_ghe_server %} that runs on the nodes in your active cluster. You don't need to upload a license or perform any additional configuration. For more information, see "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)."
{% note %}
**注意:** 你打算用于高可用性副本的节点应该是独立的 {% data variables.product.prodname_ghe_server %} 实例。 不要将被动节点初始化为第二个群集。
**Note**: The nodes that you intend to use for high availability replication should be standalone {% data variables.product.prodname_ghe_server %} instances. Don't initialize the passive nodes as a second cluster.
{% endnote %}
### 网络
### Network
您必须为预配的每个新节点分配一个静态 IP 地址,并且必须配置负载均衡器以接受连接,并将其引导到群集前端层中的节点。
You must assign a static IP address to each new node that you provision, and you must configure a load balancer to accept connections and direct them to the nodes in your cluster's front-end tier.
我们不建议在具有主动群集的网络和具有被动群集的网络之间配置防火墙。 具有主动节点的网络与具有被动节点的网络之间的延迟必须小于 70 毫秒。 有关被动群集中节点之间网络连接的详细信息,请参阅“[网络配置](/enterprise/admin/enterprise-management/cluster-network-configuration)”。
{% data reusables.enterprise_clustering.network-latency %} For more information about network connectivity between nodes in the passive cluster, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration)."
## 为群集创建高可用性副本
## Creating a high availability replica for a cluster
- [将主动节点分配到主数据中心](#assigning-active-nodes-to-the-primary-datacenter)
- [将被动节点添加到群集配置文件](#adding-passive-nodes-to-the-cluster-configuration-file)
- [配置示例](#example-configuration)
- [Assigning active nodes to the primary datacenter](#assigning-active-nodes-to-the-primary-datacenter)
- [Adding passive nodes to the cluster configuration file](#adding-passive-nodes-to-the-cluster-configuration-file)
- [Example configuration](#example-configuration)
### 将主动节点分配到主数据中心
### Assigning active nodes to the primary datacenter
在为被动节点定义辅助数据中心之前,请确保将活动节点分配给主数据中心。
Before you define a secondary datacenter for your passive nodes, ensure that you assign your active nodes to the primary datacenter.
{% data reusables.enterprise_clustering.ssh-to-a-node %}
{% data reusables.enterprise_clustering.open-configuration-file %}
3. 记下群集主数据中心的名称。 群集配置文件顶部的 `[cluster]` 部分使用 `primary-datacenter` 键值对定义主数据中心的名称。 默认情况下,群集的主数据中心名为 `default`
3. Note the name of your cluster's primary datacenter. The `[cluster]` section at the top of the cluster configuration file defines the primary datacenter's name, using the `primary-datacenter` key-value pair. By default, the primary datacenter for your cluster is named `default`.
```shell
[cluster]
mysql-master = <em>HOSTNAME</em>
redis-master = <em>HOSTNAME</em>
mysql-master = HOSTNAME
redis-master = HOSTNAME
<strong>primary-datacenter = default</strong>
```
- (可选)通过编辑 `primary-datacenter` 的值,将主数据中心的名称更改为更具描述性或更准确的值。
- Optionally, change the name of the primary datacenter to something more descriptive or accurate by editing the value of `primary-datacenter`.
4. {% data reusables.enterprise_clustering.configuration-file-heading %} 在每个节点标题下,添加新的键值对,以将节点分配给数据中心。 使用上述第 3 步中 `primary-datacenter` 所用的值。 例如,如果要使用默认名称 (`default`),请将以下键值对添加到每个节点的部分。
4. {% data reusables.enterprise_clustering.configuration-file-heading %} Under each node's heading, add a new key-value pair to assign the node to a datacenter. Use the same value as `primary-datacenter` from step 3 above. For example, if you want to use the default name (`default`), add the following key-value pair to the section for each node.
```
datacenter = default
```
完成后,群集配置文件中每个节点的部分应如下所示。 {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %}
When you're done, the section for each node in the cluster configuration file should look like the following example. {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %}
```shell
[cluster "<em>HOSTNAME</em>"]
[cluster "HOSTNAME"]
<strong>datacenter = default</strong>
hostname = <em>HOSTNAME</em>
ipv4 = <em>IP ADDRESS</em>
hostname = HOSTNAME
ipv4 = IP-ADDRESS
...
...
```
{% note %}
**注意:** 如果在步骤 3 中更改了主数据中心的名称,请在每个节点的部分找到 `consul-datacenter` 键值对,然后将值更改为重命名的主数据中心。 例如,如果已将主数据中心命名为 `primary`,请为每个节点使用以下键值对。
**Note**: If you changed the name of the primary datacenter in step 3, find the `consul-datacenter` key-value pair in the section for each node and change the value to the renamed primary datacenter. For example, if you named the primary datacenter `primary`, use the following key-value pair for each node.
```
consul-datacenter = primary
@@ -105,123 +99,123 @@ ms.locfileid: '145100050'
{% data reusables.enterprise_clustering.configuration-finished %}
{% data variables.product.prodname_ghe_server %} 返回提示符,您已完成将节点分配给群集的主数据中心。
After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished assigning your nodes to the cluster's primary datacenter.
### 将被动节点添加到群集配置文件
### Adding passive nodes to the cluster configuration file
要配置高可用性,必须为群集中的每个主动节点定义相应的被动节点。 以下说明创建用于定义主动节点和被动节点的新群集配置。 你将:
To configure high availability, you must define a corresponding passive node for every active node in your cluster. The following instructions create a new cluster configuration that defines both active and passive nodes. You will:
- 创建主动群集配置文件的副本。
- 编辑副本以定义与主动节点对应的被动节点,添加预配的新虚拟机的 IP 地址。
- 将群集配置的修改副本合并回主动配置。
- 应用新配置以开始复制。
- Create a copy of the active cluster configuration file.
- Edit the copy to define passive nodes that correspond to the active nodes, adding the IP addresses of the new virtual machines that you provisioned.
- Merge the modified copy of the cluster configuration back into your active configuration.
- Apply the new configuration to start replication.
有关示例配置,请参阅“[示例配置](#example-configuration)”。
For an example configuration, see "[Example configuration](#example-configuration)."
1. 对于群集中的每个节点,预配规范相同的匹配虚拟机,运行相同版本的 {% data variables.product.prodname_ghe_server %}。 记下每个新群集节点的 IPv4 地址和主机名。 有关详细信息,请参阅“[先决条件](#prerequisites)”。
1. For each node in your cluster, provision a matching virtual machine with identical specifications, running the same version of {% data variables.product.prodname_ghe_server %}. Note the IPv4 address and hostname for each new cluster node. For more information, see "[Prerequisites](#prerequisites)."
{% note %}
**注意:** 如果在故障转移后重新配置高可用性,可以改用主数据中心的旧节点。
**Note**: If you're reconfiguring high availability after a failover, you can use the old nodes from the primary datacenter instead.
{% endnote %}
{% data reusables.enterprise_clustering.ssh-to-a-node %}
3. 备份现有群集配置。
3. Back up your existing cluster configuration.
```
cp /data/user/common/cluster.conf ~/$(date +%Y-%m-%d)-cluster.conf.backup
```
4. 在临时位置创建现有群集配置文件的副本,例如 /home/admin/cluster-passive.conf。 删除 IP 地址的唯一键值对 (`ipv*`)UUID (`uuid`) WireGuard 的公钥 (`wireguard-pubkey`)
4. Create a copy of your existing cluster configuration file in a temporary location, like _/home/admin/cluster-passive.conf_. Delete unique key-value pairs for IP addresses (`ipv*`), UUIDs (`uuid`), and public keys for WireGuard (`wireguard-pubkey`).
```
grep -Ev "(?:|ipv|uuid|vpn|wireguard\-pubkey)" /data/user/common/cluster.conf > ~/cluster-passive.conf
```
5. 从上一步中复制的临时群集配置文件删除 `[cluster]` 部分。
5. Remove the `[cluster]` section from the temporary cluster configuration file that you copied in the previous step.
```
git config -f ~/cluster-passive.conf --remove-section cluster
```
6. 确定在其中预配了被动节点的辅助数据中心的名称,然后使用新的数据中心名称更新临时群集配置文件。 将 `SECONDARY` 替换为所选名称。
6. Decide on a name for the secondary datacenter where you provisioned your passive nodes, then update the temporary cluster configuration file with the new datacenter name. Replace `SECONDARY` with the name you choose.
```shell
sed -i 's/datacenter = default/datacenter = <em>SECONDARY</em>/g' ~/cluster-passive.conf
sed -i 's/datacenter = default/datacenter = SECONDARY/g' ~/cluster-passive.conf
```
7. 确定被动节点主机名的模式。
7. Decide on a pattern for the passive nodes' hostnames.
{% warning %}
**警告**:被动节点的主机名必须是唯一的,并且与对应主动节点的主机名不同。
**Warning**: Hostnames for passive nodes must be unique and differ from the hostname for the corresponding active node.
{% endwarning %}
8. 在文本编辑器中打开步骤 3 中的临时群集配置文件。 例如,您可以使用 Vim
8. Open the temporary cluster configuration file from step 3 in a text editor. For example, you can use Vim.
```shell
sudo vim ~/cluster-passive.conf
```
9. 在临时群集配置文件中的每个部分,更新节点的配置。 {% data reusables.enterprise_clustering.configuration-file-heading %}
9. In each section within the temporary cluster configuration file, update the node's configuration. {% data reusables.enterprise_clustering.configuration-file-heading %}
- 根据上面步骤 7 中选择的模式,将部分标题中引用的主机名和部分中 `hostname` 的值更改为被动节点的主机名。
- 新增一个名为 `ipv4` 的密钥,并将值设置为被动节点的静态 IPv4 地址。
- 添加新的键值对 `replica = enabled`
- Change the quoted hostname in the section heading and the value for `hostname` within the section to the passive node's hostname, per the pattern you chose in step 7 above.
- Add a new key named `ipv4`, and set the value to the passive node's static IPv4 address.
- Add a new key-value pair, `replica = enabled`.
```shell
[cluster "<em>NEW PASSIVE NODE HOSTNAME</em>"]
[cluster "NEW PASSIVE NODE HOSTNAME"]
...
hostname = <em>NEW PASSIVE NODE HOSTNAME</em>
ipv4 = <em>NEW PASSIVE NODE IPV4 ADDRESS</em>
hostname = NEW PASSIVE NODE HOSTNAME
ipv4 = NEW PASSIVE NODE IPV4 ADDRESS
<strong>replica = enabled</strong>
...
...
```
10. 将步骤 4 中创建的临时群集配置文件的内容附加到活动的配置文件。
10. Append the contents of the temporary cluster configuration file that you created in step 4 to the active configuration file.
```shell
cat ~/cluster-passive.conf >> /data/user/common/cluster.conf
```
11. 在辅助数据中心中指定主 MySQL Redis 节点。 将 `REPLICA MYSQL PRIMARY HOSTNAME` `REPLICA REDIS PRIMARY HOSTNAME` 替换为预配的被动节点的主机名,以匹配现有的 MySQL Redis 主节点。
11. Designate the primary MySQL and Redis nodes in the secondary datacenter. Replace `REPLICA MYSQL PRIMARY HOSTNAME` and `REPLICA REDIS PRIMARY HOSTNAME` with the hostnames of the passives node that you provisioned to match your existing MySQL and Redis primaries.
```shell
git config -f /data/user/common/cluster.conf cluster.mysql-master-replica <em>REPLICA MYSQL PRIMARY HOSTNAME</em>
git config -f /data/user/common/cluster.conf cluster.redis-master-replica <em>REPLICA REDIS PRIMARY HOSTNAME</em>
git config -f /data/user/common/cluster.conf cluster.mysql-master-replica REPLICA-MYSQL-PRIMARY-HOSTNAME
git config -f /data/user/common/cluster.conf cluster.redis-master-replica REPLICA-REDIS-PRIMARY-HOSTNAME
```
{% warning %}
**警告**:在继续之前请检查群集配置文件。
**Warning**: Review your cluster configuration file before proceeding.
- 在顶级 `[cluster]` 部分中,确保 `mysql-master-replica` `redis-master-replica` 的值是辅助数据中心中被动节点的正确主机名,这些被动节点将在故障转移后用作 MySQL Redis 主节点。
- 在名为 <code>[cluster "<em>ACTIVE NODE HOSTNAME</em>"]</code> 的主动节点的每个部分中,仔细检查以下键值对。
- `datacenter` 应与顶级 `[cluster]` 部分中 `primary-datacenter` 的值匹配。
- `consul-datacenter` 应与 `datacenter` 的值匹配,该值应与顶级 `[cluster]` 部分中 `primary-datacenter` 的值相同。
- 确保每个主动节点的配置与包含相同角色的被动节点的配置具有相对应的部分 。 在被动节点的每个部分中,仔细检查每个键值对。
- `datacenter` 应与其他所有被动节点匹配。
- `consul-datacenter` 应与其他所有被动节点匹配。
- `hostname` 应与部分标题中的主机名匹配。
- `ipv4` 应与节点的唯一静态 IPv4 地址匹配。
- `replica` 应配置为 `enabled`
- 利用机会删除已经不再使用的离线节点的部分。
- In the top-level `[cluster]` section, ensure that the values for `mysql-master-replica` and `redis-master-replica` are the correct hostnames for the passive nodes in the secondary datacenter that will serve as the MySQL and Redis primaries after a failover.
- In each section for an active node named <code>[cluster "ACTIVE NODE HOSTNAME"]</code>, double-check the following key-value pairs.
- `datacenter` should match the value of `primary-datacenter` in the top-level `[cluster]` section.
- `consul-datacenter` should match the value of `datacenter`, which should be the same as the value for `primary-datacenter` in the top-level `[cluster]` section.
- Ensure that for each active node, the configuration has **one** corresponding section for **one** passive node with the same roles. In each section for a passive node, double-check each key-value pair.
- `datacenter` should match all other passive nodes.
- `consul-datacenter` should match all other passive nodes.
- `hostname` should match the hostname in the section heading.
- `ipv4` should match the node's unique, static IPv4 address.
- `replica` should be configured as `enabled`.
- Take the opportunity to remove sections for offline nodes that are no longer in use.
要查看示例配置,请参阅“[示例配置](#example-configuration)”。
To review an example configuration, see "[Example configuration](#example-configuration)."
{% endwarning %}
13. 初始化新群集配置。 {% data reusables.enterprise.use-a-multiplexer %}
13. Initialize the new cluster configuration. {% data reusables.enterprise.use-a-multiplexer %}
```shell
ghe-cluster-config-init
```
14. 初始化完成后,{% data variables.product.prodname_ghe_server %} 将显示以下消息。
14. After the initialization finishes, {% data variables.product.prodname_ghe_server %} displays the following message.
```shell
Finished cluster initialization
@@ -231,33 +225,33 @@ ms.locfileid: '145100050'
{% data reusables.enterprise_clustering.configuration-finished %}
17. 配置负载均衡器,如果故障转移到被动节点,该均衡器将接受来自用户的连接。 有关详细信息,请参阅“[群集网络配置](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)”。
17. Configure a load balancer that will accept connections from users if you fail over to the passive nodes. For more information, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)."
您已完成为群集中的节点配置高可用性副本。 每个主动节点开始将配置和数据复制到其对应的被动节点,并且您可以在发生故障时将流量直接引导至辅助数据中心的负载均衡器。 有关故障转移的详细信息,请参阅“[发起到副本群集的故障转移](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)”。
You've finished configuring high availability replication for the nodes in your cluster. Each active node begins replicating configuration and data to its corresponding passive node, and you can direct traffic to the load balancer for the secondary datacenter in the event of a failure. For more information about failing over, see "[Initiating a failover to your replica cluster](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)."
### 配置示例
### Example configuration
顶级 `[cluster]` 配置应如下例所示。
The top-level `[cluster]` configuration should look like the following example.
```shell
[cluster]
mysql-master = <em>HOSTNAME OF ACTIVE MYSQL MASTER</em>
redis-master = <em>HOSTNAME OF ACTIVE REDIS MASTER</em>
primary-datacenter = <em>PRIMARY DATACENTER NAME</em>
mysql-master-replica = <em>HOSTNAME OF PASSIVE MYSQL MASTER</em>
redis-master-replica = <em>HOSTNAME OF PASSIVE REDIS MASTER</em>
mysql-master = HOSTNAME-OF-ACTIVE-MYSQL-MASTER
redis-master = HOSTNAME-OF-ACTIVE-REDIS-MASTER
primary-datacenter = PRIMARY-DATACENTER-NAME
mysql-master-replica = HOSTNAME-OF-PASSIVE-MYSQL-MASTER
redis-master-replica = HOSTNAME-OF-PASSIVE-REDIS-MASTER
mysql-auto-failover = false
...
```
群集存储层中主动节点的配置应如下所示。
The configuration for an active node in your cluster's storage tier should look like the following example.
```shell
...
[cluster "<em>UNIQUE ACTIVE NODE HOSTNAME</em>"]
[cluster "UNIQUE ACTIVE NODE HOSTNAME"]
datacenter = default
hostname = <em>UNIQUE ACTIVE NODE HOSTNAME</em>
ipv4 = <em>IPV4 ADDRESS</em>
hostname = UNIQUE-ACTIVE-NODE-HOSTNAME
ipv4 = IPV4-ADDRESS
consul-datacenter = default
consul-server = true
git-server = true
@@ -268,26 +262,26 @@ ms.locfileid: '145100050'
memcache-server = true
metrics-server = true
storage-server = true
vpn = <em>IPV4 ADDRESS SET AUTOMATICALLY</em>
uuid = <em>UUID SET AUTOMATICALLY</em>
wireguard-pubkey = <em>PUBLIC KEY SET AUTOMATICALLY</em>
vpn = IPV4 ADDRESS SET AUTOMATICALLY
uuid = UUID SET AUTOMATICALLY
wireguard-pubkey = PUBLIC KEY SET AUTOMATICALLY
...
```
存储层中对应的被动节点的配置应如下所示。
The configuration for the corresponding passive node in the storage tier should look like the following example.
- 与相应主动节点的重要区别以粗体显示。
- {% data variables.product.prodname_ghe_server %} 自动为 `vpn``uuid` `wireguard-pubkey` 分配值,因此不应为要初始化的被动节点定义值。
- `*-server` 密钥定义的服务器角色与相应的主动节点匹配。
- Important differences from the corresponding active node are **bold**.
- {% data variables.product.prodname_ghe_server %} assigns values for `vpn`, `uuid`, and `wireguard-pubkey` automatically, so you shouldn't define the values for passive nodes that you will initialize.
- The server roles, defined by `*-server` keys, match the corresponding active node.
```shell
...
<strong>[cluster "<em>UNIQUE PASSIVE NODE HOSTNAME</em>"]</strong>
<strong>[cluster "UNIQUE PASSIVE NODE HOSTNAME"]</strong>
<strong>replica = enabled</strong>
<strong>ipv4 = <em>IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES</em></strong>
<strong>datacenter = <em>SECONDARY DATACENTER NAME</em></strong>
<strong>hostname = <em>UNIQUE PASSIVE NODE HOSTNAME</em></strong>
<strong>consul-datacenter = <em>SECONDARY DATACENTER NAME</em></strong>
<strong>ipv4 = IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES</strong>
<strong>datacenter = SECONDARY DATACENTER NAME</strong>
<strong>hostname = UNIQUE PASSIVE NODE HOSTNAME</strong>
<strong>consul-datacenter = SECONDARY DATACENTER NAME</strong>
consul-server = true
git-server = true
pages-server = true
@@ -297,73 +291,73 @@ ms.locfileid: '145100050'
memcache-server = true
metrics-server = true
storage-server = true
<strong>vpn = <em>DO NOT DEFINE</em></strong>
<strong>uuid = <em>DO NOT DEFINE</em></strong>
<strong>wireguard-pubkey = <em>DO NOT DEFINE</em></strong>
<strong>vpn = DO NOT DEFINE</strong>
<strong>uuid = DO NOT DEFINE</strong>
<strong>wireguard-pubkey = DO NOT DEFINE</strong>
...
```
## 监控主动与被动群集节点之间的复制
## Monitoring replication between active and passive cluster nodes
群集中主动节点与被动节点之间的初始复制需要时间。 时间量取决于要复制的数据量和 {% data variables.product.prodname_ghe_server %} 的活动水平。
Initial replication between the active and passive nodes in your cluster takes time. The amount of time depends on the amount of data to replicate and the activity levels for {% data variables.product.prodname_ghe_server %}.
您可以通过 {% data variables.product.prodname_ghe_server %} 系统管理 shell 使用命令行工具监控群集中任何节点的进度。 有关管理 shell 的详细信息,请参阅“[访问管理 shell (SSH)](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)”。
You can monitor the progress on any node in the cluster, using command-line tools available via the {% data variables.product.prodname_ghe_server %} administrative shell. For more information about the administrative shell, see "[Accessing the administrative shell (SSH)](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)."
- 监控数据库的复制:
- Monitor replication of databases:
```
/usr/local/share/enterprise/ghe-cluster-status-mysql
```
- 监控仓库和 Gist 数据的复制:
- Monitor replication of repository and Gist data:
```
ghe-spokes status
```
- 监控附件和 LFS 数据的复制:
- Monitor replication of attachment and LFS data:
```
ghe-storage replication-status
```
- 监控 Pages 数据的复制:
- Monitor replication of Pages data:
```
ghe-dpages replication-status
```
你可以使用 `ghe-cluster-status` 查看群集的整体运行状况。 有关详细信息,请参阅“[命令行实用工具](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)”。
You can use `ghe-cluster-status` to review the overall health of your cluster. For more information, see "[Command-line utilities](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)."
## 故障转移后重新配置高可用性复制
## Reconfiguring high availability replication after a failover
从群集的产动节点故障转移到群集的被动节点后,您可以通过两种方式重新配置高可用性副本。
After you fail over from the cluster's active nodes to the cluster's passive nodes, you can reconfigure high availability replication in two ways.
### 预配和配置新的被动节点
### Provisioning and configuring new passive nodes
故障转移后,您可以通过两种方式重新配置高可用性。 选择的方法将取决于故障转移的原因以及原始主动节点的状态。
After a failover, you can reconfigure high availability in two ways. The method you choose will depend on the reason that you failed over, and the state of the original active nodes.
1. 为辅助数据中心中的每个新主动节点预配和配置一组新的被动节点。
1. Provision and configure a new set of passive nodes for each of the new active nodes in your secondary datacenter.
2. 将旧的主动节点用作新的被动节点。
2. Use the old active nodes as the new passive nodes.
重新配置高可用性的过程与高可用性的初始配置相同。 有关详细信息,请参阅“[为群集创建高可用性副本](#creating-a-high-availability-replica-for-a-cluster)”。
The process for reconfiguring high availability is identical to the initial configuration of high availability. For more information, see "[Creating a high availability replica for a cluster](#creating-a-high-availability-replica-for-a-cluster)."
## 禁用群集的高可用性复制
## Disabling high availability replication for a cluster
您可以停止复制到 {% data variables.product.prodname_ghe_server %} 群集部署的被动节点。
You can stop replication to the passive nodes for your cluster deployment of {% data variables.product.prodname_ghe_server %}.
{% data reusables.enterprise_clustering.ssh-to-a-node %}
{% data reusables.enterprise_clustering.open-configuration-file %}
3. 在顶级 `[cluster]` 部分中,删除 `redis-master-replica` `mysql-master-replica` 键值对。
3. In the top-level `[cluster]` section, delete the `redis-master-replica`, and `mysql-master-replica` key-value pairs.
4. 删除被动节点的每个部分。 对于被动节点,`replica` 配置为 `enabled`
4. Delete each section for a passive node. For passive nodes, `replica` is configured as `enabled`.
{% data reusables.enterprise_clustering.apply-configuration %}
{% data reusables.enterprise_clustering.configuration-finished %}
{% data variables.product.prodname_ghe_server %} 返回提示后,您已完成禁用高可用性复制操作。
After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished disabling high availability replication.

View File

@@ -1,6 +1,6 @@
---
title: 创建高可用性副本
intro: 在主动/被动配置中,副本设备是主设备的冗余副本。 如果主设备发生故障,高可用性模式允许副本作为主设备运行,从而最大限度地减少服务中断。
title: Creating a high availability replica
intro: 'In an active/passive configuration, the replica appliance is a redundant copy of the primary appliance. If the primary appliance fails, high availability mode allows the replica to act as the primary appliance, allowing minimal service disruption.'
redirect_from:
- /enterprise/admin/installation/creating-a-high-availability-replica
- /enterprise/admin/enterprise-management/creating-a-high-availability-replica
@@ -13,94 +13,92 @@ topics:
- High availability
- Infrastructure
shortTitle: Create HA replica
ms.openlocfilehash: 0b838049fe0d520be8cb88382314b25c5bba2b28
ms.sourcegitcommit: dc42bb4a4826b414751ffa9eed38962c3e3fea8e
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 07/13/2022
ms.locfileid: '146332758'
---
{% data reusables.enterprise_installation.replica-limit %}
## <a name="creating-a-high-availability-replica"></a>创建高可用性副本
## Creating a high availability replica
1. 在所需平台上设置新的 {% data variables.product.prodname_ghe_server %} 设备。 副本设备应镜像主设备的 CPURAM 和存储设置。 建议您在独立环境中安装副本设备。 底层硬件、软件和网络组件应与主设备的相应部分隔离。 如果要使用云提供商,请使用单独的区域或分区。 有关详细信息,请参阅“[设置 {% data variables.product.prodname_ghe_server %} 实例](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance)”。
1. 确保主设备和新的副本设备可以通过端口 122/TCP 1194/UDP 相互通信。 有关详细信息,请参阅“[网络端口](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)”。
1. 在浏览器中,导航到新副本设备的 IP 地址并上传您的 {% data variables.product.prodname_enterprise %} 许可。
1. Set up a new {% data variables.product.prodname_ghe_server %} appliance on your desired platform. The replica appliance should mirror the primary appliance's CPU, RAM, and storage settings. We recommend that you install the replica appliance in an independent environment. The underlying hardware, software, and network components should be isolated from those of the primary appliance. If you are a using a cloud provider, use a separate region or zone. For more information, see ["Setting up a {% data variables.product.prodname_ghe_server %} instance"](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance).
1. Ensure that the new appliance can communicate with all other appliances in this high availability environment over ports 122/TCP and 1194/UDP. For more information, see "[Network ports](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)."
1. In a browser, navigate to the new replica appliance's IP address and upload your {% data variables.product.prodname_enterprise %} license.
{% data reusables.enterprise_installation.replica-steps %}
1. 使用 SSH 连接到副本设备的 IP 地址。
1. Connect to the replica appliance's IP address using SSH.
```shell
$ ssh -p 122 admin@<em>REPLICA IP</em>
$ ssh -p 122 admin@REPLICA_IP
```
{% data reusables.enterprise_installation.generate-replication-key-pair %} {% data reusables.enterprise_installation.add-ssh-key-to-primary %}
1. 要验证到主设备的连接并为新副本启用副本模式,请再次运行 `ghe-repl-setup`
{% data reusables.enterprise_installation.generate-replication-key-pair %}
{% data reusables.enterprise_installation.add-ssh-key-to-primary %}
1. To verify the connection to the primary and enable replica mode for the new replica, run `ghe-repl-setup` again.
```shell
$ ghe-repl-setup <em>PRIMARY IP</em>
$ ghe-repl-setup PRIMARY_IP
```
{% data reusables.enterprise_installation.replication-command %} {% data reusables.enterprise_installation.verify-replication-channel %}
{% data reusables.enterprise_installation.replication-command %}
{% data reusables.enterprise_installation.verify-replication-channel %}
## <a name="creating-geo-replication-replicas"></a>创建 Geo-replication 副本
## Creating geo-replication replicas
此示例配置使用一个主设备和两个副本,它们位于三个不同的地理区域。 由于三个节点可以位于不同网络中,要求所有节点均可从其他所有节点到达。 必需的管理端口至少应向其他所有节点开放。 有关端口要求的详细信息,请参阅“[网络端口](/enterprise/admin/guides/installation/network-ports/#administrative-ports)”。
This example configuration uses a primary and two replicas, which are located in three different geographic regions. While the three nodes can be in different networks, all nodes are required to be reachable from all the other nodes. At the minimum, the required administrative ports should be open to all the other nodes. For more information about the port requirements, see "[Network Ports](/enterprise/admin/guides/installation/network-ports/#administrative-ports)."
1. 在第一个副本上运行 `ghe-repl-setup`,采用与创建标准双节点配置相同的方式创建第一个副本。
{% data reusables.enterprise_clustering.network-latency %}{% ifversion ghes > 3.2 %} If latency is more than 70 milliseconds, we recommend cache replica nodes instead. For more information, see "[Configuring a repository cache](/admin/enterprise-management/caching-repositories/configuring-a-repository-cache)."{% endif %}
1. Create the first replica the same way you would for a standard two node configuration by running `ghe-repl-setup` on the first replica.
```shell
(replica1)$ ghe-repl-setup <em>PRIMARY IP</em>
(replica1)$ ghe-repl-setup PRIMARY_IP
(replica1)$ ghe-repl-start
```
2. 创建第二个副本并使用 `ghe-repl-setup --add` 命令。 `--add` 标志可防止其覆盖现有的复制配置,并将新副本添加到配置中。
2. Create a second replica and use the `ghe-repl-setup --add` command. The `--add` flag prevents it from overwriting the existing replication configuration and adds the new replica to the configuration.
```shell
(replica2)$ ghe-repl-setup --add <em>PRIMARY IP</em>
(replica2)$ ghe-repl-setup --add PRIMARY_IP
(replica2)$ ghe-repl-start
```
3. 默认情况下,副本被配置到同一个数据中心,现在将尝试从同一个数据中心中的现有节点播种。 为数据中心选项设置不同的值,通过这种方式为不同的数据中心配置副本。 可以随意设定特定值,只要数值彼此不同即可。 在每个节点上运行 `ghe-repl-node` 命令并指定数据中心。
3. By default, replicas are configured to the same datacenter, and will now attempt to seed from an existing node in the same datacenter. Configure the replicas for different datacenters by setting a different value for the datacenter option. The specific values can be anything you would like as long as they are different from each other. Run the `ghe-repl-node` command on each node and specify the datacenter.
在主设备上:
On the primary:
```shell
(primary)$ ghe-repl-node --datacenter <em>[PRIMARY DC NAME]</em>
(primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME]
```
在第一个副本上:
On the first replica:
```shell
(replica1)$ ghe-repl-node --datacenter <em>[FIRST REPLICA DC NAME]</em>
(replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME]
```
在第二个副本上:
On the second replica:
```shell
(replica2)$ ghe-repl-node --datacenter <em>[SECOND REPLICA DC NAME]</em>
(replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME]
```
{% tip %}
提示:可以同时设置 `--datacenter` `--active` 选项。
**Tip:** You can set the `--datacenter` and `--active` options at the same time.
{% endtip %}
4. 活动副本节点将存储设备数据的副本并为最终用户请求提供服务。 非活动节点将存储设备数据的副本,但无法为最终用户请求提供服务。 使用 `--active` 标志启用活动模式,或使用 `--inactive` 标志启用非活动模式。
4. An active replica node will store copies of the appliance data and service end user requests. An inactive node will store copies of the appliance data but will be unable to service end user requests. Enable active mode using the `--active` flag or inactive mode using the `--inactive` flag.
在第一个副本上:
On the first replica:
```shell
(replica1)$ ghe-repl-node --active
```
在第二个副本上:
On the second replica:
```shell
(replica2)$ ghe-repl-node --active
```
5. 要应用配置,请在主设备上使用 `ghe-config-apply` 命令。
5. To apply the configuration, use the `ghe-config-apply` command on the primary.
```shell
(primary)$ ghe-config-apply
```
## <a name="configuring-dns-for-geo-replication"></a>为 Geo-replication 配置 DNS
## Configuring DNS for geo-replication
使用主节点和副本节点的 IP 地址配置 Geo DNS。 还可为主节点(例如 `primary.github.example.com`)创建 DNS CNAME以通过 SSH 访问主节点或通过 `backup-utils` 进行备份。
Configure Geo DNS using the IP addresses of the primary and replica nodes. You can also create a DNS CNAME for the primary node (e.g. `primary.github.example.com`) to access the primary node via SSH or to back it up via `backup-utils`.
要进行测试,可以将条目添加到本地工作站的 `hosts` 文件(例如 `/etc/hosts`)。 这些示例条目会将 `HOSTNAME` 的请求解析到 `replica2`。 您可以注释不同的行,以特定主机为目标。
For testing, you can add entries to the local workstation's `hosts` file (for example, `/etc/hosts`). These example entries will resolve requests for `HOSTNAME` to `replica2`. You can target specific hosts by commenting out different lines.
```
# <primary IP> <em>HOSTNAME</em>
# <replica1 IP> <em>HOSTNAME</em>
<replica2 IP> <em>HOSTNAME</em>
# <primary IP> HOSTNAME
# <replica1 IP> HOSTNAME
<replica2 IP> HOSTNAME
```
## <a name="further-reading"></a>延伸阅读
## Further reading
- [关于高可用性配置](/enterprise/admin/guides/installation/about-high-availability-configuration)
- [用于复制管理的实用程序](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)
- [关于异地复制](/enterprise/admin/guides/installation/about-geo-replication/)
- "[About high availability configuration](/enterprise/admin/guides/installation/about-high-availability-configuration)"
- "[Utilities for replication management](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)"
- "[About geo-replication](/enterprise/admin/guides/installation/about-geo-replication/)"

View File

@@ -36,7 +36,9 @@ When you use external authentication, {% data variables.location.product_locatio
If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" and "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)."
{% data variables.product.product_name %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} You can resolve username conflicts by making a change in your IdP so that the normalized usernames will be unique.
{% data variables.product.prodname_dotcom %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP, then adding an underscore and short code. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. You can resolve username problems by making a change in your IdP so that the normalized usernames will be unique and within the 39-character limit.
{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %}
{% elsif ghae %}
@@ -62,7 +64,7 @@ These rules may result in your IdP providing the same _IDP-USERNAME_ for multipl
- `bob@fabrikam.com`
- `bob#EXT#fabrikamcom@contoso.com`
This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username conflicts](#resolving-username-conflicts)."
This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username problems](#resolving-username-problems)."
{% endif %}
Usernames{% ifversion ghec %}, including underscore and short code,{% endif %} must not exceed 39 characters.
@@ -83,7 +85,7 @@ When you configure SAML authentication, {% data variables.product.product_name %
1. Usernames created from email addresses are created from the normalized characters that precede the `@` character.
1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username conflicts](#resolving-username-conflicts)."{% endif %}
1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username problems](#resolving-username-problems)."{% endif %}
### Examples of username normalization
@@ -121,11 +123,16 @@ When you configure SAML authentication, {% data variables.product.product_name %
{% endif %}
{% ifversion ghec %}
## Resolving username conflicts
## Resolving username problems
When a new user is being provisioned, if the user's normalized username conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error.
When a new user is being provisioned, if the username is longer than 39 characters (including underscore and short code), or conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error.
To resolve this problem, you must make a change in your IdP so that the normalized usernames will be unique. If you cannot change the identifier that's being normalized, you can change the attribute mapping for the `userName` attribute. If you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history.
To resolve this problem, you must make one of the following changes in your IdP so that all normalized usernames will be within the character limit and unique.
- Change the `userName` attribute value for individual users that are causing problems
- Change the `userName` attribute mapping for all users
- Configure a custom `userName` attribute for all users
When you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history.
{% note %}
@@ -133,9 +140,9 @@ To resolve this problem, you must make a change in your IdP so that the normaliz
{% endnote %}
### Resolving username conflicts with Azure AD
### Resolving username problems with Azure AD
To resolve username conflicts in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias.
To resolve username problems in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias.
1. In Azure AD, open the {% data variables.product.prodname_emu_idp_application %} application.
1. In the left sidebar, click **Provisioning**.
@@ -146,9 +153,9 @@ To resolve username conflicts in Azure AD, either modify the User Principal Name
- To map an existing attribute in Azure AD to the `userName` attribute in {% data variables.product.prodname_dotcom %}, click your desired attribute field. Then, save and wait for a provisioning cycle to occur within about 40 minutes.
- To use an expression instead of an existing attribute, change the Mapping type to "Expression", then add a custom expression that will make this value unique for all users. For example, you could use `[FIRST NAME]-[LAST NAME]-[EMPLOYEE ID]`. For more information, see [Reference for writing expressions for attribute mappings in Azure Active Directory](https://docs.microsoft.com/en-us/azure/active-directory/app-provisioning/functions-for-customizing-application-data) in Microsoft Docs.
### Resolving username conflicts with Okta
### Resolving username problems with Okta
To resolve username conflicts in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application.
To resolve username problems in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application.
1. In Okta, open the {% data variables.product.prodname_emu_idp_application %} application.
1. Click **Sign On**.

View File

@@ -136,7 +136,9 @@ By default, when an unauthenticated user attempts to access an enterprise that u
{% data variables.product.product_name %} automatically creates a username for each person by normalizing an identifier provided by your IdP. For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)."
A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)."
A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username problems](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-problems)."
{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %}
The profile name and email address of a {% data variables.enterprise.prodname_managed_user %} is also provided by the IdP. {% data variables.enterprise.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address.

View File

@@ -168,9 +168,19 @@ By default, when you create a new enterprise, workflows are not allowed to creat
{% data reusables.actions.cache-default-size %} {% data reusables.actions.cache-eviction-process %}
However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow repository administrators to configure a total cache size up to 15 GB if necessary.
However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow {% ifversion actions-cache-admin-ui %}organization owners and{% endif %} repository administrators to configure a total cache size up to 15 GB if necessary.
People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise policy setting.
{% ifversion actions-cache-admin-ui %}Organization owners can set a lower total cache size that applies to each repository in their organization. {% endif %}People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise {% ifversion actions-cache-admin-ui %}or organization{% endif %} policy setting.
{% ifversion actions-cache-admin-ui %}
{% data reusables.enterprise-accounts.access-enterprise %}
{% data reusables.enterprise-accounts.policies-tab %}
{% data reusables.enterprise-accounts.actions-tab %}
1. In the "Artifact, cache and log settings" section, under **Maximum cache size limit**, enter a value, then click **Save** to apply the setting.
1. In the "Artifact, cache and log settings" section, under **Default cache size limit**, enter a value, then click **Save** to apply the setting.
{% else %}
The policy settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API:
@@ -180,3 +190,5 @@ The policy settings for {% data variables.product.prodname_actions %} cache stor
{% data reusables.actions.cache-no-org-policy %}
{% endif %}
{% endif %}

View File

@@ -125,7 +125,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav
* 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 *
Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %}
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_{% ifversion ghae %}ecdsa{% else %}ed25519{% endif %}
@@ -137,10 +137,10 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav
- If you chose not to add a passphrase to your key, you should omit the `UseKeychain` line.
- If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *` section.
- If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %}` section.
```
Host *
Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %}
IgnoreUnknown UseKeychain
```
{% endnote %}

View File

@@ -35,8 +35,6 @@ When you create a {% data variables.product.pat_generic %}, we recommend that yo
If a valid OAuth token, {% data variables.product.prodname_github_app %} token, or {% data variables.product.pat_generic %} is pushed to a public repository or public gist, the token will be automatically revoked.
OAuth tokens and personal {% data variables.product.pat_v1_plural %} pushed to public repositories and public gists will only be revoked if the token has scopes.{% ifversion pat-v2 %} {% data variables.product.pat_v2_caps %}s will always be revoked.{% endif %}
{% endif %}
{% ifversion fpt or ghec %}

View File

@@ -860,7 +860,7 @@ registries:
The `npm-registry` type supports username and password, or token.
When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password.
When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password.
{% raw %}
```yaml
@@ -882,6 +882,8 @@ registries:
token: ${{secrets.MY_GITHUB_PERSONAL_TOKEN}}
```
{% endraw %}
{% ifversion dependabot-yarn-v3-update %}
For security reasons, {% data variables.product.prodname_dependabot %} does not set environment variables. Yarn (v2 and later) requires that any accessed environment variables are set. When accessing environment variables in your `.yarnrc.yml` file, you should provide a fallback value such as {% raw %}`${ENV_VAR-fallback}`{% endraw %} or {% raw %}`${ENV_VAR:-fallback}`{% endraw %}. For more information, see [Yarnrc files](https://yarnpkg.com/configuration/yarnrc) in the Yarn documentation.{% endif %}
### `nuget-feed`

View File

@@ -1,6 +1,6 @@
---
title: Protecting pushes with secret scanning
intro: 'You can use {% data variables.product.prodname_secret_scanning %} to prevent supported secrets from being pushed into your organization or repository by enabling push protection.'
intro: 'You can use {% data variables.product.prodname_secret_scanning %} to prevent supported secrets from being pushed into your {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository by enabling push protection.'
product: '{% data reusables.gated-features.secret-scanning %}'
miniTocMaxHeadingLevel: 3
versions:
@@ -34,10 +34,18 @@ For information on the secrets and service providers supported for push protecti
## Enabling {% data variables.product.prodname_secret_scanning %} as a push protection
For you to use {% data variables.product.prodname_secret_scanning %} as a push protection, the organization or repository needs to have both {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_secret_scanning %} enabled. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)," "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)," and "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)."
For you to use {% data variables.product.prodname_secret_scanning %} as a push protection, the {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository needs to have both {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_secret_scanning %} enabled. For more information, see {% ifversion secret-scanning-enterprise-level %}"[Managing security and analysis settings for your enterprise](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise),"{% endif %} "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)," "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)," and "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)."
Organization owners, security managers, and repository administrators can enable push protection for {% data variables.product.prodname_secret_scanning %} via the UI and API. For more information, see "[Repositories](/rest/reference/repos#update-a-repository)" and expand the "Properties of the `security_and_analysis` object" section in the REST API documentation.
{% ifversion secret-scanning-enterprise-level %}
### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for your enterprise
{% data reusables.enterprise-accounts.access-enterprise %}
{% data reusables.enterprise-accounts.settings-tab %}
1. In the left sidebar, click **Code security and analysis**.
{% data reusables.advanced-security.secret-scanning-push-protection-enterprise %}
{% endif %}
### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for an organization
{% data reusables.organizations.navigate-to-org %}
@@ -64,8 +72,6 @@ Up to five detected secrets will be displayed at a time on the command line. If
Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain organization-specific resources and advice, such as directions on using a recommended secrets vault or who to contact for questions relating to the blocked secret.
{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %}
![Screenshot showing that a push is blocked when a user attempts to push a secret to a repository](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png)
{% else %}
@@ -104,9 +110,6 @@ If {% data variables.product.prodname_dotcom %} blocks a secret that you believe
{% ifversion push-protection-custom-link-orgs %}
Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain resources and advice specific to your organization. For example, the custom link can point to a README file with information about the organization's secret vault, which teams and individuals to escalate questions to, or the organization's approved policy for working with secrets and rewriting commit history.
{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %}
{% endif %}
You can remove the secret from the file using the web UI. Once you remove the secret, the banner at the top of the page will change and tell you that you can now commit your changes.

View File

@@ -30,9 +30,6 @@ If {% data variables.product.prodname_dotcom %} blocks a secret that you believe
{% ifversion push-protection-custom-link-orgs %}
Organization admins can provide a custom link that will be included in the message from {% data variables.product.product_name %} when your push is blocked. This custom link can contain resources and advice specific to your organization and its policies.
{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %}
{% endif %}
## Resolving a blocked push on the command line

View File

@@ -11,6 +11,7 @@ topics:
- Codespaces
children:
- /personalizing-github-codespaces-for-your-account
- /renaming-a-codespace
- /changing-the-machine-type-for-your-codespace
- /setting-your-default-editor-for-github-codespaces
- /setting-your-default-region-for-github-codespaces

View File

@@ -59,6 +59,8 @@ In the example `postCreate.sh` file below, the contents of the `config` director
ln -sf $PWD/.devcontainer/config $HOME/config && set +x
```
For more information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace)."
## Stopping a codespace
{% data reusables.codespaces.stopping-a-codespace %} For more information, see "[Stopping and starting a codespace](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace)."

View File

@@ -16,7 +16,6 @@ children:
- /using-source-control-in-your-codespace
- /using-github-codespaces-for-pull-requests
- /stopping-and-starting-a-codespace
- /renaming-a-codespace
- /forwarding-ports-in-your-codespace
- /default-environment-variables-for-your-codespace
- /connecting-to-a-private-network

View File

@@ -1,56 +0,0 @@
---
title: Renaming a codespace
intro: You can use the {% data variables.product.prodname_cli %} to change the codespace display name to one of your choice.
product: '{% data reusables.gated-features.codespaces %}'
versions:
fpt: '*'
ghec: '*'
type: how_to
topics:
- Codespaces
- Fundamentals
- Developer
shortTitle: Rename a codespace
---
## About renaming a codespace
Each codespace is assigned an auto-generated display name. If you have multiple codespaces, the display name helps you to differentiate between codespaces. For example: `literate space parakeet`. You can change the display name for your codespace.
To find the display name of a codespace:
- On {% data variables.product.product_name %}, view your list of codespaces at https://github.com/codespaces.
![Screenshot of the list of codespaces in GitHub](/assets/images/help/codespaces/codespaces-list-display-name.png)
- In the {% data variables.product.prodname_vscode %} desktop application, or the {% data variables.product.prodname_vscode_shortname %} web client, click the Remote Explorer. The display name is shown below the repository name. For example: `symmetrical space telegram` in the screenshot below.
![Screenshot of the Remote Explorer in VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png)
{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %}
- In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`.
### Permanent codespace names
In addition to the display name, when you create a codespace, a permanent name is also assigned to the codespace. The name is a combination of your {% data variables.product.company_short %} handle, the repository name, and some random characters. For example: `octocat-myrepo-gmc7`. You can't change this name.
To find the permanent name of a codespace:
* On {% data variables.product.product_name %}, the permanent name is shown in a pop-up when you hover over the **Open in browser** option on https://github.com/codespaces.
![Screenshot of the codespace name shown on hover over](/assets/images/help/codespaces/find-codespace-name-github.png)
* In a codespace, use this command in the terminal: `echo $CODESPACE_NAME`.
* In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`.
## Renaming a codespace
Changing the display name of a codespace can be useful if you have multiple codespaces that you will be using for an extended period. An appropriate name helps you identify a codespace that you use for a particular purpose. You can change the display name for your codespace by using the {% data variables.product.prodname_cli %}.
To rename a codespace, use the `gh codespace edit` subcommand:
```shell
gh codespace edit -c PERMANENT-NAME-OF-CODESPACE -d NEW-DISPLAY-NAME
```
In this example, replace `permanent name of the codespace` with the permanent name of the codespace. Replace `new display name` with the desired display name.

View File

@@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}'
miniTocMaxHeadingLevel: 3
versions:
fpt: '*'
ghec: '*'
type: how_to
topics:
- Codespaces
@@ -24,6 +25,7 @@ You can work with {% data variables.product.prodname_github_codespaces %} in the
- [Create a new codespace](#create-a-new-codespace)
- [Stop a codespace](#stop-a-codespace)
- [Delete a codespace](#delete-a-codespace)
- [Rename a codespace](#rename-a-codespace)
- [SSH into a codespace](#ssh-into-a-codespace)
- [Open a codespace in {% data variables.product.prodname_vscode %}](#open-a-codespace-in--data-variablesproductprodname_vscode-)
- [Open a codespace in JupyterLab](#open-a-codespace-in-jupyterlab)
@@ -74,6 +76,8 @@ gh codespace list
The list includes the unique name of each codespace, which you can use in other `gh codespace` commands.
An asterisk at the end of the branch name for a codespace indicates that there are uncommitted or unpushed changes in that codespace.
### Create a new codespace
```shell
@@ -98,6 +102,14 @@ gh codespace delete -c CODESPACE-NAME
For more information, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace)."
### Rename a codespace
```shell
gh codespace edit -c CODESPACE-NAME -d DISPLAY-NAME
```
For more information, see "[Renaming a codespace](/codespaces/customizing-your-codespace/renaming-a-codespace)."
### SSH into a codespace
To run commands on the remote codespace machine, from your terminal, you can SSH into the codespace.
@@ -215,4 +227,4 @@ You can use the {% data variables.product.prodname_cli %} extension to create a
gh codespace edit -m <em>machine-type-name</em>
```
For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)."
For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)."

View File

@@ -35,7 +35,7 @@ When you create a codespace, a [shallow clone](https://github.blog/2020-12-21-ge
### Step 2: Container is created
{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't [configure a container](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project), {% data variables.product.prodname_github_codespaces %} uses a [default image](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project#using-the-default-configuration), which has many languages and runtimes available. For information on what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository.
{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't specify a custom Docker image in your configuration, {% data variables.product.prodname_codespaces %} uses a default image, which has many languages and runtimes available. For information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)." For details of what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository.
{% note %}

View File

@@ -92,11 +92,10 @@ Within a codespace, you have access to the {% data variables.product.prodname_vs
1. In the left sidebar, click the Extensions icon.
1. In the search bar, enter `fairyfloss` and install the fairyfloss extension.
1. In the search bar, type `fairyfloss` and click **Install**.
![Add an extension](/assets/images/help/codespaces/add-extension.png)
1. Click **Install in Codespaces**.
1. Select the `fairyfloss` theme by selecting it from the list.
![Select the fairyfloss theme](/assets/images/help/codespaces/fairyfloss.png)

View File

@@ -44,7 +44,8 @@ includeGuides:
- /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization
- /codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces
- /codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types
- /codespaces/managing-codespaces-for-your-organization/retricting-the-idle-timeout-period
- /codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md
- /codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period
- /codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces
- /codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports
- /codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces

View File

@@ -16,6 +16,7 @@ children:
- /managing-repository-access-for-your-organizations-codespaces
- /reviewing-your-organizations-audit-logs-for-github-codespaces
- /restricting-access-to-machine-types
- /restricting-the-base-image-for-codespaces
- /restricting-the-visibility-of-forwarded-ports
- /restricting-the-idle-timeout-period
- /restricting-the-retention-period-for-codespaces

View File

@@ -14,7 +14,9 @@ topics:
## Overview
Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)."
Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)."
If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. The compute cost for a codespace is proportional to the number of processor cores in the machine type you choose. For example, the compute cost of using a codespace for an hour on a 16-core machine is eight times greater than a 2-core machine. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)."
As an organization owner, you may want to configure constraints on the types of machine that are available. For example, if the work in your organization doesn't require significant compute power or storage space, you can remove the highly resourced machines from the list of options that people can choose from. You do this by defining one or more policies in the {% data variables.product.prodname_github_codespaces %} settings for your organization.
@@ -52,21 +54,29 @@ If you add an organization-wide policy, you should set it to the largest choice
{% data reusables.codespaces.codespaces-org-policies %}
1. Click **Add constraint** and choose **Machine types**.
![Add a constraint for machine types](/assets/images/help/codespaces/add-constraint-dropdown.png)
![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown.png)
1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint, then clear the selection of any machine types that you don't want to be available.
![Edit the machine type constraint](/assets/images/help/codespaces/edit-machine-constraint.png)
![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-machine-constraint.png)
{% data reusables.codespaces.codespaces-policy-targets %}
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)."
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see:
* "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)"
* "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)"
* "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)"
* "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)"
1. After you've finished adding constraints to your policy, click **Save**.
The policy will be applied to all new codespaces that are billable to your organization. The machine type constraint is also applied to existing codespaces when someone attempts to restart a stopped codespace or reconnect to an active codespace.
## Editing a policy
You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy.
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)."
1. Click the name of the policy you want to edit.
1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Machine types" constraint.
1. Make the required changes then click **Save**.
## Deleting a policy
@@ -74,7 +84,7 @@ You can edit an existing policy. For example, you may want to add or remove cons
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)."
1. Click the delete button to the right of the policy you want to delete.
![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png)
![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png)
## Further reading

View File

@@ -49,21 +49,25 @@ If you add an organization-wide policy with a timeout constraint, you should set
{% data reusables.codespaces.codespaces-org-policies %}
1. Click **Add constraint** and choose **Maximum idle timeout**.
![Add a constraint for idle timeout](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png)
![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png)
1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint.
![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png)
![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png)
1. Enter the maximum number of minutes codespaces can remain inactive before they time out, then click **Save**.
![Set the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png)
![Screenshot of setting the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png)
{% data reusables.codespaces.codespaces-policy-targets %}
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)."
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see:
* "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)"
* "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)"
* "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)"
* "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)"
1. After you've finished adding constraints to your policy, click **Save**.
The policy will be applied to all new codespaces that are created, and to existing codespaces the next time they are started.
The policy will be applied to all new codespaces that are billable to your organization. The timeout constraint is also applied to existing codespaces the next time they are started.
## Editing a policy
@@ -71,6 +75,7 @@ You can edit an existing policy. For example, you may want to add or remove cons
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)."
1. Click the name of the policy you want to edit.
1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Maximum idle timeout" constraint.
1. Make the required changes then click **Save**.
## Deleting a policy
@@ -78,4 +83,4 @@ You can edit an existing policy. For example, you may want to add or remove cons
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)."
1. Click the delete button to the right of the policy you want to delete.
![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png)
![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png)

View File

@@ -35,15 +35,15 @@ If you add an organization-wide policy with a retention constraint, you should s
{% data reusables.codespaces.codespaces-org-policies %}
1. Click **Add constraint** and choose **Retention period**.
![Add a constraint for retention periods](/assets/images/help/codespaces/add-constraint-dropdown-retention.png)
![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-retention.png)
1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint.
![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png)
![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png)
1. Enter the maximum number of days codespaces can remain stopped before they are automatically deleted, then click **Save**.
![Set the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png)
![Screenshot of setting the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png)
{% note %}
@@ -55,10 +55,14 @@ If you add an organization-wide policy with a retention constraint, you should s
{% endnote %}
{% data reusables.codespaces.codespaces-policy-targets %}
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)."
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see:
* "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)"
* "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)"
* "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)"
* "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)"
1. After you've finished adding constraints to your policy, click **Save**.
The policy will be applied to all new codespaces that are created.
The policy will be applied to all new codespaces that are billable to your organization. The retention period constraint is only applied on codespace creation.
## Editing a policy
@@ -68,6 +72,7 @@ The retention period constraint is only applied to codespaces when they are crea
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)."
1. Click the name of the policy you want to edit.
1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Retention period" constraint.
1. Make the required changes then click **Save**.
## Deleting a policy
@@ -77,4 +82,4 @@ You can delete a policy at any time. Deleting a policy has no effect on existing
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)."
1. Click the delete button to the right of the policy you want to delete.
![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png)
![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png)

View File

@@ -45,25 +45,33 @@ If you add an organization-wide policy, you should set it to the most lenient vi
{% data reusables.codespaces.codespaces-org-policies %}
1. Click **Add constraint** and choose **Port visibility**.
![Add a constraint for port visibility](/assets/images/help/codespaces/add-constraint-dropdown-ports.png)
![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-ports.png)
1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint.
![Edit the port visibility constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png)
![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png)
1. Clear the selection of the port visibility options (**Org** or **Public**) that you don't want to be available.
![Choose the port visibility options](/assets/images/help/codespaces/choose-port-visibility-options.png)
![Screenshot of clearing a port visibility option](/assets/images/help/codespaces/choose-port-visibility-options.png)
{% data reusables.codespaces.codespaces-policy-targets %}
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)."
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see:
* "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)"
* "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)"
* "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)"
* "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)"
1. After you've finished adding constraints to your policy, click **Save**.
The policy will be applied to all new codespaces that are billable to your organization. The port visibility constraint is also applied to existing codespaces the next time they are started.
## Editing a policy
You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy.
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)."
1. Click the name of the policy you want to edit.
1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Port visibility" constraint.
1. Make the required changes then click **Save**.
## Deleting a policy
@@ -71,4 +79,4 @@ You can edit an existing policy. For example, you may want to add or remove cons
1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)."
1. Click the delete button to the right of the policy you want to delete.
![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png)
![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png)

View File

@@ -93,10 +93,10 @@ You can use secrets in a codespace after the codespace is built and is running.
* When launching an application from the integrated terminal or ssh session.
* Within a dev container lifecycle script that is run after the codespace is running. For more information about dev container lifecycle scripts, see the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#lifecycle-scripts).
Codespace secrets cannot be used during:
Codespace secrets cannot be used:
* Codespace build time (that is, within a Dockerfile or custom entry point).
* Within a dev container feature. For more information, see the `features` attribute in the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#general-properties).
* During codespace build time (that is, within a Dockerfile or custom entry point).
* Within a dev container feature. For more information, see the `features` property in the [dev containers specification](https://containers.dev/implementors/json_reference/#general-properties) on containers.dev.
## Further reading

View File

@@ -65,7 +65,7 @@ The Dockerfile for a dev container is typically located in the `.devcontainer` f
{% note %}
**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)."
**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. The image you specify here must be allowed by any organization image policy that has been set. For more information, see "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)." If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)."
{% endnote %}

View File

@@ -104,14 +104,12 @@ The newly added `devcontainer.json` file defines a few properties that are descr
// "ASPNETCORE_Kestrel__Certificates__Default__Path": "/home/vscode/.aspnet/https/aspnetapp.pfx",
// },
//
// 3. Do one of the following depending on your scenario:
// * When using GitHub Codespaces and/or Remote - Containers:
// 1. Start the container
// 2. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer
// 3. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https"
// 3. Start the container.
//
// 4. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer.
//
// 5. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https".
//
// * If only using Remote - Containers with a local container, uncomment this line instead:
// "mounts": [ "source=${env:HOME}${env:USERPROFILE}/.aspnet/https,target=/home/vscode/.aspnet/https,type=bind" ],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "dotnet restore",

View File

@@ -32,7 +32,7 @@ This guide shows you how to set up your Java project in {% data variables.produc
If you dont see this option, {% data variables.product.prodname_github_codespaces %} isn't available for your project. See [Access to {% data variables.product.prodname_github_codespaces %}](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces) for more information.
When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a common set of tools like git, wget, rsync, openssh, and nano.
When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a set of commonly used tools such as git, wget, rsync, openssh, and nano.
{% data reusables.codespaces.customize-vcpus-and-ram %}

View File

@@ -1613,7 +1613,7 @@ This event occurs when someone triggers a workflow run on GitHub or sends a `POS
|-----|-----|-----|
| `inputs` | `object` | Inputs to the workflow. Each key represents the name of the input while its value represents the value of that input. |
{% data reusables.webhooks.org_desc %}
| `ref` | `string` | The branch ref from which the workflow was run. |
| `ref` | `string` | The branch or tag from which the workflow was run. |
{% data reusables.webhooks.repo_desc %}
{% data reusables.webhooks.sender_desc %}
| `workflow` | `string` | Relative path to the workflow file which contains the workflow. |

View File

@@ -1,6 +1,6 @@
---
title: 参与项目
intro: 了解如何通过复刻参与项目。
title: Contributing to projects
intro: Learn how to contribute to a project through forking.
permissions: '{% data reusables.enterprise-accounts.emu-permission-fork %}'
versions:
fpt: '*'
@@ -12,61 +12,58 @@ topics:
- Forks
- GitHub
- Open Source
ms.openlocfilehash: 190bfbbfc799a802a082aa01e9f93f2ad379e471
ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/05/2022
ms.locfileid: '147425229'
---
## 关于复刻
在自己使用 GitHub 一段时间后,您可能会发现自己也想参与别人的项目。 或者,也许您想使用某人的项目作为自己项目的起点。 此过程称为复刻。
## About forking
创建“复刻”就是生成他人项目的个人副本。 复刻可作为原始存储库和个人副本之间的桥梁。 您可以提交拉取请求,通过提供对原始项目的更改来帮助改善其他人的项目。 复刻是 GitHub 社交编码的核心。 有关详细信息,请参阅“[为存储库创建分支](/get-started/quickstart/fork-a-repo)”。
After using GitHub by yourself for a while, you may find yourself wanting to contribute to someone elses project. Or maybe youd like to use someones project as the starting point for your own. This process is known as forking.
## 复刻仓库
Creating a "fork" is producing a personal copy of someone else's project. Forks act as a sort of bridge between the original repository and your personal copy. You can submit pull requests to help make other people's projects better by offering your changes up to the original project. Forking is at the core of social coding at GitHub. For more information, see "[Fork a repo](/get-started/quickstart/fork-a-repo)."
本教程使用 [Spoon-Knife 项目](https://github.com/octocat/Spoon-Knife),这是一个托管在 {% data variables.product.prodname_dotcom_the_website %} 上的测试存储库,可让你测试分支和拉取请求工作流。
## Forking a repository
1. 导航到位于 https://github.com/octocat/Spoon-Knife 的 `Spoon-Knife` 项目。
2. 单击“分支”。
![分支按钮](/assets/images/help/repository/fork_button.png)
3. 为分支存储库选择所有者。
![创建一个突出显示所有者下拉菜单的新分支页](/assets/images/help/repository/fork-choose-owner.png)
4. 默认情况下,分支的名称与其父存储库的相同。 可更改分支的名称以进一步区分它。
![创建一个突出显示存储库名称字段的新分支页](/assets/images/help/repository/fork-choose-repo-name.png)
5. 可以选择性地添加分支的说明。
![创建一个突出显示说明字段的新分支页](/assets/images/help/repository/fork-description.png)
6. 选择是仅将默认分支还是将所有分支复制到新分支。 对于许多分支场景(例如参与开源项目),你只需复制默认分支。 默认情况下,只复制默认分支。
![只复制默认分支的选项](/assets/images/help/repository/copy-default-branch-only.png)
7. 单击“创建分支”。
![突出显示的“创建分支”按钮](/assets/images/help/repository/fork-create-button.png)
This tutorial uses [the Spoon-Knife project](https://github.com/octocat/Spoon-Knife), a test repository that's hosted on {% data variables.product.prodname_dotcom_the_website %} that lets you test the fork and pull request workflow.
1. Navigate to the `Spoon-Knife` project at https://github.com/octocat/Spoon-Knife.
2. Click **Fork**.
![Fork button](/assets/images/help/repository/fork_button.png)
3. Select an owner for the forked repository.
![Create a new fork page with owner dropdown emphasized](/assets/images/help/repository/fork-choose-owner.png)
4. By default, forks are named the same as their parent repositories. You can change the name of the fork to distinguish it further.
![Create a new fork page with repository name field emphasized](/assets/images/help/repository/fork-choose-repo-name.png)
5. Optionally, add a description of your fork.
![Create a new fork page with description field emphasized](/assets/images/help/repository/fork-description.png)
6. Choose whether to copy only the default branch or all branches to the new fork. For many forking scenarios, such as contributing to open-source projects, you only need to copy the default branch. By default, only the default branch is copied.
![Option to copy only the default branch](/assets/images/help/repository/copy-default-branch-only.png)
7. Click **Create fork**.
![Emphasized create fork button](/assets/images/help/repository/fork-create-button.png)
{% note %}
注意:如果要从父存储库复制其他分支,可从“分支”页执行此操作 。 有关详细信息,请参阅“[创建和删除存储库中的分支](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)”。
**Note:** If you want to copy additional branches from the parent repository, you can do so from the **Branches** page. For more information, see "[Creating and deleting branches within your repository](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)."
{% endnote %}
## 克隆复刻
## Cloning a fork
您已经成功复刻了 Spoon-Knife 存储库,但到目前为止,它仅存在于 {% data variables.product.product_name %} 上。 为了能够处理该项目,您需要将其克隆到您的计算机。
You've successfully forked the Spoon-Knife repository, but so far, it only exists on {% data variables.product.product_name %}. To be able to work on the project, you will need to clone it to your computer.
您可以使用命令行、{% data variables.product.prodname_cli %} {% data variables.product.prodname_desktop %} 克隆复刻。
You can clone your fork with the command line, {% data variables.product.prodname_cli %}, or {% data variables.product.prodname_desktop %}.
{% webui %}
1. {% data variables.product.product_name %} 上,导航到 Spoon-Knife 存储库的分支。
{% data reusables.repositories.copy-clone-url %} {% data reusables.command_line.open_the_multi_os_terminal %} {% data reusables.command_line.change-current-directory-clone %}
4. 键入 `git clone`,然后粘贴之前复制的 URL。 它将如下所示,使用你的 {% data variables.product.product_name %} 用户名替换 `YOUR-USERNAME`
1. On {% data variables.product.product_name %}, navigate to **your fork** of the Spoon-Knife repository.
{% data reusables.repositories.copy-clone-url %}
{% data reusables.command_line.open_the_multi_os_terminal %}
{% data reusables.command_line.change-current-directory-clone %}
4. Type `git clone`, and then paste the URL you copied earlier. It will look like this, with your {% data variables.product.product_name %} username instead of `YOUR-USERNAME`:
```shell
$ git clone https://{% data variables.command_line.codeblock %}/<em>YOUR-USERNAME</em>/Spoon-Knife
$ git clone https://{% data variables.command_line.codeblock %}/YOUR-USERNAME/Spoon-Knife
```
5. **Enter**。 将创建您的本地克隆。
5. Press **Enter**. Your local clone will be created.
```shell
$ git clone https://{% data variables.command_line.codeblock %}/<em>YOUR-USERNAME</em>/Spoon-Knife
$ git clone https://{% data variables.command_line.codeblock %}/YOUR-USERNAME/Spoon-Knife
> Cloning into `Spoon-Knife`...
> remote: Counting objects: 10, done.
> remote: Compressing objects: 100% (8/8), done.
@@ -80,25 +77,57 @@ ms.locfileid: '147425229'
{% data reusables.cli.cli-learn-more %}
若要创建分支的克隆,请使用 `--clone` 标记。
To create a clone of your fork, use the `--clone` flag.
```shell
gh repo fork <em>repository</em> --clone=true
gh repo fork REPOSITORY --clone=true
```
{% endcli %}
{% desktop %}
{% data reusables.desktop.choose-clone-repository %} {% data reusables.desktop.cloning-location-tab %} {% data reusables.desktop.cloning-repository-list %} {% data reusables.desktop.choose-local-path %} {% data reusables.desktop.click-clone %}
{% data reusables.desktop.choose-clone-repository %}
{% data reusables.desktop.cloning-location-tab %}
{% data reusables.desktop.cloning-repository-list %}
{% data reusables.desktop.choose-local-path %}
{% data reusables.desktop.click-clone %}
{% enddesktop %}
## 创建和推送更改
## Creating a branch to work on
继续使用你喜欢的文本编辑器(例如 [Visual Studio Code](https://code.visualstudio.com))对项目进行一些更改。 例如,可以更改 `index.html` 中的文本以添加你的 GitHub 用户名。
Before making changes to the project, you should create a new branch and check it out. By keeping changes in their own branch, you follow GitHub Flow and ensure that it will be easier to contribute to the same project again in the future. For more information, see "[GitHub Flow](/get-started/quickstart/github-flow#following-github-flow)."
当您准备好提交更改时,请暂存并提交更改。 `git add .` 告诉 Git 你希望在下一次提交中包含所有更改。 `git commit` 会拍摄这些更改的快照。
{% webui %}
```shell
git branch BRANCH-NAME
git checkout BRANCH-NAME
```
{% endwebui %}
{% cli %}
```shell
git branch BRANCH-NAME
git checkout BRANCH-NAME
```
{% endcli %}
{% desktop %}
For more information about how to create and manage branches in {% data variables.product.prodname_desktop %}, see "[Managing branches](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/managing-branches)."
{% enddesktop %}
## Making and pushing changes
Go ahead and make a few changes to the project using your favorite text editor, like [Visual Studio Code](https://code.visualstudio.com). You could, for example, change the text in `index.html` to add your GitHub username.
When you're ready to submit your changes, stage and commit your changes. `git add .` tells Git that you want to include all of your changes in the next commit. `git commit` takes a snapshot of those changes.
{% webui %}
@@ -120,13 +149,13 @@ git commit -m "a short description of the change"
{% desktop %}
有关如何在 {% data variables.product.prodname_desktop %} 中暂存和提交更改的详细信息,请参阅“[提交和查看项目的更改](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project#selecting-changes-to-include-in-a-commit)”。
For more information about how to stage and commit changes in {% data variables.product.prodname_desktop %}, see "[Committing and reviewing changes to your project](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project#selecting-changes-to-include-in-a-commit)."
{% enddesktop %}
暂存和提交文件时,您主要是告诉 Git“好吧拍摄我的更改快照” 您可以继续进行更多更改,并拍摄更多提交快照。
When you stage and commit files, you essentially tell Git, "Okay, take a snapshot of my changes!" You can continue to make more changes, and take more commit snapshots.
目前,您的更改仅存在于本地。 当您准备好将更改推送到 {% data variables.product.product_name %} 时,请将更改推送到远程。
Right now, your changes only exist locally. When you're ready to push your changes up to {% data variables.product.product_name %}, push your changes to the remote.
{% webui %}
@@ -146,24 +175,25 @@ git push
{% desktop %}
有关如何在 {% data variables.product.prodname_desktop %} 中推送更改的详细信息,请参阅“[将更改推送到 GitHub](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/pushing-changes-to-github)”。
For more information about how to push changes in {% data variables.product.prodname_desktop %}, see "[Pushing changes to GitHub](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/pushing-changes-to-github)."
{% enddesktop %}
## 创建拉取请求
## Making a pull request
最后,您可以对主项目提出更改建议了! 这是产生他人项目复刻的最后一步,可以说是最重要的一步。 如果您做了您认为有益于整个社区的改变,绝对应该考虑回馈社区。
At last, you're ready to propose changes into the main project! This is the final step in producing a fork of someone else's project, and arguably the most important. If you've made a change that you feel would benefit the community as a whole, you should definitely consider contributing back.
为此,请转到项目所在的 {% data variables.product.product_name %} 存储库。 在本示例中,它位于 `https://www.github.com/<your_username>/Spoon-Knife`。 你将看到一个横幅,指示你的分支是 `octocat:main` 之前的一个提交。 单击“参与”,然后单击“打开拉取请求” 。
To do so, head on over to the repository on {% data variables.product.product_name %} where your project lives. For this example, it would be at `https://www.github.com/<your_username>/Spoon-Knife`. You'll see a banner indicating that your branch is one commit ahead of `octocat:main`. Click **Contribute** and then **Open a pull request**.
{% data variables.product.product_name %} 会将你带到一个页面,其中显示了分支和 `octocat/Spoon-Knife` 存储库之间的差异。 单击“创建拉取请求”。
{% data variables.product.product_name %} will bring you to a page that shows the differences between your fork and the `octocat/Spoon-Knife` repository. Click **Create pull request**.
{% data variables.product.product_name %} 将带您进入一个页面,您可以在其中输入更改的标题和说明。 重要的是要提供尽可能多的有用信息,在首要位置说明您提出此拉取请求的理由。 项目所有者需要能够确定您的更改是否像您认为的那样对每个人都有用。 最后,单击“创建拉取请求”。
{% data variables.product.product_name %} will bring you to a page where you can enter a title and a description of your changes. It's important to provide as much useful information and a rationale for why you're making this pull request in the first place. The project owner needs to be able to determine whether your change is as useful to everyone as you think it is. Finally, click **Create pull request**.
## 管理反馈
## Managing feedback
拉取请求是一个讨论区域。 在这种情况下Octocat 非常繁忙,可能不会合并您的更改。 对于其他项目,如果项目所有者拒绝您的拉取请求,或者要求提供有关请求原因的更多信息,请不要生气。 甚至可能是项目所有者选择不合并您的拉取请求,这完全没问题。 您的副本将存在于互联网上。 谁知道呢 - 也许您从未见过的人会发现您的更改比原始项目更有价值。
Pull Requests are an area for discussion. In this case, the Octocat is very busy, and probably won't merge your changes. For other projects, don't be offended if the project owner rejects your pull request, or asks for more information on why it's been made. It may even be that the project owner chooses not to merge your pull request, and that's totally okay. Your copy will exist in infamy on the Internet. And who knows--maybe someone you've never met will find your changes much more valuable than the original project.
## 查找项目
## Finding projects
您已成功复刻并回馈存储库。 来吧,再贡献一些!{% ifversion fpt %}有关详细信息,请参阅“[查找在 GitHub 上为开放源代码做出贡献的方法](/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github)”。{% endif %}
You've successfully forked and contributed back to a repository. Go forth, and
contribute some more!{% ifversion fpt %} For more information, see "[Finding ways to contribute to open source on GitHub](/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github)."{% endif %}

View File

@@ -154,3 +154,37 @@ By default, when you create a new organization, workflows are not allowed to {%
1. Click **Save** to apply the settings.
{% endif %}
{% ifversion actions-cache-org-ui %}
## Managing {% data variables.product.prodname_actions %} cache storage for your organization
Organization administrators can view {% ifversion actions-cache-admin-ui %}and manage {% endif %}{% data variables.product.prodname_actions %} cache storage for all repositories in the organization.
### Viewing {% data variables.product.prodname_actions %} cache storage by repository
For each repository in your organization, you can see how much cache storage a repository is using, the number of active caches, and if a repository is near the total cache size limit. For more information about the cache usage and eviction process, see "[Caching dependencies to speed up workflows](/actions/using-workflows/caching-dependencies-to-speed-up-workflows#usage-limits-and-eviction-policy)."
{% data reusables.profile.access_profile %}
{% data reusables.profile.access_org %}
{% data reusables.profile.org_settings %}
1. In the left sidebar, click {% octicon "play" aria-label="The {% data variables.product.prodname_actions %} icon" %} **Actions**, then click **Caches**.
1. Review the list of repositories for information about their {% data variables.product.prodname_actions %} caches. You can click on a repository name to see more detail about the repository's caches.
{% ifversion actions-cache-admin-ui %}
### Configuring {% data variables.product.prodname_actions %} cache storage for your organization
{% data reusables.actions.cache-default-size %}
You can configure the size limit for {% data variables.product.prodname_actions %} caches that will apply to each repository in your organization. The cache size limit for an organization cannot exceed the cache size limit set in the enterprise policy. Repository admins will be able to set a smaller limit in their repositories.
{% data reusables.profile.access_profile %}
{% data reusables.profile.access_org %}
{% data reusables.profile.org_settings %}
{% data reusables.organizations.settings-sidebar-actions-general %}
{% data reusables.actions.change-cache-size-limit %}
{% endif %}
{% endif %}

View File

@@ -1,6 +1,6 @@
---
title: 关于自定义域名和 GitHub 页面
intro: '{% data variables.product.prodname_pages %} 支持使用自定义域名,或者将网站的 URL 根目录从默认值(如 `octocat.github.io`)更改为你拥有的任何域名。'
title: About custom domains and GitHub Pages
intro: '{% data variables.product.prodname_pages %} supports using custom domains, or changing the root of your site''s URL from the default, like `octocat.github.io`, to any domain you own.'
redirect_from:
- /articles/about-custom-domains-for-github-pages-sites
- /articles/about-supported-custom-domains
@@ -14,62 +14,58 @@ versions:
topics:
- Pages
shortTitle: Custom domains in GitHub Pages
ms.openlocfilehash: a2c5ae3df0e2dd6248db6e03fd7c64e973b14f3d
ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/05/2022
ms.locfileid: '145130285'
---
## 支持的自定义域
{% data variables.product.prodname_pages %} 可使用两种类型的域名:子域名和 apex 域名。 有关不支持的自定义域列表,请参阅“[自定义域和 {% data variables.product.prodname_pages %} 故障排除](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)”。
## Supported custom domains
| 支持的自定义域类型 | 示例 |
{% data variables.product.prodname_pages %} works with two types of domains: subdomains and apex domains. For a list of unsupported custom domains, see "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)."
| Supported custom domain type | Example |
|---|---|
| `www` 子域 | `www.example.com` |
| 自定义子域 | `blog.example.com` |
| Apex | `example.com` |
| `www` subdomain | `www.example.com` |
| Custom subdomain | `blog.example.com` |
| Apex domain | `example.com` |
可以为站点设置顶点和/或 `www` 子域配置。 有关 apex 域的详细信息,请参阅“[ {% data variables.product.prodname_pages %} 站点使用顶点域](#using-an-apex-domain-for-your-github-pages-site)”。
You can set up either or both of apex and `www` subdomain configurations for your site. For more information on apex domains, see "[Using an apex domain for your {% data variables.product.prodname_pages %} site](#using-an-apex-domain-for-your-github-pages-site)."
建议始终使用 `www` 子域,即使同时使用顶点域也是如此。 当你使用顶点域创建新网站时,我们会自动尝试保护 `www` 子域,以便在提供你的站点内容时使用,但你需要进行 DNS 更改才能使用 `www` 子域。 如果你配置 `www` 子域,我们会自动尝试保护相关的顶点域。 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site)”。
We recommend always using a `www` subdomain, even if you also use an apex domain. When you create a new site with an apex domain, we automatically attempt to secure the `www` subdomain for use when serving your site's content, but you need to make the DNS changes to use the `www` subdomain. If you configure a `www` subdomain, we automatically attempt to secure the associated apex domain. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."
在配置用户或组织站点的自定义域后,自定义域将替换未配置自定义域的帐户所拥有的任何项目站点 URL 的 `<user>.github.io` `<organization>.github.io` 部分。 例如,如果你的用户站点的自定义域为 `www.octocat.com`,并且你拥有一个未配置自定义域且从名为 `octo-project` 的存储库发布的项目站点,则该存储库的 {% data variables.product.prodname_pages %} 站点将在 `www.octocat.com/octo-project` 上提供。
After you configure a custom domain for a user or organization site, the custom domain will replace the `<user>.github.io` or `<organization>.github.io` portion of the URL for any project sites owned by the account that do not have a custom domain configured. For example, if the custom domain for your user site is `www.octocat.com`, and you have a project site with no custom domain configured that is published from a repository called `octo-project`, the {% data variables.product.prodname_pages %} site for that repository will be available at `www.octocat.com/octo-project`.
For more information about each type of site and handling custom domains, see "[Types of {% data variables.product.prodname_pages %} sites](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)."
## 对您的 {% data variables.product.prodname_pages %} 网站使用子域名
## Using a subdomain for your {% data variables.product.prodname_pages %} site
子域名是根域前 URL 的一部分。 你可以将子域配置为 `www` 或站点的独特部分,如 `blog.example.com`
A subdomain is the part of a URL before the root domain. You can configure your subdomain as `www` or as a distinct section of your site, like `blog.example.com`.
DNS 提供商为子域配置 `CNAME` 记录。 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)”。
Subdomains are configured with a `CNAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)."
### `www` 子域
### `www` subdomains
`www` 子域是最常用的子域类型。 例如,`www.example.com` 包括 `www` 子域。
A `www` subdomain is the most commonly used type of subdomain. For example, `www.example.com` includes a `www` subdomain.
`www` 子域是最稳定的自定义域类型,因为 `www` 子域不受 {% data variables.product.product_name %} 服务器的 IP 地址变动的影响。
`www` subdomains are the most stable type of custom domain because `www` subdomains are not affected by changes to the IP addresses of {% data variables.product.product_name %}'s servers.
### 自定义子域
### Custom subdomains
自定义子域是一种不使用标准 `www` 变体的子域。 自定义子域主要在您需要将网站分为两个不同的部分时使用。 例如,可以创建一个名为 `blog.example.com` 的站点并独立于 `www.example.com` 自定义该部分。
A custom subdomain is a type of subdomain that doesn't use the standard `www` variant. Custom subdomains are mostly used when you want two distinct sections of your site. For example, you can create a site called `blog.example.com` and customize that section independently from `www.example.com`.
## 对您的 {% data variables.product.prodname_pages %} 网站使用 apex 域
## Using an apex domain for your {% data variables.product.prodname_pages %} site
顶点域是不包含子域的自定义域,如 `example.com` Apex 域也称为基础域、裸域、根 apex 域或区域 apex 域。
An apex domain is a custom domain that does not contain a subdomain, such as `example.com`. Apex domains are also known as base, bare, naked, root apex, or zone apex domains.
DNS 提供商为顶点域配置 `A``ALIAS` `ANAME` 记录。 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)”。
An apex domain is configured with an `A`, `ALIAS`, or `ANAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)."
{% data reusables.pages.www-and-apex-domain-recommendation %} 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)”。
{% data reusables.pages.www-and-apex-domain-recommendation %} For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)."
## 保护 {% data variables.product.prodname_pages %} 网站的自定义域
## Securing the custom domain for your {% data variables.product.prodname_pages %} site
{% data reusables.pages.secure-your-domain %} 有关详细信息,请参阅“[验证 {% data variables.product.prodname_pages %} 的自定义域](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)”和“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site)”。
{% data reusables.pages.secure-your-domain %} For more information, see "[Verifying your custom domain for {% data variables.product.prodname_pages %}](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)" and "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."
有许多原因会导致您的网站被自动禁用。
There are a couple of reasons your site might be automatically disabled.
- 如果您从 {% data variables.product.prodname_pro %} 降级到 {% data variables.product.prodname_free_user %},则目前发布自您的帐户中私有仓库的任何 {% data variables.product.prodname_pages %} 站点都会取消发布。 有关详细信息,请参阅“[ {% data variables.product.prodname_dotcom %} 计费计划降级](/articles/downgrading-your-github-billing-plan)”。
- 如果将私人仓库转让给使用 {% data variables.product.prodname_free_user %} 的个人帐户,仓库将失去对 {% data variables.product.prodname_pages %} 功能的访问,当前发布的 {% data variables.product.prodname_pages %} 站点将取消发布。 有关详细信息,请参阅“[转让存储库](/articles/transferring-a-repository)”。
- If you downgrade from {% data variables.product.prodname_pro %} to {% data variables.product.prodname_free_user %}, any {% data variables.product.prodname_pages %} sites that are currently published from private repositories in your account will be unpublished. For more information, see "[Downgrading your {% data variables.product.prodname_dotcom %} billing plan](/articles/downgrading-your-github-billing-plan)."
- If you transfer a private repository to a personal account that is using {% data variables.product.prodname_free_user %}, the repository will lose access to the {% data variables.product.prodname_pages %} feature, and the currently published {% data variables.product.prodname_pages %} site will be unpublished. For more information, see "[Transferring a repository](/articles/transferring-a-repository)."
## 延伸阅读
## Further reading
- [自定义域和 {% data variables.product.prodname_pages %} 故障排除](/articles/troubleshooting-custom-domains-and-github-pages)
- "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages)"

View File

@@ -54,6 +54,9 @@ For each branch protection rule, you can choose to enable or disable the followi
{%- ifversion required-deployments %}
- [Require deployments to succeed before merging](#require-deployments-to-succeed-before-merging)
{%- endif %}
{%- ifversion lock-branch %}
- [Lock branch](#lock-branch)
{%- endif %}
{% ifversion bypass-branch-protections %}- [Do not allow bypassing the above settings](#do-not-allow-bypassing-the-above-settings){% else %}- [Include administrators](#include-administrators){% endif %}
- [Restrict who can push to matching branches](#restrict-who-can-push-to-matching-branches)
- [Allow force pushes](#allow-force-pushes)
@@ -84,6 +87,10 @@ Optionally, you can restrict the ability to dismiss pull request reviews to spec
Optionally, you can choose to require reviews from code owners. If you do, any pull request that affects code with a code owner must be approved by that code owner before the pull request can be merged into the protected branch.
{% ifversion last-pusher-require-approval %}
Optionally, you can require approvals from someone other than the last person to push to a branch before a pull request can be merged. This ensures more than one person sees pull requests in their final state before they are merged into a protected branch. If you enable this feature, the most recent user to push their changes will need an approval regardless of the required approvals branch protection. Users who have already reviewed a pull request can reapprove after the most recent push to meet this requirement.
{% endif %}
### Require status checks before merging
Required status checks ensure that all required CI tests are passing before collaborators can make changes to a protected branch. Required status checks can be checks or statuses. For more information, see "[About status checks](/github/collaborating-with-issues-and-pull-requests/about-status-checks)."
@@ -151,6 +158,13 @@ Before you can require a linear commit history, your repository must allow squas
You can require that changes are successfully deployed to specific environments before a branch can be merged. For example, you can use this rule to ensure that changes are successfully deployed to a staging environment before the changes merge to your default branch.
{% ifversion lock-branch %}
### Lock branch
Locking a branch ensures that no commits can be made to the branch.
By default, a forked repository does not support syncing from its upstream repository. You can enable **Allow fork syncing** to pull changes from the upstream repository while preventing other contributions to the fork's branch.
{% endif %}
{% ifversion bypass-branch-protections %}### Do not allow bypassing the above settings{% else %}
### Include administrators{% endif %}

View File

@@ -73,6 +73,10 @@ When you create a branch rule, the branch you specify doesn't have to exist yet
{% endif %}
- Optionally, if the repository is part of an organization, select **Restrict who can dismiss pull request reviews**. Then, search for and select the actors who are allowed to dismiss pull request reviews. For more information, see "[Dismissing a pull request review](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review)."
![Restrict who can dismiss pull request reviews checkbox]{% ifversion integration-branch-protection-exceptions %}(/assets/images/help/repository/PR-review-required-dismissals-with-apps.png){% else %}(/assets/images/help/repository/PR-review-required-dismissals.png){% endif %}
{% ifversion last-pusher-require-approval %}
- Optionally, to require someone other than the last person to push to a branch to approve a pull request prior to merging, select **Require approval from someone other than the last pusher**. For more information, see "[About protected branches](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-pull-request-reviews-before-merging)."
![Require review from someone other than the last pusher](/assets/images/help/repository/last-pusher-review-required.png)
{% endif %}
1. Optionally, enable required status checks. For more information, see "[About status checks](/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)."
- Select **Require status checks to pass before merging**.
![Required status checks option](/assets/images/help/repository/required-status-checks.png)
@@ -99,6 +103,12 @@ When you create a branch rule, the branch you specify doesn't have to exist yet
1. Optionally, to choose which environments the changes must be successfully deployed to before merging, select **Require deployments to succeed before merging**, then select the environments.
![Require successful deployment option](/assets/images/help/repository/require-successful-deployment.png)
{%- endif %}
{% ifversion lock-branch %}
1. Optionally, select **Lock branch** to make branch read-only.
![Screenshot of the checkbox to lock a branch](/assets/images/help/repository/lock-branch.png)
- Optionally, to allow fork syncing, select **Allow fork syncing**.
![Screenshot of the checkbox to allow fork syncing](/assets/images/help/repository/lock-branch-forksync.png)
{%- endif %}
1. Optionally, select {% ifversion bypass-branch-protections %}**Do not allow bypassing the above settings**.
![Do not allow bypassing the above settings checkbox](/assets/images/help/repository/do-not-allow-bypassing-the-above-settings.png){% else %}**Apply the rules above to administrators**.
![Apply the rules above to administrators checkbox](/assets/images/help/repository/include-admins-protected-branches.png){% endif %}

View File

@@ -97,7 +97,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- run: 'echo "No build required" '
- run: 'echo "No build required"'
```
Now the checks will always pass whenever someone sends a pull request that doesn't change the files listed under `paths` in the first workflow.

View File

@@ -185,7 +185,16 @@ You can also define a custom retention period for a specific artifact created by
{% data reusables.actions.cache-default-size %} However, these default sizes might be different if an enterprise owner has changed them. {% data reusables.actions.cache-eviction-process %}
You can set a total cache storage size for your repository up to the maximum size allowed by the enterprise policy setting.
You can set a total cache storage size for your repository up to the maximum size allowed by the {% ifversion actions-cache-admin-ui %}organization or{% endif %} enterprise policy setting{% ifversion actions-cache-admin-ui %}s{% endif %}.
{% ifversion actions-cache-admin-ui %}
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.sidebar-settings %}
{% data reusables.repositories.settings-sidebar-actions-general %}
{% data reusables.actions.change-cache-size-limit %}
{% else %}
The repository settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API:
@@ -195,3 +204,5 @@ The repository settings for {% data variables.product.prodname_actions %} cache
{% data reusables.actions.cache-no-org-policy %}
{% endif %}
{% endif %}

View File

@@ -22,7 +22,7 @@ shortTitle: Manage releases
---
## About release management
You can create new releases with release notes, @mentions of contributors, and links to binary files, as well as edit or delete existing releases.
You can create new releases with release notes, @mentions of contributors, and links to binary files, as well as edit or delete existing releases. You can also create, modify, and delete releases by using the Releases API. For more information, see "[Releases](/rest/releases/releases)" in the REST API documentation.
{% ifversion fpt or ghec %}
You can also publish an action from a specific release in {% data variables.product.prodname_marketplace %}. For more information, see "[Publishing an action in the {% data variables.product.prodname_marketplace %}](/actions/creating-actions/publishing-actions-in-github-marketplace)."
@@ -36,43 +36,62 @@ You can choose whether {% data variables.large_files.product_name_long %} ({% da
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.releases %}
3. Click **Draft a new release**.
1. Click **Draft a new release**.
{% ifversion fpt or ghec or ghes > 3.4 or ghae > 3.4 %}![Releases draft button](/assets/images/help/releases/draft-release-button-with-search.png){% else %}![Releases draft button](/assets/images/help/releases/draft_release_button.png){% endif %}
4. {% ifversion fpt or ghec or ghes > 3.2 or ghae %}Click **Choose a tag**, type{% else %}Type{% endif %} a version number for your release{% ifversion fpt or ghec or ghes > 3.2 or ghae %}, and press **Enter**{% endif %}. Alternatively, select an existing tag.
1. {% ifversion fpt or ghec or ghes > 3.2 or ghae %}Click **Choose a tag**, type{% else %}Type{% endif %} a version number for your release{% ifversion fpt or ghec or ghes > 3.2 or ghae %}, and press **Enter**{% endif %}. Alternatively, select an existing tag.
{% ifversion fpt or ghec or ghes > 3.2 or ghae %}![Enter a tag](/assets/images/help/releases/releases-tag-create.png)
5. If you are creating a new tag, click **Create new tag**.
1. If you are creating a new tag, click **Create new tag**.
![Confirm you want to create a new tag](/assets/images/help/releases/releases-tag-create-confirm.png)
![Screenshot of confirming you want to create a new tag](/assets/images/help/releases/releases-tag-create-confirm.png)
{% else %}
![Releases tagged version](/assets/images/enterprise/releases/releases-tag-version.png)
![Screenshot of the Releases tagged version](/assets/images/enterprise/releases/releases-tag-version.png)
{% endif %}
5. If you have created a new tag, use the drop-down menu to select the branch that contains the project you want to release.
1. If you have created a new tag, use the drop-down menu to select the branch that contains the project you want to release.
{% ifversion fpt or ghec or ghes > 3.2 or ghae %}
![Screenshot of dropdown to choose a branch](/assets/images/help/releases/releases-choose-branch.png)
{% else %}
![Screenshot of the Releases tagged branch](/assets/images/enterprise/releases/releases-tag-branch.png){% endif %}
{% ifversion fpt or ghec or ghes > 3.2 or ghae %}![Choose a branch](/assets/images/help/releases/releases-choose-branch.png)
{% else %}![Releases tagged branch](/assets/images/enterprise/releases/releases-tag-branch.png){% endif %}
{%- data reusables.releases.previous-release-tag %}
6. Type a title and description for your release.
1. Type a title and description for your release.
{%- ifversion fpt or ghec or ghes > 3.3 or ghae > 3.3 %}
If you @mention anyone in the description, the published release will include a **Contributors** section with an avatar list of all the mentioned users.
{%- endif %}
{% ifversion fpt or ghec or ghes > 3.3 %} Alternatively, you can automatically generate your release notes by clicking {% ifversion previous-release-tag %}**Generate release notes**{% else %}**Auto-generate release notes**{% endif %}.{% endif %}{% ifversion previous-release-tag %}
![Releases description](/assets/images/help/releases/releases_description_auto.png){% else %}
![Releases description](/assets/images/enterprise/3.5/releases/releases_description_auto.png){% endif %}
![Screenshot of the releases description](/assets/images/help/releases/releases_description_auto.png){% else %}
![Screenshot of the releases description](/assets/images/enterprise/3.5/releases/releases_description_auto.png){% endif %}
1. Optionally, to include binary files such as compiled programs in your release, drag and drop or manually select files in the binaries box.
![Providing a DMG with the Release](/assets/images/help/releases/releases_adding_binary.gif)
2. To notify users that the release is not ready for production and may be unstable, select **This is a pre-release**.
![Checkbox to mark a release as prerelease](/assets/images/help/releases/prerelease_checkbox.png)
![Animated GIF of Providing a DMG with the Release](/assets/images/help/releases/releases_adding_binary.gif)
1. To notify users that the release is not ready for production and may be unstable, select **This is a pre-release**.
![Screenshot of the checkbox to mark a release as prerelease](/assets/images/help/releases/prerelease_checkbox.png)
{%- ifversion releases-set-latest-release %}
1. Optionally, you can select **Set as latest release**. If you do not select this option, the latest release label will automatically be assigned based on semantic versioning.
![Screenshot of the checkbox to mark a release as the latest release](/assets/images/help/releases/latest-release-checkbox.png)
{%- endif %}
{%- ifversion discussions %}
1. Optionally, if {% data variables.product.prodname_discussions %} are enabled in the repository, select **Create a discussion for this release**, then select the **Category** drop-down menu and click a category for the release discussion.
![Checkbox to create a release discussion and drop-down menu to choose a category](/assets/images/help/releases/create-release-discussion.png)
![Screenshot of the checkbox to create a release discussion and drop-down menu to choose a category](/assets/images/help/releases/create-release-discussion.png)
{%- endif %}
9. If you're ready to publicize your release, click **Publish release**. To work on the release later, click **Save draft**.
1. If you're ready to publicize your release, click **Publish release**. To work on the release later, click **Save draft**.
![Publish release and Draft release buttons](/assets/images/help/releases/release_buttons.png)
{%- ifversion fpt or ghec or ghes > 3.2 or ghae > 3.3 %}
You can then view your published or draft releases in the releases feed for your repository. For more information, see "[Viewing your repository's releases and tags](/github/administering-a-repository/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags)."
You can then view your published or draft releases in the releases feed for your repository. For more information, see "[Screenshot of your repository's releases and tags](/github/administering-a-repository/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags)."
{% ifversion fpt or ghec or ghes > 3.4 or ghae > 3.3 %}
![Published release with @mentioned contributors](/assets/images/help/releases/refreshed-releases-overview-with-contributors.png)

View File

@@ -6,6 +6,7 @@ sections:
- Updates Grafana to version 7.5.16, which addresses various security vulnerabilities including [CVE-2020-13379](https://github.com/advisories/GHSA-wc9w-wvq2-ffm9) and [CVE-2022-21702](https://github.com/grafana/grafana/security/advisories/GHSA-xc3p-28hw-q24g).
- Packages have been updated to the latest security versions.
- "**MEDIUM**: A stored XSS vulnerability was identified in GitHub Enterprise Server that allowed the injection of arbitrary attributes. This injection was blocked by Github's Content Security Policy (CSP). This vulnerability was reported via the GitHub Bug Bounty program and has been assigned [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Updated: 2022-07-31]"
- "**MEDIUM**: A vulnerability involving deserialization of untrusted data was identified in GitHub Enterprise Server that could potentially lead to remote code execution on the Subversion (SVN) bridge. To exploit this vulnerability, an attacker would need to gain access via a server-side request forgery (SSRF) that would let an attacker control the data being deserialized. This vulnerability was reported via the GitHub Bug Bounty program and has been assigned [CVE-2022-23734](https://www.cve.org/CVERecord?id=CVE-2022-23734)."
bugs:
- In some cases, the collectd daemon could consume excess memory.
- In some cases, backups of rotated log files could accumulate and consume excess storage.
@@ -30,4 +31,4 @@ sections:
- |
After registering a self-hosted runner with the `--ephemeral` parameter on more than one level (for example, both enterprise and organization), the runner may get stuck in an idle state and require re-registration. [Updated: 2022-06-17]
- After upgrading to {% data variables.product.prodname_ghe_server %} 3.4, releases may appear to be missing from repositories. This can occur when the required Elasticsearch index migrations have not successfully completed.
- '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}'
- '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}'

View File

@@ -2,6 +2,5 @@
{% ifversion ghec %}![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org.png){% elsif ghes > 3.4 or ghae > 3.4 %} ![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org-ghes.png){% endif %}
1. Optionally, click "Automatically enable for repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion push-protection-custom-link-orgs %}
1. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, select **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**.
{% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %}
![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %}

View File

@@ -1,55 +1,53 @@
---
ms.openlocfilehash: 073c21c1480e0f9f699687c730aef2bb670654e7
ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5
ms.translationtype: HT
ms.contentlocale: zh-CN
ms.lasthandoff: 09/05/2022
ms.locfileid: "146689019"
---
下表对每个包管理器显示:
- 要在 dependabot.yml 文件中使用的 YAML 值
- 支持的包管理器版本
- 是否支持私有 {% data variables.product.prodname_dotcom %} 仓库或注册表中的依赖项
- 是否支持供应的依赖项
The following table shows, for each package manager:
- The YAML value to use in the *dependabot.yml* file
- The supported versions of the package manager
- Whether dependencies in private {% data variables.product.prodname_dotcom %} repositories or registries are supported
- Whether vendored dependencies are supported
程序包管理器 | YAML | 支持的版本 | 私有仓库 | 专用注册表 | 供应
Package manager | YAML value | Supported versions | Private repositories | Private registries | Vendoring
---------------|------------------|------------------|:---:|:---:|:---:
Bundler | `bundler` | v1, v2 | | **✓** | **✓** |
Cargo | `cargo` | v1 | **✓** | **✓** | |
编辑器 | `composer` | v1, v2 | **✓** | **✓** | |
Composer | `composer` | v1, v2 | **✓** | **✓** | |
Docker | `docker` | v1 | **✓** | **✓** | |
Hex | `mix` | v1 | | **✓** | |
elm-package | `elm` | v0.19 | **✓** | **✓** | |
git submodule | `gitsubmodule` | N/A(无版本) | **✓** | **✓** | |
GitHub 操作 | `github-actions` | N/A(无版本) | **✓** | **✓** | |
Go 模块 | `gomod` | v1 | **✓** | **✓** | **✓** |
Gradle | `gradle` | N/A(无版本)<sup>[1]</sup> | **✓** | **✓** | |
Maven | `maven` | N/A(无版本)<sup>[2]</sup> | **✓** | **✓** | |
npm | `npm` | v6、v7、v8 | **✓** | **✓** | |
git submodule | `gitsubmodule` | N/A (no version) | **✓** | **✓** | |
GitHub Actions | `github-actions` | N/A (no version) | **✓** | **✓** | |
Go modules | `gomod` | v1 | **✓** | **✓** | **✓** |
Gradle | `gradle` | N/A (no version)<sup>[1]</sup> | **✓** | **✓** | |
Maven | `maven` | N/A (no version)<sup>[2]</sup> | **✓** | **✓** | |
npm | `npm` | v6, v7, v8 | **✓** | **✓** | |
NuGet | `nuget` | <= 4.8<sup>[3]</sup> | **✓** | **✓** | |
pip | `pip` | v21.1.2 | | **✓** | |
pipenv | `pip` | <= 2021-05-29 | | **✓** | |
pip-compile | `pip` | 6.1.0 | | **✓** | |
poetry | `pip` | v1 | | **✓** | |{% ifversion fpt or ghec or ghes > 3.4 %}
酒馆 | `pub` | v2 <sup>[4]</sup> | | | |{% endif %}
Terraform | `terraform` | >= 0.13<= 1.2.x | **✓** | **✓** | |
yarn | `npm` | v1 | **✓** | **✓** | |
pub | `pub` | v2 <sup>[4]</sup> | | | |{% endif %}
Terraform | `terraform` | >= 0.13, <= 1.2.x | **✓** | **✓** | |
{% ifversion dependabot-yarn-v3-update %}yarn | `npm` | v1, v2, v3 | **✓** | **✓** | **✓**<sup>[5]</sup> |{% else %}yarn | `npm` | v1 | **✓** | **✓** | |
{% endif %}
{% tip %}
提示:对于包管理器(如 `pipenv` `poetry`),需要使用 `pip` YAML 值。 例如,如果使用 `poetry` 来管理 Python 依赖项,并且希望让 {% data variables.product.prodname_dependabot %} 监视新版本的依赖项清单文件,请在 dependabot.yml 文件中使用 `package-ecosystem: "pip"`
**Tip:** For package managers such as `pipenv` and `poetry`, you need to use the `pip` YAML value. For example, if you use `poetry` to manage your Python dependencies and want {% data variables.product.prodname_dependabot %} to monitor your dependency manifest file for new versions, use `package-ecosystem: "pip"` in your *dependabot.yml* file.
{% endtip %}
[1] {% data variables.product.prodname_dependabot %} 不运行 Gradle但支持对以下文件的更新`build.gradle``build.gradle.kts`(针对 Kotlin 项目),以及通过 `apply` 声明包含在内且文件名中带有 `dependencies` 的文件。 请注意,`apply` 不支持 `apply to`、递归或高级语法(例如,Kotlin `apply` `mapOf`,由属性定义的文件名)。
[1] {% data variables.product.prodname_dependabot %} doesn't run Gradle but supports updates to the following files: `build.gradle`, `build.gradle.kts` (for Kotlin projects), and files included via the `apply` declaration that have `dependencies` in the filename. Note that `apply` does not support `apply to`, recursion, or advanced syntaxes (for example, Kotlin's `apply` with `mapOf`, filenames defined by property).
[2] {% data variables.product.prodname_dependabot %} 不运行 Maven但支持对 `pom.xml` 文件的更新。
[2] {% data variables.product.prodname_dependabot %} doesn't run Maven but supports updates to `pom.xml` files.
[3] {% data variables.product.prodname_dependabot %} 不运行 NuGet CLI但支持直到版本 4.8 的大多数功能。
[3] {% data variables.product.prodname_dependabot %} doesn't run the NuGet CLI but does support most features up until version 4.8.
{% ifversion fpt or ghec or ghes > 3.4 %} [4] {% ifversion ghes = 3.5 %}`pub` 支持目前为 beta 版本。 任何已知限制都可能会发生变化。 请注意 {% data variables.product.prodname_dependabot %}
- 不支持更新 `pub` 的 git 依赖项。
- 当尝试更新到的版本被忽略时,即使早期版本可用,也不会执行更新。
{% ifversion fpt or ghec or ghes > 3.4 %}
[4] {% ifversion ghes = 3.5 %}`pub` support is currently in beta. Any known limitations are subject to change. Note that {% data variables.product.prodname_dependabot %}:
- Doesn't support updating git dependencies for `pub`.
- Won't perform an update when the version that it tries to update to is ignored, even if an earlier version is available.
有关为 `pub` 配置 dependabot.yml 文件的信息,请参阅“[启用对 beta 级生态系统的支持](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)”。
{%- else %}{% data variables.product.prodname_dependabot %} 在尝试更新到的版本被忽略时不会为 `pub` 执行更新,即使有可用的早期版本也是如此。{% endif %} {% endif %}
For information about configuring your _dependabot.yml_ file for `pub`, see "[Enabling support for beta-level ecosystems](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)."
{%- else %}{% data variables.product.prodname_dependabot %} won't perform an update for `pub` when the version that it tries to update to is ignored, even if an earlier version is available.{% endif %}
{% endif %}
{% ifversion dependabot-yarn-v3-update %}
[5] Dependabot supports vendored dependencies for v2 onwards.{% endif %}