зеркало из https://github.com/github/docs.git
Merge branch 'main' into codespaces-universe-megabranch
This commit is contained in:
Коммит
e379167274
|
@ -64,12 +64,12 @@ If you aren't comfortable going through the steps alone, sync up with a docs eng
|
|||
|
||||
☝️ This will run a workflow **on every push to the PR** that will sync **only** the English index for the new version. This will make the GHES content searchable on staging throughout content creation, and will ensure the search updates go live at the same time the content is published. See [`contributing/search.md`](https://github.com/github/docs-internal/blob/main/contributing/search.md) for details.
|
||||
- [ ] Get the megabranch green with passing tests as soon as possible. This typically involves fixing broken links and working with engineering to address other unexpected test failures.
|
||||
- [ ] In `github/github`, to create a new GHES release follow these steps (some of these steps may have already been done):
|
||||
- [ ] Copy the previous release's root document to a new root document for this release `cp app/api/description/ghes-<LATEST RELEASE NUMBER>.yaml app/api/description/ghes-<NEXT RELEASE NUMBER>.yaml`.
|
||||
- [ ] Update the `externalDocs.url` property in that file to use the new GHES release number.
|
||||
- [ ] In `github/github`, use a Codespace to create a pull request that adds a new GHES release. Follow these steps (some of these steps may have already been done):
|
||||
- [ ] Copy the previous release's configuration file to a new configuration file for this release `cp app/api/description/config/releases/ghes-<LATEST RELEASE NUMBER>.yaml app/api/description/config/releases/ghes-<NEXT RELEASE NUMBER>.yaml`.
|
||||
- [ ] Update the `variables.externalDocsUrl`, `variables.ghesVersion`, and `patch.[].value.url` in that file to use the new GHES release number.
|
||||
- [ ] Update all references to the old GHES release number in that file to use the new GHES release number. There are about 4 occurrences at the time of this writing: `variables.externalDocsUrl`, `variables.ghesVersion`, and two keys under `patch` for the paths `/info/x-github-release` and `/externalDocs`.
|
||||
- [ ] Update `published` in that file to `false`. **Note:** This is important to ensure that changes for the next version of the OpenAPI schema changes are not made public until the new version is released.
|
||||
- [ ] Run `./bin/openapi generate-root-files` to generate the `app/api/description/ghes-<LATEST RELEASE NUMBER>.yaml` file and merge the changes.
|
||||
- [ ] Create a PR with the two file changes `app/api/description/ghes-<NEW RELEASE NUMBER>.yaml` and `app/api/description/config/releases/ghes-<NEW RELEASE NUMBER>.yaml`
|
||||
- [ ] Create a second PR based on the PR created ☝️ that toggles `published` to `true` in the `app/api/description/config/releases/ghes-<NEXT RELEASE NUMBER>.yaml` file. When this PR merges it will publish the new release to the `github/rest-api-description` repo and will trigger a pull request in the `github/docs-internal` repo with the schemas for the next GHES release. There is a step in this list to merge that PR in the "Before shipping the release branch" section.
|
||||
- [ ] At least once a day until release, merge `main` into the megabranch and resolve any conflicts or failing tests.
|
||||
|
||||
|
|
|
@ -51,9 +51,6 @@ const deprecatedVersionPrefixesRegex = new RegExp(
|
|||
|
||||
// When this file is invoked directly from action as opposed to being imported
|
||||
if (import.meta.url.endsWith(process.argv[1])) {
|
||||
// Validate that required action inputs are present
|
||||
getEnvInputs(['GITHUB_TOKEN'])
|
||||
|
||||
// Optional env vars
|
||||
const {
|
||||
ACTION_RUN_URL,
|
||||
|
@ -94,7 +91,7 @@ if (import.meta.url.endsWith(process.argv[1])) {
|
|||
language: 'en',
|
||||
actionUrl: ACTION_RUN_URL,
|
||||
checkExternalLinks: CHECK_EXTERNAL_LINKS === 'true',
|
||||
shouldComment: SHOULD_COMMENT === 'true',
|
||||
shouldComment: Boolean(JSON.parse(SHOULD_COMMENT)),
|
||||
commentLimitToExternalLinks: COMMENT_LIMIT_TO_EXTERNAL_LINKS === 'true',
|
||||
failOnFlaw: FAIL_ON_FLAW === 'true',
|
||||
createReport: CREATE_REPORT === 'true',
|
||||
|
@ -104,6 +101,12 @@ if (import.meta.url.endsWith(process.argv[1])) {
|
|||
actionContext: getActionContext(),
|
||||
}
|
||||
|
||||
if (opts.shouldComment || opts.createReport) {
|
||||
// `GITHUB_TOKEN` is optional. If you need the token to post a comment
|
||||
// or open an issue report, you might get cryptic error messages from Octokit.
|
||||
getEnvInputs(['GITHUB_TOKEN'])
|
||||
}
|
||||
|
||||
main(coreLib, octokit, uploadArtifactLib, opts, {})
|
||||
}
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@ concurrency:
|
|||
jobs:
|
||||
check-links:
|
||||
runs-on: ${{ fromJSON('["ubuntu-latest", "ubuntu-20.04-xl"]')[github.repository == 'github/docs-internal'] }}
|
||||
if: (github.repository == 'github/docs-internal' || github.repository == 'github/docs') && github.repository_owner == 'github'
|
||||
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@dcd71f646680f2efd8db4afa5ad64fdcba30e748
|
||||
|
@ -72,7 +72,7 @@ jobs:
|
|||
LEVEL: 'critical'
|
||||
ACTION_RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
GITHUB_TOKEN: ${{ secrets.DOCS_BOT_FR }}
|
||||
SHOULD_COMMENT: true
|
||||
SHOULD_COMMENT: ${{ secrets.DOCS_BOT_FR != '' }}
|
||||
CHECK_EXTERNAL_LINKS: false
|
||||
CREATE_REPORT: false
|
||||
run: node .github/actions/rendered-content-link-checker.js
|
||||
|
|
|
@ -7,7 +7,7 @@ name: 'Orphaned assets check'
|
|||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: '13 10 * * *' # Once a day at 10:13 UTC
|
||||
- cron: '20 11 * * 1' # run every Monday at 11:20AM UTC
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
|
|
@ -27,6 +27,7 @@ If you're experiencing problems while switching between different authentication
|
|||
|
||||
- "[Switching your SAML configuration from an organization to an enterprise account](/admin/identity-and-access-management/using-saml-for-enterprise-iam/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account)"
|
||||
- "[Migrating from SAML to OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)"
|
||||
- "[Migrating your enterprise to a new identity provider or tenant](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-your-enterprise-to-a-new-identity-provider-or-tenant)"
|
||||
|
||||
## Accessing your enterprise when SSO is not available
|
||||
|
||||
|
|
|
@ -22,5 +22,6 @@ children:
|
|||
- /managing-team-memberships-with-identity-provider-groups
|
||||
- /about-support-for-your-idps-conditional-access-policy
|
||||
- /migrating-from-saml-to-oidc
|
||||
- /migrating-your-enterprise-to-a-new-identity-provider-or-tenant
|
||||
---
|
||||
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
---
|
||||
title: Migrating your enterprise to a new identity provider or tenant
|
||||
shortTitle: Migrate to new IdP or tenant
|
||||
intro: 'You can migrate your enterprise to a different identity provider (IdP) or Azure AD tenant.'
|
||||
product: '{% data reusables.gated-features.emus %}'
|
||||
versions:
|
||||
feature: idp-tenant-migration
|
||||
topics:
|
||||
- Access management
|
||||
- Accounts
|
||||
- Administrator
|
||||
- Authentication
|
||||
- Enterprise
|
||||
- SSO
|
||||
---
|
||||
|
||||
## About migrations between IdPs and tenants
|
||||
|
||||
While using {% data variables.product.prodname_emus %}, you may need to migrate your enterprise to a new IdP or Azure AD tenant. For example, you might be ready to migrate from a test environment to your production environment.
|
||||
|
||||
Before you migrate your {% data variables.enterprise.prodname_emu_enterprise %} to a new IdP or tenant, determine whether the values of the normalized SCIM `userName` attribute will remain the same for your {% data variables.enterprise.prodname_managed_users %} in the new environment. For more information about username normalization, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)."
|
||||
|
||||
If the normalized SCIM `userName` values will remain the same after the migration, you can complete the migration by yourself. For instructions, see "[Migrating when the normalized SCIM `userName` values will remain the same](#migrating-when-the-normalized-scim-username-values-will-remain-the-same)."
|
||||
|
||||
If the normalized SCIM `userName` values will change after the migration, {% data variables.product.company_short %} will need to help with your migration. For more information, see "[Migrating when the normalized SCIM `userName` values will change](#migrating-when-the-normalized-scim-username-values-will-change)."
|
||||
|
||||
## Migrating when the normalized SCIM `userName` values will remain the same
|
||||
|
||||
To migrate to a new IdP or tenant, you cannot edit your existing SAML configuration. Instead, you must completely deactivate SAML for your enterprise account, then create new SAML and SCIM configurations for the new IdP or tenant.
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Warning:** Do not remove any users or groups from the application for {% data variables.product.prodname_emus %} in your original IdP or tenant until after your migration is complete.
|
||||
|
||||
{% endwarning %}
|
||||
|
||||
1. If you don't already have single sign-on recovery codes for your enterprise, download the codes now. For more information, see "[Downloading your enterprise account's single sign-on recovery codes](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)."
|
||||
1. In your current IdP, deactivate provisioning in the application for {% data variables.product.prodname_emus %}.
|
||||
- If you use Azure AD, navigate to the "Provisioning" tab of the application, and then click **Stop provisioning**.
|
||||
- If you use Okta, navigate to the "Provisioning" tab of the application, click the **Integration** tab, and then click **Edit**. Deselect **Enable API integration**.
|
||||
1. Use a recovery code to sign into {% data variables.product.prodname_dotcom_the_website %} as the setup user, whose username is your enterprise's shortcode suffixed with `_admin`. For more information about the setup user, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#getting-started-with-enterprise-managed-users)."
|
||||
|
||||
1. Deactivate SAML for the {% data variables.enterprise.prodname_emu_enterprise %}.
|
||||
- From your profile, click **Your enterprises**, and then click the appropriate enterprise.
|
||||
- Click {% octicon "gear" aria-label="The Settings gear" %} **Settings**, and then click **Authentication security**.
|
||||
- Under "SAML single sign-on", deselect **Require SAML authentication**, and then click **Save**.
|
||||
|
||||
1. Wait for all users in the enterprise to show as suspended.
|
||||
|
||||
1. While still signed in as the setup user, configure SAML and SCIM for the new IdP or tenant with a new {% data variables.product.prodname_emus %} application.
|
||||
|
||||
After you configure provisioning for the new application, the {% data variables.enterprise.prodname_managed_users %} will be unsuspended, and your developers will be able to sign into their existing accounts again.
|
||||
|
||||
By default, this process can take up to 40 minutes for Azure AD. To expedite the process for an individual user, click the **Provision on Demand** button in the "Provisioning" tab of the application for {% data variables.product.prodname_emus %}.
|
||||
|
||||
## Migrating when the normalized SCIM `userName` values will change
|
||||
|
||||
If the normalized SCIM `userName` values will change, {% data variables.product.company_short %} must provision a new enterprise account for your migration. [Contact our sales team](https://github.com/enterprise/contact) for help.
|
|
@ -44,7 +44,7 @@ To configure authentication and user provisioning for {% data variables.product.
|
|||
|
||||
{% ifversion ghae %}
|
||||
|
||||
1. In Azure AD, add {% data variables.product.ae_azure_ad_app_link %} to your tenant and configure single sign-on. For more information, see [Tutorial: Azure Active Directory single sign-on (SSO) integration with {% data variables.product.prodname_ghe_managed %}](https://docs.microsoft.com/azure/active-directory/saas-apps/github-ae-tutorial) in the Microsoft Docs.
|
||||
1. In Azure AD, add the {% data variables.enterprise.ae_azure_ad_app_link %} to your tenant and configure single sign-on. For more information, see [Tutorial: Azure Active Directory single sign-on (SSO) integration with {% data variables.product.prodname_ghe_managed %}](https://docs.microsoft.com/azure/active-directory/saas-apps/github-ae-tutorial) in the Microsoft Docs.
|
||||
|
||||
1. In {% data variables.product.prodname_ghe_managed %}, enter the details for your Azure AD tenant.
|
||||
|
||||
|
|
|
@ -35,6 +35,7 @@ If you have multiple GPG keys, you need to tell Git which one to use.
|
|||
{% data reusables.gpg.list-keys-with-note %}
|
||||
{% data reusables.gpg.copy-gpg-key-id %}
|
||||
{% data reusables.gpg.paste-gpg-key-id %}
|
||||
{% data reusables.gpg.set-auto-sign %}
|
||||
1. If you aren't using the GPG suite, run the following command in the `zsh` shell to add the GPG key to your `.zshrc` file, if it exists, or your `.zprofile` file:
|
||||
```shell
|
||||
$ if [ -r ~/.zshrc ]; then echo 'export GPG_TTY=$(tty)' >> ~/.zshrc; \
|
||||
|
@ -73,6 +74,7 @@ If you have multiple GPG keys, you need to tell Git which one to use.
|
|||
{% data reusables.gpg.list-keys-with-note %}
|
||||
{% data reusables.gpg.copy-gpg-key-id %}
|
||||
{% data reusables.gpg.paste-gpg-key-id %}
|
||||
{% data reusables.gpg.set-auto-sign %}
|
||||
|
||||
{% endwindows %}
|
||||
|
||||
|
@ -95,6 +97,7 @@ If you have multiple GPG keys, you need to tell Git which one to use.
|
|||
{% data reusables.gpg.list-keys-with-note %}
|
||||
{% data reusables.gpg.copy-gpg-key-id %}
|
||||
{% data reusables.gpg.paste-gpg-key-id %}
|
||||
{% data reusables.gpg.set-auto-sign %}
|
||||
1. To add your GPG key to your `.bashrc` startup file, run the following command:
|
||||
```bash
|
||||
$ [ -f ~/.bashrc ] && echo 'export GPG_TTY=$(tty)' >> ~/.bashrc
|
||||
|
|
|
@ -10,9 +10,9 @@ shortTitle: About GitHub Copilot
|
|||
|
||||
## About {% data variables.product.prodname_copilot %}
|
||||
|
||||
{% data variables.product.prodname_copilot %} is an AI pair programmer that offers autocomplete-style suggestions as you code. You can receive suggestions from {% data variables.product.prodname_copilot %} either by starting to write the code you want to use, or by writing a natural language comment describing what you want the code to do. {% data variables.product.prodname_copilot %} analyzes the context in the file you are editing, as well as related files, and offers suggestions from within your text editor.
|
||||
{% data variables.product.prodname_copilot %} is an AI pair programmer that offers autocomplete-style suggestions as you code. You can receive suggestions from {% data variables.product.prodname_copilot %} either by starting to write the code you want to use, or by writing a natural language comment describing what you want the code to do. {% data variables.product.prodname_copilot %} analyzes the context in the file you are editing, as well as related files, and offers suggestions from within your text editor. {% data variables.product.prodname_copilot %} is powered by OpenAI Codex, a new AI system created by OpenAI.
|
||||
|
||||
{% data variables.product.prodname_copilot %} is optimized to help you write Python, JavaScript, TypeScript, Ruby, Go, C#, or C++. You can also use {% data variables.product.prodname_copilot %} to generate suggestions in other languages and a wide variety of frameworks. {% data variables.product.prodname_copilot %} is powered by OpenAI Codex, a new AI system created by OpenAI.
|
||||
{% data variables.product.prodname_copilot %} is trained on all languages that appear in public repositories. For each language, the quality of suggestions you receive may depend on the volume and diversity of training data for that language. For example, JavaScript is well-represented in public repositories and is one of {% data variables.product.prodname_copilot %}'s best supported languages. Languages with less representation in public repositories may produce fewer or less robust suggestions.
|
||||
|
||||
{% data variables.product.prodname_copilot %} is available as an extension in Visual Studio Code, Visual Studio, Neovim and the JetBrains suite of IDEs. For more information, see "[Getting started with {% data variables.product.prodname_copilot %}](/copilot/getting-started-with-github-copilot)."
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
# Reference: #7781
|
||||
# Documentation for migrating an EMU-enabled enterprise's IdP or tenant
|
||||
versions:
|
||||
ghec: '*'
|
|
@ -68,22 +68,6 @@ upcoming_changes:
|
|||
date: '2022-07-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jhunschejones
|
||||
- location: LockMergeQueueInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
The merge queue is locked for the repository's default branch, the `branch`
|
||||
argument is now a no-op
|
||||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jhunschejones
|
||||
- location: MergeLockedMergeGroupInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
Changes are merged into the repository's default branch, the `branch` argument
|
||||
is now a no-op
|
||||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jhunschejones
|
||||
- location: RemovePullRequestFromMergeQueueInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
|
@ -100,14 +84,6 @@ upcoming_changes:
|
|||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jamestran201
|
||||
- location: UnlockAndResetMergeGroupInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
The current merge group for the repository's default branch, the `branch`
|
||||
argument is now a no-op
|
||||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jhunschejones
|
||||
- location: Commit.changedFiles
|
||||
description: '`changedFiles` will be removed. Use `changedFilesIfAvailable` instead.'
|
||||
reason: '`changedFiles` will be removed.'
|
||||
|
|
|
@ -96,22 +96,6 @@ upcoming_changes:
|
|||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: github/dependency_graph
|
||||
- location: LockMergeQueueInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
The merge queue is locked for the repository's default branch, the `branch`
|
||||
argument is now a no-op
|
||||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jhunschejones
|
||||
- location: MergeLockedMergeGroupInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
Changes are merged into the repository's default branch, the `branch` argument
|
||||
is now a no-op
|
||||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jhunschejones
|
||||
- location: RemovePullRequestFromMergeQueueInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
|
@ -128,14 +112,6 @@ upcoming_changes:
|
|||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jamestran201
|
||||
- location: UnlockAndResetMergeGroupInput.branch
|
||||
description: '`branch` will be removed.'
|
||||
reason:
|
||||
The current merge group for the repository's default branch, the `branch`
|
||||
argument is now a no-op
|
||||
date: '2022-10-01T00:00:00+00:00'
|
||||
criticality: breaking
|
||||
owner: jhunschejones
|
||||
- location: UpdateProjectNextItemFieldInput.fieldWithSettingId
|
||||
description: '`fieldWithSettingId` will be removed. Use `fieldConstraintId` instead'
|
||||
reason: Renamed to fieldConstraintId to improve naming consistency.
|
||||
|
|
|
@ -30006,6 +30006,36 @@ type ProjectV2 implements Closable & Node & Updatable {
|
|||
"""
|
||||
shortDescription: String
|
||||
|
||||
"""
|
||||
The teams the project is linked to.
|
||||
"""
|
||||
teams(
|
||||
"""
|
||||
Returns the elements in the list that come after the specified cursor.
|
||||
"""
|
||||
after: String
|
||||
|
||||
"""
|
||||
Returns the elements in the list that come before the specified cursor.
|
||||
"""
|
||||
before: String
|
||||
|
||||
"""
|
||||
Returns the first _n_ elements from the list.
|
||||
"""
|
||||
first: Int
|
||||
|
||||
"""
|
||||
Returns the last _n_ elements from the list.
|
||||
"""
|
||||
last: Int
|
||||
|
||||
"""
|
||||
Ordering options for teams returned from this connection.
|
||||
"""
|
||||
orderBy: TeamOrder = {field: NAME, direction: ASC}
|
||||
): TeamConnection!
|
||||
|
||||
"""
|
||||
The project's name.
|
||||
"""
|
||||
|
@ -46780,6 +46810,46 @@ type Team implements MemberStatusable & Node & Subscribable {
|
|||
"""
|
||||
privacy: TeamPrivacy!
|
||||
|
||||
"""
|
||||
Finds and returns the project according to the provided project number.
|
||||
"""
|
||||
projectV2(
|
||||
"""
|
||||
The Project number.
|
||||
"""
|
||||
number: Int!
|
||||
): ProjectV2
|
||||
|
||||
"""
|
||||
List of projects this team has collaborator access to.
|
||||
"""
|
||||
projectsV2(
|
||||
"""
|
||||
Returns the elements in the list that come after the specified cursor.
|
||||
"""
|
||||
after: String
|
||||
|
||||
"""
|
||||
Returns the elements in the list that come before the specified cursor.
|
||||
"""
|
||||
before: String
|
||||
|
||||
"""
|
||||
Returns the first _n_ elements from the list.
|
||||
"""
|
||||
first: Int
|
||||
|
||||
"""
|
||||
Returns the last _n_ elements from the list.
|
||||
"""
|
||||
last: Int
|
||||
|
||||
"""
|
||||
How to order the returned projects.
|
||||
"""
|
||||
orderBy: ProjectV2Order = {field: NUMBER, direction: DESC}
|
||||
): ProjectV2Connection!
|
||||
|
||||
"""
|
||||
A list of repositories this team has access to.
|
||||
"""
|
||||
|
|
|
@ -30006,6 +30006,36 @@ type ProjectV2 implements Closable & Node & Updatable {
|
|||
"""
|
||||
shortDescription: String
|
||||
|
||||
"""
|
||||
The teams the project is linked to.
|
||||
"""
|
||||
teams(
|
||||
"""
|
||||
Returns the elements in the list that come after the specified cursor.
|
||||
"""
|
||||
after: String
|
||||
|
||||
"""
|
||||
Returns the elements in the list that come before the specified cursor.
|
||||
"""
|
||||
before: String
|
||||
|
||||
"""
|
||||
Returns the first _n_ elements from the list.
|
||||
"""
|
||||
first: Int
|
||||
|
||||
"""
|
||||
Returns the last _n_ elements from the list.
|
||||
"""
|
||||
last: Int
|
||||
|
||||
"""
|
||||
Ordering options for teams returned from this connection.
|
||||
"""
|
||||
orderBy: TeamOrder = {field: NAME, direction: ASC}
|
||||
): TeamConnection!
|
||||
|
||||
"""
|
||||
The project's name.
|
||||
"""
|
||||
|
@ -46780,6 +46810,46 @@ type Team implements MemberStatusable & Node & Subscribable {
|
|||
"""
|
||||
privacy: TeamPrivacy!
|
||||
|
||||
"""
|
||||
Finds and returns the project according to the provided project number.
|
||||
"""
|
||||
projectV2(
|
||||
"""
|
||||
The Project number.
|
||||
"""
|
||||
number: Int!
|
||||
): ProjectV2
|
||||
|
||||
"""
|
||||
List of projects this team has collaborator access to.
|
||||
"""
|
||||
projectsV2(
|
||||
"""
|
||||
Returns the elements in the list that come after the specified cursor.
|
||||
"""
|
||||
after: String
|
||||
|
||||
"""
|
||||
Returns the elements in the list that come before the specified cursor.
|
||||
"""
|
||||
before: String
|
||||
|
||||
"""
|
||||
Returns the first _n_ elements from the list.
|
||||
"""
|
||||
first: Int
|
||||
|
||||
"""
|
||||
Returns the last _n_ elements from the list.
|
||||
"""
|
||||
last: Int
|
||||
|
||||
"""
|
||||
How to order the returned projects.
|
||||
"""
|
||||
orderBy: ProjectV2Order = {field: NUMBER, direction: DESC}
|
||||
): ProjectV2Connection!
|
||||
|
||||
"""
|
||||
A list of repositories this team has access to.
|
||||
"""
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
1. Optionally, to configure Git to sign all commits by default, enter the following command:
|
||||
|
||||
```Shell
|
||||
$ git config --global commit.gpgsign true
|
||||
```
|
||||
|
||||
For more information, see "[Signing commits](/authentication/managing-commit-signature-verification/signing-commits)."
|
|
@ -13,3 +13,6 @@ prodname_emu_org: 'organization with managed users'
|
|||
## Phrase content so that the uncapitalized unified contributions or unified search variables are not used at the start of a sentence.
|
||||
prodname_unified_contributions: 'unified contributions'
|
||||
prodname_unified_search: 'unified search'
|
||||
|
||||
# Azure AD
|
||||
ae_azure_ad_app_link: '[GitHub AE application](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/aad.githubenterpriseserver)'
|
||||
|
|
|
@ -110,9 +110,6 @@ prodname_oauth_apps: 'OAuth Apps'
|
|||
prodname_enterprise_api: '{% ifversion ghes %}GitHub Enterprise Server{% elsif ghae %}GitHub AE{% endif %} APIs'
|
||||
prodname_unfurls: 'Content Attachments'
|
||||
|
||||
# Azure AD
|
||||
ae_azure_ad_app_link: 'the [GitHub AE application](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/aad.githubenterpriseserver)'
|
||||
|
||||
# GitHub Actions
|
||||
## Use this variable only when referring to GitHub Actions the product. When referring to the thing that someone creates using the product, call it an action (small a). See the terminology page of the Brand Guide for more.
|
||||
prodname_actions: 'GitHub Actions'
|
||||
|
|
|
@ -1,4 +1,19 @@
|
|||
[
|
||||
{
|
||||
"schemaChanges": [
|
||||
{
|
||||
"title": "The GraphQL schema includes these changes:",
|
||||
"changes": [
|
||||
"<p>Field <code>teams</code> was added to object type 'ProjectV2'</p>",
|
||||
"<p>Field 'projectV2<code>was added to object type</code>Team'</p>",
|
||||
"<p>Field 'projectsV2<code>was added to object type</code>Team'</p>"
|
||||
]
|
||||
}
|
||||
],
|
||||
"previewChanges": [],
|
||||
"upcomingChanges": [],
|
||||
"date": "2022-10-21"
|
||||
},
|
||||
{
|
||||
"schemaChanges": [
|
||||
{
|
||||
|
|
|
@ -42142,6 +42142,66 @@
|
|||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
},
|
||||
{
|
||||
"name": "teams",
|
||||
"description": "<p>The teams the project is linked to.</p>",
|
||||
"type": "TeamConnection!",
|
||||
"id": "teamconnection",
|
||||
"kind": "objects",
|
||||
"href": "/graphql/reference/objects#teamconnection",
|
||||
"arguments": [
|
||||
{
|
||||
"name": "after",
|
||||
"description": "<p>Returns the elements in the list that come after the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "before",
|
||||
"description": "<p>Returns the elements in the list that come before the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "first",
|
||||
"description": "<p>Returns the first <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "last",
|
||||
"description": "<p>Returns the last <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "orderBy",
|
||||
"description": "<p>Ordering options for teams returned from this connection.</p>",
|
||||
"type": {
|
||||
"name": "TeamOrder",
|
||||
"id": "teamorder",
|
||||
"kind": "input-objects",
|
||||
"href": "/graphql/reference/input-objects#teamorder"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "title",
|
||||
"description": "<p>The project's name.</p>",
|
||||
|
@ -63658,6 +63718,86 @@
|
|||
"kind": "enums",
|
||||
"href": "/graphql/reference/enums#teamprivacy"
|
||||
},
|
||||
{
|
||||
"name": "projectV2",
|
||||
"description": "<p>Finds and returns the project according to the provided project number.</p>",
|
||||
"type": "ProjectV2",
|
||||
"id": "projectv2",
|
||||
"kind": "objects",
|
||||
"href": "/graphql/reference/objects#projectv2",
|
||||
"arguments": [
|
||||
{
|
||||
"name": "number",
|
||||
"description": "<p>The Project number.</p>",
|
||||
"type": {
|
||||
"name": "Int!",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "projectsV2",
|
||||
"description": "<p>List of projects this team has collaborator access to.</p>",
|
||||
"type": "ProjectV2Connection!",
|
||||
"id": "projectv2connection",
|
||||
"kind": "objects",
|
||||
"href": "/graphql/reference/objects#projectv2connection",
|
||||
"arguments": [
|
||||
{
|
||||
"name": "after",
|
||||
"description": "<p>Returns the elements in the list that come after the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "before",
|
||||
"description": "<p>Returns the elements in the list that come before the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "first",
|
||||
"description": "<p>Returns the first <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "last",
|
||||
"description": "<p>Returns the last <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "orderBy",
|
||||
"description": "<p>How to order the returned projects.</p>",
|
||||
"type": {
|
||||
"name": "ProjectV2Order",
|
||||
"id": "projectv2order",
|
||||
"kind": "input-objects",
|
||||
"href": "/graphql/reference/input-objects#projectv2order"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "repositories",
|
||||
"description": "<p>A list of repositories this team has access to.</p>",
|
||||
|
|
|
@ -42142,6 +42142,66 @@
|
|||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
},
|
||||
{
|
||||
"name": "teams",
|
||||
"description": "<p>The teams the project is linked to.</p>",
|
||||
"type": "TeamConnection!",
|
||||
"id": "teamconnection",
|
||||
"kind": "objects",
|
||||
"href": "/graphql/reference/objects#teamconnection",
|
||||
"arguments": [
|
||||
{
|
||||
"name": "after",
|
||||
"description": "<p>Returns the elements in the list that come after the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "before",
|
||||
"description": "<p>Returns the elements in the list that come before the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "first",
|
||||
"description": "<p>Returns the first <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "last",
|
||||
"description": "<p>Returns the last <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "orderBy",
|
||||
"description": "<p>Ordering options for teams returned from this connection.</p>",
|
||||
"type": {
|
||||
"name": "TeamOrder",
|
||||
"id": "teamorder",
|
||||
"kind": "input-objects",
|
||||
"href": "/graphql/reference/input-objects#teamorder"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "title",
|
||||
"description": "<p>The project's name.</p>",
|
||||
|
@ -63658,6 +63718,86 @@
|
|||
"kind": "enums",
|
||||
"href": "/graphql/reference/enums#teamprivacy"
|
||||
},
|
||||
{
|
||||
"name": "projectV2",
|
||||
"description": "<p>Finds and returns the project according to the provided project number.</p>",
|
||||
"type": "ProjectV2",
|
||||
"id": "projectv2",
|
||||
"kind": "objects",
|
||||
"href": "/graphql/reference/objects#projectv2",
|
||||
"arguments": [
|
||||
{
|
||||
"name": "number",
|
||||
"description": "<p>The Project number.</p>",
|
||||
"type": {
|
||||
"name": "Int!",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "projectsV2",
|
||||
"description": "<p>List of projects this team has collaborator access to.</p>",
|
||||
"type": "ProjectV2Connection!",
|
||||
"id": "projectv2connection",
|
||||
"kind": "objects",
|
||||
"href": "/graphql/reference/objects#projectv2connection",
|
||||
"arguments": [
|
||||
{
|
||||
"name": "after",
|
||||
"description": "<p>Returns the elements in the list that come after the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "before",
|
||||
"description": "<p>Returns the elements in the list that come before the specified cursor.</p>",
|
||||
"type": {
|
||||
"name": "String",
|
||||
"id": "string",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "first",
|
||||
"description": "<p>Returns the first <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "last",
|
||||
"description": "<p>Returns the last <em>n</em> elements from the list.</p>",
|
||||
"type": {
|
||||
"name": "Int",
|
||||
"id": "int",
|
||||
"kind": "scalars",
|
||||
"href": "/graphql/reference/scalars#int"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "orderBy",
|
||||
"description": "<p>How to order the returned projects.</p>",
|
||||
"type": {
|
||||
"name": "ProjectV2Order",
|
||||
"id": "projectv2order",
|
||||
"kind": "input-objects",
|
||||
"href": "/graphql/reference/input-objects#projectv2order"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "repositories",
|
||||
"description": "<p>A list of repositories this team has access to.</p>",
|
||||
|
|
|
@ -2791,14 +2791,6 @@
|
|||
"criticality": "breaking",
|
||||
"owner": "memex"
|
||||
},
|
||||
{
|
||||
"location": "UnlockAndResetMergeGroupInput.branch",
|
||||
"description": "<p><code>branch</code> will be removed.</p>",
|
||||
"reason": "<p>The current merge group for the repository's default branch, the <code>branch</code> argument is now a no-op</p>",
|
||||
"date": "2022-10-01",
|
||||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
},
|
||||
{
|
||||
"location": "RepositoryVulnerabilityAlert.fixReason",
|
||||
"description": "<p><code>fixReason</code> will be removed.</p>",
|
||||
|
@ -2815,22 +2807,6 @@
|
|||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
},
|
||||
{
|
||||
"location": "MergeLockedMergeGroupInput.branch",
|
||||
"description": "<p><code>branch</code> will be removed.</p>",
|
||||
"reason": "<p>Changes are merged into the repository's default branch, the <code>branch</code> argument is now a no-op</p>",
|
||||
"date": "2022-10-01",
|
||||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
},
|
||||
{
|
||||
"location": "LockMergeQueueInput.branch",
|
||||
"description": "<p><code>branch</code> will be removed.</p>",
|
||||
"reason": "<p>The merge queue is locked for the repository's default branch, the <code>branch</code> argument is now a no-op</p>",
|
||||
"date": "2022-10-01",
|
||||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
},
|
||||
{
|
||||
"location": "DependencyGraphDependency.packageLabel",
|
||||
"description": "<p><code>packageLabel</code> will be removed. Use normalized <code>packageName</code> field instead.</p>",
|
||||
|
@ -3827,14 +3803,6 @@
|
|||
}
|
||||
],
|
||||
"2022-10-01": [
|
||||
{
|
||||
"location": "UnlockAndResetMergeGroupInput.branch",
|
||||
"description": "<p><code>branch</code> will be removed.</p>",
|
||||
"reason": "<p>The current merge group for the repository's default branch, the <code>branch</code> argument is now a no-op</p>",
|
||||
"date": "2022-10-01",
|
||||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
},
|
||||
{
|
||||
"location": "RepositoryVulnerabilityAlert.fixReason",
|
||||
"description": "<p><code>fixReason</code> will be removed.</p>",
|
||||
|
@ -3850,22 +3818,6 @@
|
|||
"date": "2022-10-01",
|
||||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
},
|
||||
{
|
||||
"location": "MergeLockedMergeGroupInput.branch",
|
||||
"description": "<p><code>branch</code> will be removed.</p>",
|
||||
"reason": "<p>Changes are merged into the repository's default branch, the <code>branch</code> argument is now a no-op</p>",
|
||||
"date": "2022-10-01",
|
||||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
},
|
||||
{
|
||||
"location": "LockMergeQueueInput.branch",
|
||||
"description": "<p><code>branch</code> will be removed.</p>",
|
||||
"reason": "<p>The merge queue is locked for the repository's default branch, the <code>branch</code> argument is now a no-op</p>",
|
||||
"date": "2022-10-01",
|
||||
"criticality": "breaking",
|
||||
"owner": "jhunschejones"
|
||||
}
|
||||
],
|
||||
"2022-07-01": [
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
"resolution": null,
|
||||
"resolved_by": null,
|
||||
"resolved_at": null,
|
||||
"resolution_comment": null,
|
||||
"push_protection_bypassed": true,
|
||||
"push_protection_bypassed_by": {
|
||||
"login": "octocat",
|
||||
|
|
|
@ -334,7 +334,7 @@ function getHits(hits, { indexName, debug, includeTopics }) {
|
|||
id: hit._id,
|
||||
url: hit._source.url,
|
||||
title: hit._source.title,
|
||||
breadcrumbs: hit._source.breadcrumbs || [],
|
||||
breadcrumbs: hit._source.breadcrumbs,
|
||||
highlights: hit.highlight || {},
|
||||
}
|
||||
if (includeTopics) {
|
||||
|
|
|
@ -25,7 +25,7 @@ if (!process.env.ELASTICSEARCH_URL) {
|
|||
}
|
||||
|
||||
// This suite only runs if $ELASTICSEARCH_URL is set.
|
||||
describeIfElasticsearchURL('search middleware', () => {
|
||||
describeIfElasticsearchURL('search v1 middleware', () => {
|
||||
jest.setTimeout(60 * 1000)
|
||||
|
||||
test('basic search', async () => {
|
||||
|
@ -171,6 +171,21 @@ describeIfElasticsearchURL('search middleware', () => {
|
|||
}
|
||||
})
|
||||
|
||||
test('breadcrumbless records should always return a string', async () => {
|
||||
const sp = new URLSearchParams()
|
||||
sp.set('query', 'breadcrumbs')
|
||||
const res = await get('/api/search/v1?' + sp)
|
||||
expect(res.statusCode).toBe(200)
|
||||
const results = JSON.parse(res.text)
|
||||
// safe because we know exactly the fixtures
|
||||
const hit = results.hits[0]
|
||||
expect(hit.breadcrumbs).toBe('')
|
||||
})
|
||||
})
|
||||
|
||||
describeIfElasticsearchURL('search legacy middleware', () => {
|
||||
jest.setTimeout(60 * 1000)
|
||||
|
||||
test('basic legacy search', async () => {
|
||||
const sp = new URLSearchParams()
|
||||
sp.set('query', 'foo')
|
||||
|
|
|
@ -16,5 +16,14 @@
|
|||
"content": "Can't have foo if you don't also have bar.",
|
||||
"topics": ["Test", "Fixture", "Get started"],
|
||||
"popularity": 0.6
|
||||
},
|
||||
"/en/breadcrumbless": {
|
||||
"objectID": "/en/bar",
|
||||
"breadcrumbs": "",
|
||||
"title": "Breadcrumbless",
|
||||
"headings": "",
|
||||
"content": "Not all pages have a breadcrumb. Fact of life.",
|
||||
"topics": [],
|
||||
"popularity": 0.1
|
||||
}
|
||||
}
|
||||
|
|
|
@ -146,7 +146,7 @@ When you set your status, you can also let people know that you have limited ava
|
|||
|
||||
If you select the "Busy" option, when people @mention your username, assign you an issue or pull request, or request a pull request review from you, a note next to your username will show that you're busy. You will also be excluded from automatic review assignment for pull requests assigned to any teams you belong to. For more information, see "[Managing code review settings for your team](/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team)."
|
||||
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set your status** or, if you already have a status set, click your current status.
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set status** or, if you already have a status set, click your current status.
|
||||
![Button on profile to set your status](/assets/images/help/profile/set-status-on-profile.png)
|
||||
2. To add custom text to your status, click in the text field and type a status message.
|
||||
![Field to type a status message](/assets/images/help/profile/type-a-status-message.png)
|
||||
|
|
|
@ -51,7 +51,7 @@ To ensure that commits are attributed to you and appear in your contributions gr
|
|||
|
||||
{% note %}
|
||||
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is a seven-digit ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is an ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
title: Almacenar en caché las dependencias para agilizar los flujos de trabajo
|
||||
shortTitle: Caching dependencies
|
||||
intro: 'Para hacer que tus flujos de trabajo sean más rápidos y eficientes, puedes crear y usar cachés para las dependencias y otros archivos comúnmente reutilizados.'
|
||||
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,22 +14,17 @@ type: tutorial
|
|||
topics:
|
||||
- Workflows
|
||||
miniTocMaxHeadingLevel: 3
|
||||
ms.openlocfilehash: efae730b48d2423821bb95ac639df355e6b9b5d9
|
||||
ms.sourcegitcommit: 478f2931167988096ae6478a257f492ecaa11794
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: es-ES
|
||||
ms.lasthandoff: 09/09/2022
|
||||
ms.locfileid: '147710311'
|
||||
---
|
||||
## Acerca de almacenar en caché las dependencias de flujo de trabajo
|
||||
|
||||
Las ejecuciones de flujo de trabajo a menudo reutilizan las mismas salidas o dependencias descargadas de una ejecución a otra. Por ejemplo, las herramientas de administración de paquetes y dependencias como Maven, Gradle, npm y Yarn mantienen una caché local de las dependencias descargadas.
|
||||
## About caching workflow dependencies
|
||||
|
||||
{% ifversion fpt or ghec %} Los trabajos en ejecutores hospedados en {% data variables.product.prodname_dotcom %} se inician en una imagen de ejecutor limpia y deben descargar dependencias cada vez, lo que provoca una mayor utilización de la red, un tiempo de ejecución más largo y un mayor costo. {% endif %}Para ayudar a acelerar el tiempo que se tarda en volver a crear archivos como dependencias, {% data variables.product.prodname_dotcom %} puede almacenar en caché los archivos que utilizas con frecuencia en los flujos de trabajo.
|
||||
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.
|
||||
|
||||
Para almacenar en caché las dependencias de un trabajo, puedes usar la [acción `cache`](https://github.com/actions/cache) de {% data variables.product.prodname_dotcom %}. La acción crea y restaura una memoria caché que identifica una clave única. Como alternativa, si almacenas en caché los administradores de paquetes que se enumeran debajo, el uso de sus respectivas acciones setup-* requiere una configuración mínima, y creará y restaurará las cachés de dependencias automáticamente.
|
||||
{% 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.
|
||||
|
||||
| Administradores de paquetes | acción de setup-* para almacenar en caché |
|
||||
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 |
|
||||
|---|---|
|
||||
| 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) |
|
||||
|
@ -39,40 +34,40 @@ Para almacenar en caché las dependencias de un trabajo, puedes usar la [acción
|
|||
|
||||
{% warning %}
|
||||
|
||||
**Advertencia**: {% ifversion fpt or ghec %}Ten en cuenta lo siguiente al usar el almacenamiento en caché con {% 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 %}Se recomienda no almacenar ninguna información confidencial en la memoria caché. Por ejemplo, la información confidencial puede incluir tokens de acceso o credenciales de inicio de sesión almacenados en un archivo en la ruta de la caché. Además, los programas de interfaz de línea de comandos (CLI), como `docker login`, pueden guardar las credenciales de acceso en un archivo de configuración. Cualquier usuario con acceso de lectura puede crear una solicitud de incorporación de cambios en un repositorio y acceder a los contenidos de una caché. Las bifurcaciones de un repositorio también pueden crear solicitudes de extracción en la rama base y acceder a las cachés en la rama base.
|
||||
* {% 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 %}
|
||||
* Al usar ejecutores autohospedados, las cachés de las ejecuciones de flujo de trabajo se almacenan en almacenamiento en la nube propiedad de {% data variables.product.company_short %}. Una solución de almacenamiento propiedad del cliente solo está disponible con {% 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 %}
|
||||
|
||||
Para más información sobre los artefactos de ejecución de flujo de trabajo, consulta "[Conservación de datos de flujo de trabajo mediante artefactos](/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)."
|
||||
|
||||
## Restricciones para acceder a una caché
|
||||
## Restrictions for accessing a cache
|
||||
|
||||
Un flujo de trabajo puede acceder y restaurar una caché creada en la rama actual, la rama base (incluidas las ramas base de los repositorios bifurcados) o la rama predeterminada (por lo general, `main`). Por ejemplo, un caché creado en la rama predeterminada sería accesible desde cualquier solicitud de cambios. Además, si la rama `feature-b` tiene la rama base `feature-a`, un flujo de trabajo desencadenado en `feature-b` tendría acceso a las memorias caché creadas en la rama predeterminada (`main`), `feature-a` y `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`.
|
||||
|
||||
Las restricciones de acceso proporcionan aislamiento y seguridad de caché al crear una frontera lógica entre las ramas o etiquetas diferentes. Por ejemplo, una caché creada para la rama `feature-a` (con la base `main`) no sería accesible para una solicitud de incorporación de cambios para la rama `feature-c` (con la base `main`). En líneas similares, una memoria caché creada para la etiqueta `release-a` (desde la base `main`) no sería accesible para un flujo de trabajo desencadenado para la etiqueta `release-b` (con la base `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`).
|
||||
|
||||
Los flujos de trabajo múltiples dentro de un repositorio comparten entradas de caché. Puede accederse a un caché que se crea para una rama dentro de un flujo de trabajo y se puede establecer desde otro flujo de trabajo para el mismo repositorio y rama.
|
||||
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.
|
||||
|
||||
## Uso de la acción `cache`
|
||||
## Using the `cache` action
|
||||
|
||||
La [acción `cache`](https://github.com/actions/cache) intentará restaurar una caché en función del `key` que proporciones. Cuando la acción encuentra una memoria caché, la acción restaura los archivos almacenados en caché al `path` que configures.
|
||||
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.
|
||||
|
||||
Si no hay una coincidencia exacta, la acción crea automáticamente una caché si el trabajo se completa correctamente. La nueva caché usará el elemento `key` que proporcionaste y contiene los archivos que especificaste en `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`.
|
||||
|
||||
Opcionalmente, puedes proporcionar una lista de `restore-keys` para usarlos cuando `key` no coincide con una caché existente. Una lista de `restore-keys` resulta útil cuando se restaura una memoria caché desde otra rama porque `restore-keys` puede coincidir parcialmente con claves de caché. Para obtener más información sobre la coincidencia con `restore-keys`, consulta "[Coincidencia con una clave de caché](#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)."
|
||||
|
||||
### Parámetros de entrada de la acción `cache`
|
||||
### Input parameters for the `cache` action
|
||||
|
||||
- `key`: **obligatorio** La clave creada al guardar una memoria caché y la clave usada para buscar una caché. Puede ser cualquier combinación de variables, valores de contexto, cadenas estáticas y funciones. Las claves tienen una longitud máxima de 512 caracteres y las claves más largas que la longitud máxima provocarán un error en la acción.
|
||||
- `path`: **obligatorio** las rutas de acceso en el ejecutor para almacenar en caché o restaurar.
|
||||
- Puedes especificar una única ruta de acceso o agregar varias rutas de acceso en líneas independientes. Por ejemplo:
|
||||
- `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 @@ Opcionalmente, puedes proporcionar una lista de `restore-keys` para usarlos cuan
|
|||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
```
|
||||
- Puedes especificar directorios o archivos únicos, y los patrones globales son compatibles.
|
||||
- Puedes especificar rutas de acceso absolutas o rutas de acceso relativas al directorio del área de trabajo.
|
||||
- `restore-keys`: **opcional** una cadena que contiene claves de restauración alternativas, con cada clave de restauración colocada en una nueva línea. Si no se produce ningún acierto de caché para `key`, estas claves de restauración se usan secuencialmente en el orden proporcionado para buscar y restaurar una caché. Por ejemplo:
|
||||
- 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 @@ Opcionalmente, puedes proporcionar una lista de `restore-keys` para usarlos cuan
|
|||
```
|
||||
{% endraw %}
|
||||
|
||||
### Parámetros de salida de la acción `cache`
|
||||
### Output parameters for the `cache` action
|
||||
|
||||
- `cache-hit`: valor booleano para indicar que se encontró una coincidencia exacta para la clave.
|
||||
- `cache-hit`: A boolean value to indicate an exact match was found for the key.
|
||||
|
||||
### Ejemplo de uso de la acción `cache`
|
||||
### Example using the `cache` action
|
||||
|
||||
En este ejemplo se crea una nueva memoria caché cuando cambian los paquetes del archivo `package-lock.json` o cuando cambia el sistema operativo del ejecutor. La clave de caché usa contextos y expresiones para generar una clave que incluye el sistema operativo del ejecutor y un hash SHA-256 del archivo `package-lock.json`.
|
||||
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
|
||||
```
|
||||
|
||||
Cuando `key` coincide con una caché existente, se denomina un _acierto de caché_ y la acción restaura los archivos almacenados en caché en el directorio `path`.
|
||||
When `key` matches an existing cache, it's called a _cache hit_, and the action restores the cached files to the `path` directory.
|
||||
|
||||
Cuando `key` no coincide con una caché existente, se denomina un _error de caché_ y se crea automáticamente una caché si el trabajo se completa correctamente.
|
||||
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.
|
||||
|
||||
Cuando se produce un error de caché, la acción también busca los elementos `restore-keys` especificados en busca de coincidencias:
|
||||
When a cache miss occurs, the action also searches your specified `restore-keys` for any matches:
|
||||
|
||||
1. Si proporcionas `restore-keys`, la acción `cache` busca secuencialmente las memorias caché que coincidan con la lista de `restore-keys`.
|
||||
- Cuando hay una coincidencia exacta, la acción restaura los archivos en la memoria caché al directorio `path`.
|
||||
- Si no hay coincidencias exactas, la acción busca coincidencias parciales de las claves de restauración. Cuando la acción encuentra una coincidencia parcial, se restaura la caché más reciente al directorio `path`.
|
||||
1. La acción `cache` se completa y se ejecuta el paso siguiente del flujo de trabajo.
|
||||
1. Si el trabajo se completa correctamente, la acción crea automáticamente una caché con los contenidos del directorio `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.
|
||||
|
||||
Para obtener una explicación más detallada del proceso de coincidencia de caché, consulta "[Coincidencia de una clave de caché](#matching-a-cache-key)". Una vez que creas una caché, no puedes cambiar los contenidos de una memoria caché existente, pero puedes crear una nueva caché con una clave nueva.
|
||||
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.
|
||||
|
||||
### Usar contextos para crear claves de caché
|
||||
### Using contexts to create cache keys
|
||||
|
||||
Una clave de caché puede incluir cualquiera de los contextos, funciones, literales y operadores admitidos por {% data variables.product.prodname_actions %}. Para obtener más información, consulta "[Contextos](/actions/learn-github-actions/contexts)" y "[Expresiones](/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)."
|
||||
|
||||
Usar expresiones para crear un elemento `key` te permite crear automáticamente una caché cuando las dependencias cambian.
|
||||
Using expressions to create a `key` allows you to automatically create a new cache when dependencies change.
|
||||
|
||||
Por ejemplo, puedes crear una `key` mediante una expresión que calcule el hash de un archivo `package-lock.json` de npm. Por lo tanto, cuando cambian las dependencias que componen el cambio en el archivo `package-lock.json`, la clave de caché cambia y se crea automáticamente una caché.
|
||||
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 %} evalúa la expresión `hash "package-lock.json"` para generar el `key` final.
|
||||
{% data variables.product.prodname_dotcom %} evaluates the expression `hash "package-lock.json"` to derive the final `key`.
|
||||
|
||||
```yaml
|
||||
npm-d5ea0750
|
||||
```
|
||||
|
||||
### Uso de la salida de la acción `cache`
|
||||
### Using the output of the `cache` action
|
||||
|
||||
Puedes usar la salida de la acción `cache` para hacer algo en función de si se ha producido un acierto o un error en la caché. Si se encuentra una coincidencia exacta para la caché en la `key` especificada, la salida `cache-hit` se establece en `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`.
|
||||
|
||||
En el flujo de trabajo de ejemplo anterior, hay un paso que enumera el estado de los módulos de Node si se ha producido un error en la caché:
|
||||
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 @@ En el flujo de trabajo de ejemplo anterior, hay un paso que enumera el estado de
|
|||
run: npm list
|
||||
```
|
||||
|
||||
## Hacer coincidir una clave de caché
|
||||
## Matching a cache key
|
||||
|
||||
La acción `cache` busca primero los aciertos de caché para `key` y `restore-keys` en la rama que contiene la ejecución del flujo de trabajo. Si no hay aciertos en la rama actual, la acción `cache` busca `key` y `restore-keys` en la rama primaria y las ramas ascendentes.
|
||||
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` permite especificar una lista de claves de restauración alternativas que se usarán cuando se produce un error de caché en `key`. Puedes crear múltiples claves de restauración ordenadas desde las más específicas hasta las menos específicas. La acción `cache` busca `restore-keys` en orden secuencial. Cuando una clave no coincide directamente, la acción busca las claves prefijadas con la clave de restauración. Si hay múltiples coincidencias parciales para una clave de restauración, la acción devuelve la caché que se creó más recientemente.
|
||||
`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.
|
||||
|
||||
### Ejemplo usando múltiples claves de restauración
|
||||
### Example using multiple restore keys
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
|
@ -205,7 +200,7 @@ restore-keys: |
|
|||
```
|
||||
{% endraw %}
|
||||
|
||||
El ejecutor evalúa las expresiones, que se resuelven en estos `restore-keys`:
|
||||
The runner evaluates the expressions, which resolve to these `restore-keys`:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
|
@ -216,13 +211,13 @@ restore-keys: |
|
|||
```
|
||||
{% endraw %}
|
||||
|
||||
La clave de restauración `npm-feature-` coincide con cualquier clave que comience por la cadena `npm-feature-`. Por ejemplo, las claves `npm-feature-fd3052de` y `npm-feature-a9b253ff` coinciden con la clave de restauración. Se utilizará la caché con la fecha de creación más reciente. Las claves en este ejemplo se buscan en el siguiente orden:
|
||||
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`** coincide con un hash específico.
|
||||
1. **`npm-feature-`** coincide con las claves de caché con el prefijo `npm-feature-`.
|
||||
1. **`npm-`** coincide con cualquier clave con el prefijo `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-`.
|
||||
|
||||
#### Ejemplo de prioridad de búsqueda
|
||||
#### Example of search priority
|
||||
|
||||
```yaml
|
||||
key:
|
||||
|
@ -232,30 +227,81 @@ restore-keys: |
|
|||
npm-
|
||||
```
|
||||
|
||||
Por ejemplo, si una solicitud de incorporación de cambios contiene una rama `feature` y tiene como destino la rama predeterminada (`main`), la acción busca `key` y `restore-keys` en el orden siguiente:
|
||||
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. Clave `npm-feature-d5ea0750` en la rama `feature`
|
||||
1. Clave `npm-feature-` en la rama `feature`
|
||||
1. Clave `npm-` en la rama `feature`
|
||||
1. Clave `npm-feature-d5ea0750` en la rama `main`
|
||||
1. Clave `npm-feature-` en la rama `main`
|
||||
1. Clave `npm-` en la rama `main`
|
||||
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
|
||||
|
||||
## Límites de uso y política de desalojo
|
||||
## Usage limits and eviction policy
|
||||
|
||||
{% data variables.product.prodname_dotcom %} eliminará todas las entradas de caché a las que no se haya accedido en más de 7 días. No hay límite en la cantidad de cachés que puedes almacenar, pero el tamaño total de todas las cachés de un repositorio es limitado{% ifversion actions-cache-policy-apis %}. De manera predeterminada, el límite es de 10 GB por repositorio, pero este límite puede ser diferente en función de las directivas que establezcan los propietarios de la empresa o los administradores del repositorio.{% else %} hasta 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 %} Para información sobre cómo cambiar las directivas para el límite de tamaño de la caché de un repositorio, consulta "[Aplicación de directivas para {% data variables.product.prodname_actions %} en la empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)" y "[Administración de la configuración de {% data variables.product.prodname_actions %} para un repositorio](/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 %}
|
||||
|
||||
## Administración de cachés
|
||||
## Managing caches
|
||||
|
||||
Puedes usar la API de REST de {% data variables.product.product_name %} para administrar las memorias caché. {% ifversion actions-cache-list-delete-apis %}Puedes usar la API para enumerar y eliminar entradas de caché y ver el uso de la caché.{% elsif actions-cache-management %}En la actualidad, puedes usar la API para ver el uso de la caché, con más funcionalidad esperada en actualizaciones futuras.{% endif %} Para más información, consulta la documentación de la API REST "[Caché de {% data variables.product.prodname_actions %}](/rest/actions/cache)".
|
||||
{% ifversion actions-cache-ui %}
|
||||
|
||||
También puedes instalar una extensión de {% data variables.product.prodname_cli %} para administrar las memorias caché desde la línea de comandos. Para obtener más información sobre la extensión, consulta [la documentación de la extensión](https://github.com/actions/gh-actions-cache#readme). Para más información sobre las extensiones de {% data variables.product.prodname_cli %}, consulta "[Uso de extensiones de la CLI de GitHub](/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 %}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Configuración de la red de agrupaciones
|
||||
intro: 'La agrupación de {% data variables.product.prodname_ghe_server %} se basa en la resolución de nombre de DNS pertinente, balanceo de carga y comunicación entre los nodos para operar de manera adecuada.'
|
||||
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: es-ES
|
||||
ms.lasthandoff: 09/10/2022
|
||||
ms.locfileid: '145112762'
|
||||
---
|
||||
## Consideraciones sobre la red
|
||||
## Network considerations
|
||||
|
||||
El diseño de red más simple para una agrupación es colocar los nodos en una LAN única. Si un clúster debe abarcar subredes, no te recomendamos configurar ninguna regla de firewall entre ellas. La latencia entre nodos debe ser de menos de 1 milisegundo.
|
||||
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 %} Para obtener alta disponibilidad, la latencia entre la red con los nodos activos y la red con los nodos pasivos debe ser inferior a 70 milisegundos. No te recomendamos configurar una firewall entre las dos redes.{% endif %}
|
||||
{% data reusables.enterprise_clustering.network-latency %}
|
||||
|
||||
### Puertos de la aplicación para usuarios finales
|
||||
### Application ports for end users
|
||||
|
||||
Los puertos de la aplicación permiten que los usuarios finales accedan a Git y a las aplicaciones web.
|
||||
Application ports provide web application and Git access for end users.
|
||||
|
||||
| Port | Descripción | Cifrados |
|
||||
| Port | Description | Encrypted |
|
||||
| :------------- | :------------- | :------------- |
|
||||
| 22/TCP | Git sobre SSH | Sí |
|
||||
| 25/TCP | SMTP | Requiere STARTTLS |
|
||||
| 80/TCP | HTTP | No<br>(Cuando SSL está habilitado, este puerto redirige a HTTPS) |
|
||||
| 443/TCP | HTTPS | Sí |
|
||||
| 9418/TCP | Puerto de protocolo Git simple<br>(Deshabilitado en modo privado) | No |
|
||||
| 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 |
|
||||
|
||||
### Puertos administrativos
|
||||
### Administrative ports
|
||||
|
||||
No se requieren puertos administrativos para el uso de la aplicación básica por parte de los usuarios finales.
|
||||
Administrative ports are not required for basic application use by end users.
|
||||
|
||||
| Port | Descripción | Cifrados |
|
||||
| Port | Description | Encrypted |
|
||||
| :------------- | :------------- | :------------- |
|
||||
| ICMP | Ping de ICMP | No |
|
||||
| 122/TCP | SSH administrativo | Sí |
|
||||
| ICMP | ICMP Ping | No |
|
||||
| 122/TCP | Administrative SSH | Yes |
|
||||
| 161/UDP | SNMP | No |
|
||||
| 8080/TCP | Consola de gestión HTTP | No<br>(Cuando SSL está habilitado, este puerto redirige a HTTPS) |
|
||||
| 8443/TCP | Consola de gestión de HTTPS | Sí |
|
||||
| 8080/TCP | Management Console HTTP | No<br>(When SSL is enabled this port redirects to HTTPS) |
|
||||
| 8443/TCP | Management Console HTTPS | Yes |
|
||||
|
||||
### Puertos de comunicación de agrupación
|
||||
### Cluster communication ports
|
||||
|
||||
Si un cortafuego de nivel de red se coloca entre los nodos estos puertos deberán estar accesibles. La comunicación entre los nodos no está cifrada. Estos puertos no deberían estar accesibles externamente.
|
||||
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 | Descripción |
|
||||
| Port | Description |
|
||||
| :------------- | :------------- |
|
||||
| 1336/TCP | API Interna |
|
||||
| 3033/TCP | Acceso SVN interno |
|
||||
| 3037/TCP | Acceso SVN interno |
|
||||
| 1336/TCP | Internal API |
|
||||
| 3033/TCP | Internal SVN access |
|
||||
| 3037/TCP | Internal SVN access |
|
||||
| 3306/TCP | MySQL |
|
||||
| 4486/TCP | Acceso del gobernador |
|
||||
| 5115/TCP | Back-end de almacenamiento |
|
||||
| 5208/TCP | Acceso SVN interno |
|
||||
| 4486/TCP | Governor access |
|
||||
| 5115/TCP | Storage backend |
|
||||
| 5208/TCP | Internal SVN access |
|
||||
| 6379/TCP | Redis |
|
||||
| 8001/TCP | Grafana |
|
||||
| 8090/TCP | Acceso a GPG interno |
|
||||
| 8149/TCP | Acceso al servidor de archivos de 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 | Servidor de archivos de las páginas |
|
||||
| 9105/TCP | Servidor LFS |
|
||||
| 9102/TCP | Pages file server |
|
||||
| 9105/TCP | LFS server |
|
||||
| 9200/TCP | Elasticsearch |
|
||||
| 9203/TCP | Servicio de código semántico |
|
||||
| 9203/TCP | Semantic code service |
|
||||
| 9300/TCP | Elasticsearch |
|
||||
| 11211/TCP | Memcache |
|
||||
| 161/UDP | SNMP |
|
||||
|
@ -84,42 +78,42 @@ Si un cortafuego de nivel de red se coloca entre los nodos estos puertos deberá
|
|||
| 8302/UDP | Consul |
|
||||
| 25827/UDP | Collectd |
|
||||
|
||||
## Configurar un balanceador de carga
|
||||
## Configuring a load balancer
|
||||
|
||||
Recomendamos un balanceador de carga externo basado en TCP que respalde el protocolo PROXY para distribuir el tráfico a través de los nodos. Considera estas configuraciones del balanceador de carga:
|
||||
We recommend an external TCP-based load balancer that supports the PROXY protocol to distribute traffic across nodes. Consider these load balancer configurations:
|
||||
|
||||
- Los puertos TCP (que se muestran a continuación) se deberán reenviar a los nodos que ejecutan el servicio `web-server`. Estos son los únicos nodos que sirven a las solicitudes de clientes externos.
|
||||
- Las sesiones pegajosas no deberían habilitarse.
|
||||
- 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 %}
|
||||
|
||||
## Manejar información de conexión de clientes
|
||||
## Handling client connection information
|
||||
|
||||
Dado que las conexiones de clientes con el agrupamiento provienen del balanceador de carga, no se puede perder la dirección IP de cliente. Para capturar adecuadamente la información de la conexión de clientes, se requiere una consideración adicional.
|
||||
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 %}
|
||||
|
||||
### Habilitar el soporte PROXY en {% data variables.product.prodname_ghe_server %}
|
||||
### Enabling PROXY support on {% data variables.product.prodname_ghe_server %}
|
||||
|
||||
Recomendamos firmemente habilitar el soporte PROXY para tu instancia y el balanceador de carga.
|
||||
We strongly recommend enabling PROXY support for both your instance and the load balancer.
|
||||
|
||||
{% data reusables.enterprise_installation.proxy-incompatible-with-aws-nlbs %}
|
||||
|
||||
- Para tu instancia, usa este comando:
|
||||
- For your instance, use this command:
|
||||
```shell
|
||||
$ ghe-config 'loadbalancer.proxy-protocol' 'true' && ghe-cluster-config-apply
|
||||
```
|
||||
- Para el balanceador de carga, usa las instrucciones proporcionadas por tu proveedor.
|
||||
- For the load balancer, use the instructions provided by your vendor.
|
||||
|
||||
{% data reusables.enterprise_clustering.proxy_protocol_ports %}
|
||||
|
||||
### Habilitar el soporte X-Forwarded-For en {% data variables.product.prodname_ghe_server %}
|
||||
### Enabling X-Forwarded-For support on {% data variables.product.prodname_ghe_server %}
|
||||
|
||||
{% data reusables.enterprise_clustering.x-forwarded-for %}
|
||||
|
||||
Para habilitar el encabezado `X-Forwarded-For`, use este comando:
|
||||
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 %}
|
||||
|
||||
### Configurar revisiones de estado
|
||||
Las comprobaciones de estado permiten que un balanceador de carga deje de enviar tráfico a un nodo que no responde si una comprobación preconfigurada falla en ese nodo. Si un nodo de agrupación falla, las revisiones de estado emparejadas con nodos redundantes brindan alta disponibilidad.
|
||||
### 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 %}
|
||||
|
||||
## Requisitos de DNS
|
||||
## DNS Requirements
|
||||
|
||||
{% data reusables.enterprise_clustering.load_balancer_dns %}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Configurar la replicación con disponibilidad alta para un clúster
|
||||
intro: 'Puedes configurar una réplica pasiva de todo tu clúster de {% data variables.product.prodname_ghe_server %} en una ubicación diferentes, lo cual le permitirá tolerar fallos en nodos redundantes.'
|
||||
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: es-ES
|
||||
ms.lasthandoff: 09/11/2022
|
||||
ms.locfileid: '145120633'
|
||||
---
|
||||
## Acerca de la replicación de disponibilidad alta para clústers
|
||||
## About high availability replication for clusters
|
||||
|
||||
Puedes configurar el despliegue de un clúster de {% data variables.product.prodname_ghe_server %} para que tenga disponibilidad alta, mientras que un conjunto idéntico de nodos pasivos se sincroniza con los nodos en tu clúster activo. Si las características de hardware o software afectan el centro de datos que alberga tu clúster activo, puedes hacer una recuperación de fallos manual a los nodos de réplica y seguir procesando las solicitudes de los usuarios, minimizando así el impacto del servicio interrumpido.
|
||||
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.
|
||||
|
||||
En el modo de alta disponibilidad, cada nodo activo se sincroniza regularmente con un nodo pasivo correspondiente. El nodo pasivo se ejecuta en espera y no sirve a las aplicaciones ni procesa solicitudes de usuarios.
|
||||
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.
|
||||
|
||||
Te recomendamos configurar la disponibilidad alta como parte de un plan integral de recuperación de desastres para {% data variables.product.prodname_ghe_server %}. También te recomendamos realizar respaldos constantemente. Para obtener más información, consulta "[Configuración de copias de seguridad en el dispositivo](/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)."
|
||||
|
||||
## Prerrequisitos
|
||||
## Prerequisites
|
||||
|
||||
### Hardware y software
|
||||
### Hardware and software
|
||||
|
||||
Para cada nodo existente en tu clúster activo, necesitarás aprovisionar una segunda máquina virtual con recursos de hardware idénticos. Por ejemplo, si tu clúster tiene 11 nodos y cada nodo tiene 12 vCPUs, 96 GB de RAM, y 750 GB de almacenamiento adjunto, deberás aprovisionar 11 máquinas virtuales en donde cada una tenga 12 vCPUs, 96 GB de RAM, y 750GB de almacenamiento adjunto.
|
||||
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.
|
||||
|
||||
En cada máquina virtual, instala la misma versión de {% data variables.product.prodname_ghe_server %} que se ejecuta en los nodos en tu clúster activo. No necesitas cargar una licencia ni realizar alguna configuración adicional. Para obtener más información, consulta "[Configuración de una instancia de {% 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 %}
|
||||
|
||||
**Nota**: Los nodos que pretendes utilizar para la replicación de alta disponibilidad deben ser instancias independientes de {% data variables.product.prodname_ghe_server %}. No inicialices los nodos pasivos como un segundo clúster.
|
||||
**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 %}
|
||||
|
||||
### Red
|
||||
### Network
|
||||
|
||||
Debes asignar una dirección IP estática a cada nodo nuevo que aprovisiones, y debes configurar un balanceador de carga para aceptar las conecciones y dirigirlas a los nodos que están a nivel del front-end de tu clúster.
|
||||
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.
|
||||
|
||||
No te recomendamos configurar un firewall entre la red con con tu clúster activo y aquella con tu clúster pasivo. Lalatencia entre las redes con nodos activos y aquellas con nodos pasivos debe ser de menos de 70 milisegundos. Para obtener más información sobre la conectividad de red entre los nodos del clúster pasivo, consulta "[Configuración de red del clúster](/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)."
|
||||
|
||||
## Crear una réplica de disponibilidad alta para un clúster
|
||||
## Creating a high availability replica for a cluster
|
||||
|
||||
- [Asignación de nodos activos al centro de datos primario](#assigning-active-nodes-to-the-primary-datacenter)
|
||||
- [Adición de nodos pasivos al archivo de configuración del clúster](#adding-passive-nodes-to-the-cluster-configuration-file)
|
||||
- [Configuración de ejemplo](#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)
|
||||
|
||||
### Asignar nodos activos al datacenter primario
|
||||
### Assigning active nodes to the primary datacenter
|
||||
|
||||
Antes de que definas un datacenter secundario para tus nodos pasivos, asegúrate de que has asignado tus nodos activos al datacenter primario.
|
||||
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. Observa el nombre del datacenter primario de tus clústers. La sección `[cluster]` de la parte superior del archivo de configuración del clúster define el nombre del centro de datos principal, mediante el par clave-valor `primary-datacenter`. De manera predeterminada, el centro de datos principal del clúster se denomina `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>
|
||||
```
|
||||
|
||||
- Opcionalmente, puedes cambiar el nombre del centro de datos principal por uno más descriptivo o preciso editando el valor de `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 %} Debajo del encabezado de cada nodo, agrega un par de clave-valor para asignar el nodo a un datacenter. Usa el mismo valor que `primary-datacenter` del paso 3 anterior. Por ejemplo, si quieres utilizar el nombre predeterminado (`default`), agrega el siguiente par clave-valor a la sección para cada nodo.
|
||||
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
|
||||
```
|
||||
|
||||
Cuando hayas terminado, la sección para cada nodo en el archivo de configuración del clúster se debería ver como en el siguiente ejemplo. {% 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 %}
|
||||
|
||||
**Nota**: Si has cambiado el nombre del centro de datos principal en el paso 3, busca el par clave-valor `consul-datacenter` en la sección de cada nodo y cambia el valor al centro de datos principal cuyo nombre ha cambiado. Por ejemplo, si has asignado el nombre `primary` al centro de datos principal, usa el siguiente par clave-valor para cada nodo.
|
||||
**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 @@ Antes de que definas un datacenter secundario para tus nodos pasivos, asegúrate
|
|||
|
||||
{% data reusables.enterprise_clustering.configuration-finished %}
|
||||
|
||||
Después de que {% data variables.product.prodname_ghe_server %} te regrese al prompt, habrás terminado de asignar tus nodos al datacenter primario del clúster.
|
||||
After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished assigning your nodes to the cluster's primary datacenter.
|
||||
|
||||
### Agregar nodos pasivos al archivo de configuración de clúster
|
||||
### Adding passive nodes to the cluster configuration file
|
||||
|
||||
Para configurar la disponibilidad alta, debes definir un nodo pasivo correspondiente para cada nodo activo en tu clúster. Con las siguientes instrucciones se crea una configuración de clúster nueva que define tanto los nodos activos como los pasivos. Podrá:
|
||||
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:
|
||||
|
||||
- Crear una copia del archivo de configuración del clúster activo.
|
||||
- Editar la copia para definir los nodos pasivos que corresponden a los nodos activos, agregando las direcciones IP de las máquinas virtuales nuevas que aprovisionaste.
|
||||
- Fusionar la copia modificada de la configuración del clúster con tu configuración activa.
|
||||
- Aplicar la configuración nueva para comenzar la replicación.
|
||||
- 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.
|
||||
|
||||
Para ver una configuración de ejemplo, consulta "[Configuración de ejemplo](#example-configuration)".
|
||||
For an example configuration, see "[Example configuration](#example-configuration)."
|
||||
|
||||
1. Para cada nodo en tu clúster, aprovisiona una máquina virtual coincidente con especificaciones idénticas que ejecute la misma versión de {% data variables.product.prodname_ghe_server %}. Anota la dirección IPv4 y el nombre de host para cada nodo de clúster nuevo. Para obtener más información, consulta "[Requisitos previos](#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 %}
|
||||
|
||||
**Nota**: Si estás reconfigurando la alta disponibilidad después de una conmutación por error, puedes utilizar los nodos antiguos del centro de datos principal en su lugar.
|
||||
**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. Respalda tu configuración de clúster existente.
|
||||
3. Back up your existing cluster configuration.
|
||||
|
||||
```
|
||||
cp /data/user/common/cluster.conf ~/$(date +%Y-%m-%d)-cluster.conf.backup
|
||||
```
|
||||
|
||||
4. Crea una copia de tu archivo de configuración de clúster en una ubicación temporal, como _/home/admin/cluster-passive.conf_. Elimina pares clave-valor únicos para direcciones IP (`ipv*`), UUID (`uuid`) y claves públicas para 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. Quita la sección de `[cluster]` del archivo temporal de configuración de clúster temporal que copiaste en el paso anterior.
|
||||
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. Asigna un nombre para el datacenter secundario en donde aprovisionaste tus nodos pasivos, luego actualiza el archivo temporal de configuración de clúster con el nombre nuevo del datacenter. Reemplaza `SECONDARY` por el nombre elegido.
|
||||
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. Asigna un patrón para los nombres de host del nodo pasivo.
|
||||
7. Decide on a pattern for the passive nodes' hostnames.
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Advertencia**: Los nombres de host para los nodos pasivos deben ser únicos y diferir del nombre de host para el nodo activo correspondiente.
|
||||
**Warning**: Hostnames for passive nodes must be unique and differ from the hostname for the corresponding active node.
|
||||
|
||||
{% endwarning %}
|
||||
|
||||
8. Abre el archivo temporal de configuración de clúster del paso 3 en un editor de texto. Por ejemplo, puedes utilizar 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. En cada sección dentro del archivo temporal de configuración del clúster, actualiza la configuración del nodo. {% 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 %}
|
||||
|
||||
- Cambia el nombre de host citado en el encabezado de la sección y el valor de `hostname` dentro de la sección al nombre de host del nodo pasivo, de acuerdo con el patrón que elegiste en el paso 7 anterior.
|
||||
- Agrega una nueva clave denominada `ipv4` y establece el valor en la dirección IPv4 estática del nodo pasivo.
|
||||
- Agrega un nuevo par clave-valor, `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. Anexa el contenido del archivo temporal de configuración del clúster que creaste en el paso 4 al archivo de configuración activo.
|
||||
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. Designa los nodos de Redis y de MySQL en el datacenter secundario. Reemplaza `REPLICA MYSQL PRIMARY HOSTNAME` y `REPLICA REDIS PRIMARY HOSTNAME` por los nombres de host de los nodos pasivos que has aprovisionado para que coincidan con los principales de MySQL y Redis existentes.
|
||||
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 %}
|
||||
|
||||
**Advertencia**: Revisa el archivo de configuración del clúster antes de continuar.
|
||||
**Warning**: Review your cluster configuration file before proceeding.
|
||||
|
||||
- En la sección `[cluster]` de nivel superior, asegúrate de que los valores de `mysql-master-replica` y `redis-master-replica` son los nombres de host correctos para los nodos pasivos del centro de datos secundario que servirán como principales de MySQL y Redis después de una conmutación por error.
|
||||
- En cada sección de un nodo activo denominado <code>[cluster "<em>ACTIVE NODE HOSTNAME</em>"]</code>, vuelve a comprobar los siguientes pares clave-valor.
|
||||
- `datacenter` debe coincidir con el valor de `primary-datacenter` de la sección `[cluster]` de nivel superior.
|
||||
- `consul-datacenter` debe coincidir con el valor de `datacenter`, que debe ser el mismo que el valor de `primary-datacenter` en la sección `[cluster]` de nivel superior.
|
||||
- Asegúrate de que, para cada nodo activo, la configuración tiene **una** sección correspondiente para **un** nodo pasivo con los mismos roles. En cada sección para un nodo pasivo, verifica nuevamente cada par de clave-valor.
|
||||
- `datacenter` debe coincidir con todos los demás nodos pasivos.
|
||||
- `consul-datacenter` debe coincidir con todos los demás nodos pasivos.
|
||||
- `hostname` debe coincidir con el nombre de host del encabezado de sección.
|
||||
- `ipv4` debe coincidir con la dirección IPv4 estática única del nodo.
|
||||
- `replica` debe configurarse como `enabled`.
|
||||
- Aprovecha la oportunidad para eliminar las secciones para los nodos sin conexión que ya no se utilicen.
|
||||
- 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.
|
||||
|
||||
Para revisar una configuración de ejemplo, consulta "[Configuración de ejemplo](#example-configuration)".
|
||||
To review an example configuration, see "[Example configuration](#example-configuration)."
|
||||
|
||||
{% endwarning %}
|
||||
|
||||
13. Inicializa la configuración del clúster nuevo. {% data reusables.enterprise.use-a-multiplexer %}
|
||||
13. Initialize the new cluster configuration. {% data reusables.enterprise.use-a-multiplexer %}
|
||||
|
||||
```shell
|
||||
ghe-cluster-config-init
|
||||
```
|
||||
|
||||
14. Después de que ésta termine, {% data variables.product.prodname_ghe_server %} mostrará el siguiente mensaje.
|
||||
14. After the initialization finishes, {% data variables.product.prodname_ghe_server %} displays the following message.
|
||||
|
||||
```shell
|
||||
Finished cluster initialization
|
||||
|
@ -231,33 +225,33 @@ Para ver una configuración de ejemplo, consulta "[Configuración de ejemplo](#e
|
|||
|
||||
{% data reusables.enterprise_clustering.configuration-finished %}
|
||||
|
||||
17. Configura un balanceador de carga que aceptará las conexiones de los usuarios si conmutas por error a los nodos pasivos. Para obtener más información, consulta "[Configuración de red del clúster](/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)."
|
||||
|
||||
Has terminado de configurar la replicación de disponibilidad alta para los nodos en tu clúster. Cada nodo activo comienza a replicar la configuración y los datos a su nodo pasivo correspondiente, y puedes dirigir el tráfico al balanceador de carga para el datacenter secundario en caso de que exista un fallo. Para obtener más información sobre la conmutación por error, consulta "[Iniciar una conmutación por error en el clúster de réplica](/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)."
|
||||
|
||||
### Ejemplo de configuración
|
||||
### Example configuration
|
||||
|
||||
La configuración de `[cluster]` de nivel superior se debería ver como en el ejemplo siguiente.
|
||||
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
|
||||
...
|
||||
```
|
||||
|
||||
La configuración para un nodo activo en el nivel de almacenamiento de tu clúster se debería ver como en el ejemplo siguiente.
|
||||
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 @@ La configuración para un nodo activo en el nivel de almacenamiento de tu clúst
|
|||
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
|
||||
...
|
||||
```
|
||||
|
||||
La configuración para el nodo pasivo correspondiente en el nivel de almacenamiento se debería ver como en el ejemplo siguiente.
|
||||
The configuration for the corresponding passive node in the storage tier should look like the following example.
|
||||
|
||||
- Las diferencias importantes con respecto al nodo activo correspondiente se marcan en **negrita**.
|
||||
- {% data variables.product.prodname_ghe_server %} asigna valores para `vpn`, `uuid` y `wireguard-pubkey` automáticamente, por lo que no debes definir los valores para los nodos pasivos que inicializarás.
|
||||
- Los roles de servidor, definidos mediante claves `*-server`, coinciden con el nodo activo correspondiente.
|
||||
- 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 @@ La configuración para el nodo pasivo correspondiente en el nivel de almacenamie
|
|||
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>
|
||||
...
|
||||
```
|
||||
|
||||
## Monitorear la replicación entre los nodos de clúster pasivos y activos
|
||||
## Monitoring replication between active and passive cluster nodes
|
||||
|
||||
La replicación inicial entre los nodos activos y pasivos en tu clúster toma su tiempo. La cantidad de tiempo dependerá de la cantidad de datos a replicar y de los niveles de actividad de {% 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 %}.
|
||||
|
||||
Puedes monitorear el progreso de cualquier nodo en el clúster, utilizando las herramientas de línea de comandos que se encuentran disponibles a través del shell administrativo de {% data variables.product.prodname_ghe_server %}. Para obtener más información sobre el shell administrativo, consulta "[Acceso al shell administrativo (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)."
|
||||
|
||||
- Monitorear la replicación de bases de datos:
|
||||
- Monitor replication of databases:
|
||||
|
||||
```
|
||||
/usr/local/share/enterprise/ghe-cluster-status-mysql
|
||||
```
|
||||
|
||||
- Monitorear la replicación de los datos de los repositorios y los Gists:
|
||||
- Monitor replication of repository and Gist data:
|
||||
|
||||
```
|
||||
ghe-spokes status
|
||||
```
|
||||
|
||||
- Monitorear la replicación de los adjuntos y los datos de LFS:
|
||||
- Monitor replication of attachment and LFS data:
|
||||
|
||||
```
|
||||
ghe-storage replication-status
|
||||
```
|
||||
|
||||
- Monitorear la replicación de los datos de las páginas:
|
||||
- Monitor replication of Pages data:
|
||||
|
||||
```
|
||||
ghe-dpages replication-status
|
||||
```
|
||||
|
||||
Puedes usar `ghe-cluster-status` para revisar el estado general del clúster. Para obtener más información, consulta "[Utilidades de línea de comandos](/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)."
|
||||
|
||||
## Reconfigurar la replilcación de disponibilidad alta después de un fallo
|
||||
## Reconfiguring high availability replication after a failover
|
||||
|
||||
Después de que te recuperes de un fallo de los nodos activos del clúster hacia los nodos pasivos, puedes reconfigurar la replicación de disponibilidad alta en dos formas.
|
||||
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.
|
||||
|
||||
### Aprovisionar y configurar los nodos pasivos nuevos
|
||||
### Provisioning and configuring new passive nodes
|
||||
|
||||
Después de recuperarte de un fallo, puedes reconfigurar la disponibilidad alta en dos formas. El método que elijas dependerá de la razón por la cual ocurrió el fallo y del estado de los nodos activos originales.
|
||||
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. Aprovisiona y configura un conjunto nuevo de nodos pasivos para cada uno de los nodos activos en tu datacenter secundario.
|
||||
1. Provision and configure a new set of passive nodes for each of the new active nodes in your secondary datacenter.
|
||||
|
||||
2. Utiliza los nodos activos antiguos como los nodos pasivos nuevos.
|
||||
2. Use the old active nodes as the new passive nodes.
|
||||
|
||||
El proceso para reconfigurar la disponibilidad alta es idéntico a la configuración inicial de la misma. Para obtener más información, consulta "[Creación de una réplica de alta disponibilidad para un clúster](#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)."
|
||||
|
||||
|
||||
## Inhabilitar la replicación de disponibilidad alta para un clúster
|
||||
## Disabling high availability replication for a cluster
|
||||
|
||||
Pudes parar la replicación hacia los nodos pasivos para el despliegue de {% data variables.product.prodname_ghe_server %} de tu clúster.
|
||||
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. En la sección `[cluster]` de nivel superior, elimina los pares clave-valor `redis-master-replica` y `mysql-master-replica`.
|
||||
3. In the top-level `[cluster]` section, delete the `redis-master-replica`, and `mysql-master-replica` key-value pairs.
|
||||
|
||||
4. Borra cada sección para un nodo pasivo. En el caso de los nodos pasivos, `replica` se configura como `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 %}
|
||||
|
||||
Después de que {% data variables.product.prodname_ghe_server %} te regrese al prompt, habrás terminado de inhabilitar la replicación de disponibilidad alta.
|
||||
After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished disabling high availability replication.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Crear una réplica de alta disponibilidad
|
||||
intro: 'En una configuración activa/pasiva, el aparato réplica es una copia redundante del aparato principal. Si el aparato principal falla, el modo de alta disponibilidad permite que la réplica actúe como aparato principal, lo que posibilita que la interrupción del servicio sea mínima.'
|
||||
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: es-ES
|
||||
ms.lasthandoff: 07/13/2022
|
||||
ms.locfileid: '146332764'
|
||||
---
|
||||
{% data reusables.enterprise_installation.replica-limit %}
|
||||
|
||||
## <a name="creating-a-high-availability-replica"></a>Crear una réplica de alta disponibilidad
|
||||
## Creating a high availability replica
|
||||
|
||||
1. Configurar un aparato {% data variables.product.prodname_ghe_server %} nuevo en la plataforma que desees. El aparato réplica debe espejar la CPU, la RAM y los ajustes de almacenamiento del aparato principal. Recomendamos que instales el aparato réplica en un entorno separado. El hardward subyacente, el software y los componentes de red deben estar aislados de los del aparato principal. Si estás usando un proveedor de nube, utiliza una región o zona separada. Para más información, vea "[Configuración de una instancia de {% data variables.product.prodname_ghe_server %}](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance)".
|
||||
1. Asegúrate de que tanto el aplicativo primario como el de la réplica nueva puedan comunicarse el uno con el otro a través de los puertos 122/TCP y 1194/UDP. Para más información, vea "[Puertos de red](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)".
|
||||
1. Desde un navegador, dirígete a la nueva dirección IP del aparato réplica y carga tu licencia {% 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. Conectarse a la dirección IP del aparato réplica usando SSH.
|
||||
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. Para comprobar la conexión al dispositivo principal y habilitar el modo de réplica para la réplica nueva, vuelva a ejecutar `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>Crear réplicas de replicación geográfica
|
||||
## Creating geo-replication replicas
|
||||
|
||||
Esta configuración de ejemplo utiliza una réplica primaria y dos réplicas, que se encuentran en tres regiones geográficas diferentes. Aunque los tres nodos pueden estar en redes diferentes, se necesitan todos los nodos para que sean accesibles desde todos los demás nodos. Como mínimo, los puertos administrativos requeridos deben estar abiertos para todos los demás nodos. Para más información sobre los requisitos de puerto, vea "[Puertos de red](/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. Crea la primera réplica de la misma manera que una configuración de dos nodos estándar, mediante la ejecución de `ghe-repl-setup` en la primera réplica.
|
||||
{% 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. Cree una segunda réplica y use el comando `ghe-repl-setup --add`. La marca `--add` evita que sobrescriba la configuración de replicación existente y agrega la nueva réplica a la configuración.
|
||||
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. Predeterminadamente, las replicas se configuran en el mismo centro de datos, y ahora intentarán poblar los datos desde un nodo existente en el mismo centro de datos. Configura las réplicas para diferentes centros de datos estableciendo un valor diferente para la opción de centro de datos. Los valores específicos pueden ser los que tú quieras, siempre que sean diferentes entre sí. Ejecute el comando `ghe-repl-node` en cada nodo y especifique el centro de datos.
|
||||
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.
|
||||
|
||||
En la primaria:
|
||||
On the primary:
|
||||
```shell
|
||||
(primary)$ ghe-repl-node --datacenter <em>[PRIMARY DC NAME]</em>
|
||||
(primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME]
|
||||
```
|
||||
En la primera réplica:
|
||||
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]
|
||||
```
|
||||
En la segunda réplica:
|
||||
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 %}
|
||||
|
||||
**Sugerencia:** Puede establecer las opciones `--datacenter` y `--active` al mismo tiempo.
|
||||
**Tip:** You can set the `--datacenter` and `--active` options at the same time.
|
||||
|
||||
{% endtip %}
|
||||
4. Un nodo de réplica activo almacenará copias de los datos del aparato y responderá las solicitudes de usuario final. Un nodo inactivo almacenará copias de los datos del aparato, pero no podrá atender las solicitudes de usuario final. Habilite el modo activo mediante la marca `--active`, o bien el modo inactivo con la marca `--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.
|
||||
|
||||
En la primera réplica:
|
||||
On the first replica:
|
||||
```shell
|
||||
(replica1)$ ghe-repl-node --active
|
||||
```
|
||||
En la segunda réplica:
|
||||
On the second replica:
|
||||
```shell
|
||||
(replica2)$ ghe-repl-node --active
|
||||
```
|
||||
5. Para aplicar la configuración, use el comando `ghe-config-apply` en la réplica principal.
|
||||
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>Configurar el DNS para replicación geográfica
|
||||
## Configuring DNS for geo-replication
|
||||
|
||||
Configurar Geo DNS usando las direcciones IP de los nodos primarios y réplica. También puede crear un CNAME DNS para el nodo principal (por ejemplo, `primary.github.example.com`) para acceder al nodo principal mediante SSH o para realizar una copia de seguridad con `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`.
|
||||
|
||||
Para las pruebas, puede agregar entradas al archivo `hosts` de la estación de trabajo local (por ejemplo, `/etc/hosts`). Estas entradas de ejemplo resolverán las solicitudes de `HOSTNAME` en `replica2`. Puedes apuntar a hosts específicos comentando en diferentes líneas.
|
||||
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>Información adicional
|
||||
## Further reading
|
||||
|
||||
- "[Acerca de la configuración de alta disponibilidad](/enterprise/admin/guides/installation/about-high-availability-configuration)"
|
||||
- "[Utilidades para la administración de la replicación](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)"
|
||||
- "[Acerca de la replicación geográfica](/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/)"
|
||||
|
|
|
@ -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**.
|
||||
|
|
|
@ -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.
|
||||
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -105,7 +105,8 @@ To use a {% data variables.product.pat_generic %} or SSH key to access resources
|
|||
|
||||
| Token type | Prefix | More information |
|
||||
| :- | :- | :- |
|
||||
| {% data variables.product.pat_generic_caps %} | `ghp_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)" |
|
||||
| {% data variables.product.pat_v1_caps %} | `ghp_` | {% ifversion pat-v2 %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-personal-access-token-classic)"{% else %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)"{% endif %} |{% ifversion pat-v2 %}
|
||||
| {% data variables.product.pat_v2_caps %} | `github_pat_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-fine-grained-personal-access-token)" |{% endif %}
|
||||
| OAuth access token | `gho_` | "[Authorizing {% data variables.product.prodname_oauth_apps %}](/developers/apps/authorizing-oauth-apps)" |
|
||||
| User-to-server token for a {% data variables.product.prodname_github_app %} | `ghu_` | "[Identifying and authorizing users for {% data variables.product.prodname_github_apps %}](/developers/apps/identifying-and-authorizing-users-for-github-apps)" |
|
||||
| Server-to-server token for a {% data variables.product.prodname_github_app %} | `ghs_` | "[Authenticating with {% data variables.product.prodname_github_apps %}](/developers/apps/authenticating-with-github-apps#authenticating-as-an-installation)" |
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -87,7 +87,7 @@ To sign commits using GPG and have those commits verified on {% data variables.p
|
|||
{% ifversion ssh-commit-verification %}
|
||||
## SSH commit signature verification
|
||||
|
||||
You can use SSH to sign commits with an SSH public key that you generate yourself. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
You can use SSH to sign commits with an SSH key that you generate yourself. For more information, see the [Git reference documentation](https://git-scm.com/docs/git-config#Documentation/git-config.txt-usersigningKey) for `user.Signingkey`. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
you can also upload that same key again for use as a signing key. There's no limit on the number of signing keys you can add to your account.
|
||||
|
||||
{% data variables.product.product_name %} uses [ssh_data](https://github.com/github/ssh_data), an open source Ruby library, to confirm that your locally signed commits and tags are cryptographically verifiable against a public key you have added to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.location.product_location %}{% endif %}.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Recuperar tu contraseña de clave SSH
|
||||
intro: 'Si perdiste tu contraseña de clave SSH, según el sistema operativo que utilices, puedes recuperarla o generar una nueva contraseña de clave SSH.'
|
||||
title: Recovering your SSH key passphrase
|
||||
intro: 'If you''ve lost your SSH key passphrase, depending on the operating system you use, you may either recover it or you may need to generate a new SSH key passphrase.'
|
||||
redirect_from:
|
||||
- /articles/how-do-i-recover-my-passphrase
|
||||
- /articles/how-do-i-recover-my-ssh-key-passphrase
|
||||
|
@ -15,36 +15,30 @@ versions:
|
|||
topics:
|
||||
- SSH
|
||||
shortTitle: Recover SSH key passphrase
|
||||
ms.openlocfilehash: 28d768e81f3076898c23b2b1668314ae5573ec5c
|
||||
ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: es-ES
|
||||
ms.lasthandoff: 09/10/2022
|
||||
ms.locfileid: '145091727'
|
||||
---
|
||||
{% mac %}
|
||||
|
||||
Si [ha configurado la frase de contraseña SSH con la cadena de claves de macOS](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain), es posible que pueda recuperarla.
|
||||
If you [configured your SSH passphrase with the macOS keychain](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain), you may be able to recover it.
|
||||
|
||||
1. En Finder (Buscador), busque la aplicación **Keychain Access**.
|
||||
![Barra de búsqueda de Spotlight](/assets/images/help/setup/keychain-access.png)
|
||||
2. En Keychain Access, busque **SSH**.
|
||||
3. Haz doble clic en la entrada de tu clave SSH para abrir un nuevo cuadro de diálogo.
|
||||
4. En la esquina inferior izquierda, seleccione **Show password** (Mostrar contraseña).
|
||||
![Cuadro de diálogo de Keychain Access](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. Se te solicitará tu contraseña administrativa. Escríbela en el cuadro de diálogo "Keychain Access" (Acceso keychain).
|
||||
6. Se revelará tu contraseña.
|
||||
1. In Finder, search for the **Keychain Access** app.
|
||||
![Spotlight Search bar](/assets/images/help/setup/keychain-access.png)
|
||||
2. In Keychain Access, search for **SSH**.
|
||||
3. Double click on the entry for your SSH key to open a new dialog box.
|
||||
4. In the lower-left corner, select **Show password**.
|
||||
![Keychain access dialog](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. You'll be prompted for your administrative password. Type it into the "Keychain Access" dialog box.
|
||||
6. Your password will be revealed.
|
||||
|
||||
{% endmac %}
|
||||
|
||||
{% windows %}
|
||||
|
||||
Si pierdes tu contraseña de clave SSH, no hay forma de recuperarla. Deberá [generar un nuevo par de claves SSH](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) o [cambiar a clonación HTTPS](/github/getting-started-with-github/managing-remote-repositories) para poder usar la contraseña de GitHub en su lugar.
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endwindows %}
|
||||
|
||||
{% linux %}
|
||||
|
||||
Si pierdes tu contraseña de clave SSH, no hay forma de recuperarla. Deberá [generar un nuevo par de claves SSH](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) o [cambiar a clonación HTTPS](/github/getting-started-with-github/about-remote-repositories/#cloning-with-https-urls) para poder usar la contraseña de GitHub en su lugar.
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endlinux %}
|
||||
|
|
|
@ -26,8 +26,20 @@ $ ssh -T -p 443 git@ssh.github.com
|
|||
> provide shell access.
|
||||
```
|
||||
|
||||
{% note %}
|
||||
|
||||
**Note**: The hostname for port 443 is `ssh.{% data variables.command_line.backticks %}`, not `{% data variables.command_line.backticks %}`.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
If that worked, great! If not, you may need to [follow our troubleshooting guide](/articles/error-permission-denied-publickey).
|
||||
|
||||
Now, to clone the repository, you can run the following command:
|
||||
|
||||
```
|
||||
$ git clone ssh://git@ssh.{% data variables.command_line.codeblock %}:443/YOUR-USERNAME/YOUR-REPOSITORY.git
|
||||
```
|
||||
|
||||
## Enabling SSH connections over HTTPS
|
||||
|
||||
If you are able to SSH into `git@ssh.{% data variables.command_line.backticks %}` over port 443, you can override your SSH settings to force any connection to {% data variables.location.product_location %} to run through that server and port.
|
||||
|
@ -48,3 +60,19 @@ $ ssh -T git@{% data variables.command_line.codeblock %}
|
|||
> Hi USERNAME! You've successfully authenticated, but GitHub does not
|
||||
> provide shell access.
|
||||
```
|
||||
|
||||
## Updating known hosts
|
||||
|
||||
The first time you interact with GitHub after switching to port 443, you may get a warning message
|
||||
that the host wasn't found in `known_hosts`, or that it was found by another name.
|
||||
|
||||
```ShellSession
|
||||
> The authenticity of host '[ssh.github.com]:443 ([140.82.112.36]:443)' can't be established.
|
||||
> ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
|
||||
> This host key is known by the following other names/addresses:
|
||||
> ~/.ssh/known_hosts:32: github.com
|
||||
> Are you sure you want to continue connecting (yes/no/[fingerprint])?
|
||||
```
|
||||
|
||||
It is safe to answer `yes` to this question, assuming that the SSH fingerprint matches
|
||||
one of GitHub's published fingerprints. For more information, see "[Github's SSH key fingerprints](/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints)."
|
||||
|
|
|
@ -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`
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Protección de inserciones con análisis de secretos
|
||||
intro: 'Puedes usar {% data variables.product.prodname_secret_scanning %} para evitar que los secretos admitidos se inserten en tu organización o repositorio. Para ello, habilita la protección de inserción.'
|
||||
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 {% 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:
|
||||
|
@ -14,118 +14,127 @@ topics:
|
|||
- Alerts
|
||||
- Repositories
|
||||
shortTitle: Enable push protection
|
||||
ms.openlocfilehash: 4c6aefb5614fff741f7c94fe0ca6fd34029e2129
|
||||
ms.sourcegitcommit: 478f2931167988096ae6478a257f492ecaa11794
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: es-ES
|
||||
ms.lasthandoff: 09/09/2022
|
||||
ms.locfileid: '147683747'
|
||||
---
|
||||
{% data reusables.secret-scanning.beta %} {% data reusables.secret-scanning.enterprise-enable-secret-scanning %} {% data reusables.secret-scanning.push-protection-beta %}
|
||||
|
||||
## Acerca de la protección de inserción para secretos
|
||||
{% data reusables.secret-scanning.beta %}
|
||||
{% data reusables.secret-scanning.enterprise-enable-secret-scanning %}
|
||||
{% data reusables.secret-scanning.push-protection-beta %}
|
||||
|
||||
Hasta ahora, {% data variables.product.prodname_secret_scanning_GHAS %} comprueba si hay secretos _después_ de una inserción y alerta a los usuarios de los secretos expuestos. {% data reusables.secret-scanning.push-protection-overview %}
|
||||
## About push protection for secrets
|
||||
|
||||
Si un colaborador omite un bloque de protección de inserción para un secreto, {% data variables.product.prodname_dotcom %}:
|
||||
- genera una alerta.
|
||||
- crea una alerta en la pestaña "Security" (Seguridad) del repositorio.
|
||||
- agrega el evento de omisión al registro de auditoría. {% ifversion secret-scanning-push-protection-email %}
|
||||
- envía una alerta por correo electrónico a los propietarios de la organización, administradores de seguridad y administradores de repositorios, con un vínculo al secreto relacionado y el motivo por el que se permitió. {% endif %}
|
||||
Up to now, {% data variables.product.prodname_secret_scanning_GHAS %} checks for secrets _after_ a push and alerts users to exposed secrets. {% data reusables.secret-scanning.push-protection-overview %}
|
||||
|
||||
Para obtener más información sobre los secretos y proveedores de servicios admitidos para la protección de inserción, consulta "[Patrones de {% data variables.product.prodname_secret_scanning_caps %}](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)".
|
||||
If a contributor bypasses a push protection block for a secret, {% data variables.product.prodname_dotcom %}:
|
||||
- generates an alert.
|
||||
- creates an alert in the "Security" tab of the repository.
|
||||
- adds the bypass event to the audit log.{% ifversion secret-scanning-push-protection-email %}
|
||||
- sends an email alert to organization owners, security managers, and repository administrators, with a link to the related secret and the reason why it was allowed.{% endif %}
|
||||
|
||||
## Habilitación de {% data variables.product.prodname_secret_scanning %} como protección de inserción
|
||||
For information on the secrets and service providers supported for push protection, see "[{% data variables.product.prodname_secret_scanning_caps %} patterns](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)."
|
||||
|
||||
Para poder usar {% data variables.product.prodname_secret_scanning %} como protección de inserción, la organización o el repositorio deben tener habilitados {% data variables.product.prodname_GH_advanced_security %} y {% data variables.product.prodname_secret_scanning %}. Para más información, vea "[Administración de la configuración de seguridad y análisis de la organización](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)", "[Administración de la configuración de seguridad y análisis para el repositorio](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)" y "[Acerca de {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)".
|
||||
## Enabling {% data variables.product.prodname_secret_scanning %} as a push protection
|
||||
|
||||
Los propietarios de la organización, los administradores de seguridad y los administradores del repositorio pueden habilitar la protección de inserción para {% data variables.product.prodname_secret_scanning %} mediante la interfaz de usuario y la API. Para más información, vea "[Repositorios](/rest/reference/repos#update-a-repository)" y expanda la sección "Propiedades del objeto `security_and_analysis`" en la documentación de la API REST.
|
||||
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)."
|
||||
|
||||
### Habilitación de {% data variables.product.prodname_secret_scanning %} como protección de inserción para una organización
|
||||
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.
|
||||
|
||||
{% data reusables.organizations.navigate-to-org %} {% data reusables.organizations.org_settings %} {% data reusables.organizations.security-and-analysis %} {% data reusables.repositories.navigate-to-ghas-settings %} {% data reusables.advanced-security.secret-scanning-push-protection-org %}
|
||||
{% 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 %}
|
||||
|
||||
### Habilitación de {% data variables.product.prodname_secret_scanning %} como protección de inserción para un repositorio
|
||||
### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for an organization
|
||||
|
||||
{% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-code-security-and-analysis %} {% data reusables.repositories.navigate-to-ghas-settings %} {% data reusables.advanced-security.secret-scanning-push-protection-repo %}
|
||||
{% data reusables.organizations.navigate-to-org %}
|
||||
{% data reusables.organizations.org_settings %}
|
||||
{% data reusables.organizations.security-and-analysis %}
|
||||
{% data reusables.repositories.navigate-to-ghas-settings %}
|
||||
{% data reusables.advanced-security.secret-scanning-push-protection-org %}
|
||||
|
||||
## Uso del examen de secretos como protección de inserción de la línea de comandos
|
||||
### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for a repository
|
||||
|
||||
{% data reusables.repositories.navigate-to-repo %}
|
||||
{% data reusables.repositories.sidebar-settings %}
|
||||
{% data reusables.repositories.navigate-to-code-security-and-analysis %}
|
||||
{% data reusables.repositories.navigate-to-ghas-settings %}
|
||||
{% data reusables.advanced-security.secret-scanning-push-protection-repo %}
|
||||
|
||||
## Using secret scanning as a push protection from the command line
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-command-line-choice %}
|
||||
|
||||
En la línea de comandos se mostrarán hasta cinco secretos detectados a la vez. Si ya se ha detectado un secreto determinado en el repositorio y ya existe una alerta, {% data variables.product.prodname_dotcom %} no bloqueará ese secreto.
|
||||
Up to five detected secrets will be displayed at a time on the command line. If a particular secret has already been detected in the repository and an alert already exists, {% data variables.product.prodname_dotcom %} will not block that secret.
|
||||
|
||||
{% ifversion push-protection-custom-link-orgs %}
|
||||
|
||||
Los administradores de la organización pueden proporcionar un vínculo personalizado que se mostrará cuando se bloquee una inserción. Este vínculo personalizado puede incluir recursos y consejos específicos de la organización, como instrucciones sobre el uso de un almacén de secretos recomendado o con quién ponerse en contacto para formular preguntas relacionadas con el secreto bloqueado.
|
||||
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 %}
|
||||
|
||||
![Captura de pantalla en la que se muestra que se bloquea una inserción cuando un usuario intenta insertar un secreto en un repositorio](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png)
|
||||
![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 %}
|
||||
|
||||
![Captura de pantalla en la que se muestra que se bloquea una inserción cuando un usuario intenta insertar un secreto en un repositorio](/assets/images/help/repository/secret-scanning-push-protection-with-link.png)
|
||||
![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-link.png)
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-remove-secret %} Para obtener más información sobre cómo corregir secretos bloqueados, consulta "[Inserción de una rama bloqueada por la protección de inserción](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)".
|
||||
{% data reusables.secret-scanning.push-protection-remove-secret %} For more information about remediating blocked secrets, see "[Pushing a branch blocked by push protection](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)."
|
||||
|
||||
Si confirma que un secreto es real y que pretende corregirlo más adelante, debe intentar corregirlo lo antes posible. Por ejemplo, podría revocar el secreto y quitarlo del historial de confirmaciones del repositorio. Los secretos reales que se han expuesto deben revocarse para evitar el acceso no autorizado. Puedes considerar la posibilidad de rotar primero el secreto antes de revocarlo. Para más información, vea "[Eliminación de datos confidenciales de un repositorio](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)".
|
||||
If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. For example, you might revoke the secret and remove the secret from the repository's commit history. Real secrets that have been exposed must be revoked to avoid unauthorized access. You might consider first rotating the secret before revoking it. For more information, see "[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)."
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-multiple-branch-note %}
|
||||
|
||||
### Permiso para insertar un secreto bloqueado
|
||||
### Allowing a blocked secret to be pushed
|
||||
|
||||
Si {% data variables.product.prodname_dotcom %} bloquea un secreto que cree que es seguro insertar, puede permitirlo y especificar el motivo por el que se debe permitir.
|
||||
If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed.
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-allow-secrets-alerts %}
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-allow-email %}
|
||||
|
||||
1. Visite la dirección URL devuelta por {% data variables.product.prodname_dotcom %} cuando se bloquee la inserción.
|
||||
![Captura de pantalla que muestra el formulario con opciones para desbloquear la inserción de un secreto](/assets/images/help/repository/secret-scanning-unblock-form.png) {% data reusables.secret-scanning.push-protection-choose-allow-secret-options %}
|
||||
1. Haga clic en **Permitirme insertar este secreto**.
|
||||
2. Vuelva a intentar la inserción en la línea de comandos en un plazo de tres horas. Si no ha realizado la inserción en un plazo de tres horas, tendrá que repetir este proceso.
|
||||
1. Visit the URL returned by {% data variables.product.prodname_dotcom %} when your push was blocked.
|
||||
![Screenshot showing form with options for unblocking the push of a secret](/assets/images/help/repository/secret-scanning-unblock-form.png)
|
||||
{% data reusables.secret-scanning.push-protection-choose-allow-secret-options %}
|
||||
1. Click **Allow me to push this secret**.
|
||||
2. Reattempt the push on the command line within three hours. If you have not pushed within three hours, you will need to repeat this process.
|
||||
|
||||
{% ifversion secret-scanning-push-protection-web-ui %}
|
||||
## Uso del examen de secretos como protección de inserción de la interfaz de usuario web
|
||||
## Using secret scanning as a push protection from the web UI
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-web-ui-choice %}
|
||||
|
||||
{% data variables.product.prodname_dotcom %} solo mostrará un secreto detectado a la vez en la interfaz de usuario web. Si ya se ha detectado un secreto determinado en el repositorio y ya existe una alerta, {% data variables.product.prodname_dotcom %} no bloqueará ese secreto.
|
||||
{% data variables.product.prodname_dotcom %} will only display one detected secret at a time in the web UI. If a particular secret has already been detected in the repository and an alert already exists, {% data variables.product.prodname_dotcom %} will not block that secret.
|
||||
|
||||
{% ifversion push-protection-custom-link-orgs %}
|
||||
|
||||
Los administradores de la organización pueden proporcionar un vínculo personalizado que se mostrará cuando se bloquee una inserción. Este vínculo personalizado puede incluir recursos y consejos específicos de tu organización. Por ejemplo, el vínculo personalizado puede apuntar a un archivo Léame con información sobre el almacén de secretos de la organización, a qué equipos y personas se deben escalar las preguntas, o a la directiva aprobada de la organización para trabajar con secretos y reescribir el historial de confirmaciones.
|
||||
|
||||
{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %}
|
||||
|
||||
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.
|
||||
{% endif %}
|
||||
|
||||
Puedes quitar el secreto del archivo mediante la interfaz de usuario web. Una vez quitado el secreto, el banner de la parte superior de la página cambiará e indicará que ahora puedes confirmar los cambios.
|
||||
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.
|
||||
|
||||
![Captura de pantalla que muestra que la confirmación está permitida en la interfaz de usuario web después de corregir el secreto](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png)
|
||||
![Screenshot showing commit in web ui allowed after secret fixed](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png)
|
||||
|
||||
### Omitir la protección de inserción para un secreto
|
||||
### Bypassing push protection for a secret
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-remove-secret %} Para obtener más información sobre cómo corregir secretos bloqueados, consulta "[Inserción de una rama bloqueada por la protección de inserción](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-in-the-web-ui)".
|
||||
{% data reusables.secret-scanning.push-protection-remove-secret %} For more information about remediating blocked secrets, see "[Pushing a branch blocked by push protection](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-in-the-web-ui)."
|
||||
|
||||
Si confirma que un secreto es real y que pretende corregirlo más adelante, debe intentar corregirlo lo antes posible. Para más información, vea "[Eliminación de datos confidenciales de un repositorio](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)".
|
||||
If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. For more information, see "[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)."
|
||||
|
||||
Si {% data variables.product.prodname_dotcom %} bloquea un secreto que cree que es seguro insertar, puede permitirlo y especificar el motivo por el que se debe permitir.
|
||||
If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed.
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-allow-secrets-alerts %}
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-allow-email %}
|
||||
|
||||
Si confirma que un secreto es real y que pretende corregirlo más adelante, debe intentar corregirlo lo antes posible.
|
||||
If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible.
|
||||
|
||||
1. En el banner que aparece en la parte superior de la página cuando {% data variables.product.prodname_dotcom %} bloquea la confirmación, haz clic en **Omitir protección**.
|
||||
1. In the banner that appeared at the top of the page when {% data variables.product.prodname_dotcom %} blocked your commit, click **Bypass protection**.
|
||||
{% data reusables.secret-scanning.push-protection-choose-allow-secret-options %}
|
||||
|
||||
![Captura de pantalla que muestra el formulario con opciones para desbloquear la inserción de un secreto](/assets/images/help/repository/secret-scanning-push-protection-web-ui-allow-secret-options.png)
|
||||
![Screenshot showing form with options for unblocking the push of a secret](/assets/images/help/repository/secret-scanning-push-protection-web-ui-allow-secret-options.png)
|
||||
|
||||
1. Haz clic en **Permitir secreto**.
|
||||
1. Click **Allow secret**.
|
||||
|
||||
{% endif %}
|
||||
{% endif %}
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Inserción de una rama bloqueada por la protección de inserción
|
||||
intro: 'La característica de protección de inserción de {% data variables.product.prodname_secret_scanning %} protege proactivamente contra los secretos que se filtran en los repositorios. Puedes resolver las inserciones bloqueadas y, una vez que se ha quitado el secreto detectado, puedes insertar los cambios en la rama de trabajo desde la línea de comandos o la interfaz de usuario web.'
|
||||
title: Pushing a branch blocked by push protection
|
||||
intro: 'The push protection feature of {% data variables.product.prodname_secret_scanning %} proactively protects you against leaked secrets in your repositories. You can resolve blocked pushes and, once the detected secret is removed, you can push changes to your working branch from the command line or the web UI.'
|
||||
product: '{% data reusables.gated-features.secret-scanning %}'
|
||||
miniTocMaxHeadingLevel: 3
|
||||
versions:
|
||||
|
@ -12,58 +12,51 @@ topics:
|
|||
- Alerts
|
||||
- Repositories
|
||||
shortTitle: Push a blocked branch
|
||||
ms.openlocfilehash: 743cdc094acfd2465d4bb97f1ae7ec0a7f8b86f0
|
||||
ms.sourcegitcommit: 478f2931167988096ae6478a257f492ecaa11794
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: es-ES
|
||||
ms.lasthandoff: 09/09/2022
|
||||
ms.locfileid: '147683795'
|
||||
---
|
||||
## Acerca de la protección de inserción para {% data variables.product.prodname_secret_scanning %}
|
||||
|
||||
La característica de protección de inserción de {% data variables.product.prodname_secret_scanning %} ayuda a evitar pérdidas de seguridad mediante el examen de los secretos antes de insertar los cambios en el repositorio. {% data reusables.secret-scanning.push-protection-overview %} Para obtener información sobre los secretos y proveedores de servicios admitidos para la protección de inserción, consulta "[Patrones de {% data variables.product.prodname_secret_scanning_caps %}](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)".
|
||||
## About push protection for {% data variables.product.prodname_secret_scanning %}
|
||||
|
||||
The push protection feature of {% data variables.product.prodname_secret_scanning %} helps to prevent security leaks by scanning for secrets before you push changes to your repository. {% data reusables.secret-scanning.push-protection-overview %} For information on the secrets and service providers supported for push protection, see "[{% data variables.product.prodname_secret_scanning_caps %} patterns](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)."
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-remove-secret %}
|
||||
|
||||
{% tip %}
|
||||
|
||||
**Sugerencia** Si {% data variables.product.prodname_dotcom %} bloquea un secreto que crees que es seguro insertar, puedes permitirlo y especificar el motivo por el que se debe permitir. Para obtener más información sobre cómo omitir la protección de inserción para un secreto, consulta "[Permitir que se suba un secreto bloqueado](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#allowing-a-blocked-secret-to-be-pushed)" y "[Saltar la protección contra subidas para un secreto](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)" para la línea de comandos y la interfaz de usuario web, respectivamente.
|
||||
**Tip**
|
||||
If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. For more information about bypassing push protection for a secret, see "[Allowing a blocked secret to be pushed](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#allowing-a-blocked-secret-to-be-pushed)" and "[Bypassing push protection for a secret](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)" for the command line and the web UI, respectively.
|
||||
|
||||
{% endtip %}
|
||||
|
||||
{% ifversion push-protection-custom-link-orgs %}
|
||||
|
||||
Los administradores de la organización pueden proporcionar un vínculo personalizado que se incluirá en el mensaje de {% data variables.product.product_name %} cuando se bloquee la inserción. Este vínculo personalizado puede incluir recursos y consejos específicos de tu organización y sus directivas.
|
||||
|
||||
{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %}
|
||||
|
||||
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.
|
||||
{% endif %}
|
||||
|
||||
## Resolución de una inserción bloqueada en la línea de comandos
|
||||
## Resolving a blocked push on the command line
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-command-line-choice %}
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-multiple-branch-note %}
|
||||
|
||||
Si el secreto bloqueado se introdujo con la confirmación más reciente en la rama, puedes seguir las instrucciones a continuación.
|
||||
If the blocked secret was introduced by the latest commit on your branch, you can follow the guidance below.
|
||||
|
||||
1. Quita el secreto del código.
|
||||
1. Confirma los cambios mediante `git commit --amend`.
|
||||
1. Envía los cambios con `git push`.
|
||||
1. Remove the secret from your code.
|
||||
1. Commit the changes, by using `git commit --amend`.
|
||||
1. Push your changes with `git push`.
|
||||
|
||||
También puedes quitar el secreto si aparece en una confirmación anterior en el historial de Git.
|
||||
You can also remove the secret if the secret appears in an earlier commit in the Git history.
|
||||
|
||||
1. Usa `git log` para determinar qué confirmación expuesta en el error de inserción apareció primero en el historial.
|
||||
1. Inicia una fusión mediante cambio de base interactiva con `git rebase -i <commit-id>~1`. <commit-id> es el identificador de la confirmación del paso 1.
|
||||
1. Identifica la confirmación para editar cambiando `pick` a `edit` en la primera línea del texto que aparece en el editor.
|
||||
1. Quita el secreto del código.
|
||||
1. Confirma el cambio con `git commit --amend`.
|
||||
1. Ejecuta `git rebase --continue` para finalizar la fusión mediante cambio de base.
|
||||
1. Use `git log` to determine which commit surfaced in the push error came first in history.
|
||||
1. Start an interactive rebase with `git rebase -i <commit-id>~1`. <commit-id> is the id of the commit from step 1.
|
||||
1. Identify your commit to edit by changing `pick` to `edit` on the first line of the text that appears in the editor.
|
||||
1. Remove the secret from your code.
|
||||
1. Commit the change with `git commit --amend`.
|
||||
1. Run `git rebase --continue` to finish the rebase.
|
||||
|
||||
## Resolución de una confirmación bloqueada en la interfaz de usuario web
|
||||
## Resolving a blocked commit in the web UI
|
||||
|
||||
{% data reusables.secret-scanning.push-protection-web-ui-choice %}
|
||||
|
||||
Para resolver una confirmación bloqueada en la interfaz de usuario web, debes quitar el secreto del archivo o usar la lista desplegable **Omitir protección** para permitir el secreto. Para obtener más información sobre cómo omitir la protección de inserción de la interfaz de usuario web, consulta "[Proteger las subidas con el escaneo de secretos](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)".
|
||||
To resolve a blocked commit in the web UI, you need to remove the secret from the file, or use the **Bypass protection** dropdown to allow the secret. For more information about bypassing push protection from the web UI, see "[Protecting pushes with secret scanning](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)."
|
||||
|
||||
Si confirmas que un secreto es real, debes quitar el secreto del archivo. Una vez quitado el secreto, el banner de la parte superior de la página cambiará e indicará que ahora puedes confirmar los cambios.
|
||||
If you confirm a secret is real, you need to remove the secret from the file. 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.
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)."
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -1,61 +0,0 @@
|
|||
---
|
||||
title: Cambio del nombre de un codespace
|
||||
intro: 'Puedes usar {% data variables.product.prodname_cli %} para cambiar el nombre para mostrar del codespace a uno de los que prefieras.'
|
||||
product: '{% data reusables.gated-features.codespaces %}'
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghec: '*'
|
||||
type: how_to
|
||||
topics:
|
||||
- Codespaces
|
||||
- Fundamentals
|
||||
- Developer
|
||||
shortTitle: Rename a codespace
|
||||
ms.openlocfilehash: 83a5ce0064a8f8deed752eaef0cd49be538ff9be
|
||||
ms.sourcegitcommit: 478f2931167988096ae6478a257f492ecaa11794
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: es-ES
|
||||
ms.lasthandoff: 09/09/2022
|
||||
ms.locfileid: '147682507'
|
||||
---
|
||||
## Acerca del cambio del nombre de un codespace
|
||||
|
||||
A cada codespace se le asigna un nombre para mostrar generado automáticamente. Si tienes varios codespaces, el nombre para mostrar te ayuda a diferenciar entre ellos. Por ejemplo: `literate space parakeet`. Puedes cambiar el nombre para mostrar del codespace.
|
||||
|
||||
Para encontrar el nombre para mostrar de un codespace:
|
||||
|
||||
- En {% data variables.product.product_name %}, consulta la lista de codespaces en https://github.com/codespaces.
|
||||
|
||||
![Captura de pantalla de la lista de codespaces en GitHub](/assets/images/help/codespaces/codespaces-list-display-name.png)
|
||||
|
||||
- En la aplicación de escritorio {% data variables.product.prodname_vscode %} o el cliente web {% data variables.product.prodname_vscode_shortname %}, haz clic en el Explorador remoto. El nombre para mostrar se muestra debajo del nombre del repositorio. Por ejemplo: `symmetrical space telegram` en la captura de pantalla siguiente.
|
||||
|
||||
![Captura de pantalla del Explorador remoto en VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png)
|
||||
|
||||
{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %}
|
||||
- En una ventana de terminal de la máquina local, usa este comando de {% data variables.product.prodname_cli %}: `gh codespace list`.
|
||||
|
||||
### Nombres permanentes de codespace
|
||||
|
||||
Además del nombre para mostrar, al crear un codespace, también se le asigna un nombre permanente. El nombre es una combinación de tu identificador de {% data variables.product.company_short %}, el nombre del repositorio y algunos caracteres aleatorios. Por ejemplo: `octocat-myrepo-gmc7`. No se puede cambiar este nombre.
|
||||
|
||||
Para encontrar el nombre de un codespace:
|
||||
|
||||
* En {% data variables.product.product_name %}, el nombre permanente se muestra en un elemento emergente al mantener el puntero sobre la opción **Abrir en el explorador** en https://github.com/codespaces.
|
||||
|
||||
![Captura de pantalla del nombre del codespace que se muestra al mantener el puntero](/assets/images/help/codespaces/find-codespace-name-github.png)
|
||||
|
||||
* En un codespace, use este comando en el terminal: `echo $CODESPACE_NAME`.
|
||||
* En una ventana de terminal de la máquina local, usa este comando de {% data variables.product.prodname_cli %}: `gh codespace list`.
|
||||
|
||||
## Cambio del nombre de un codespace
|
||||
|
||||
Cambiar el nombre para mostrar de un codespace puede ser útil si tienes varios codespaces que vas a usar durante un período prolongado. Un nombre adecuado te ayuda a identificar un codespace que se usa para un propósito determinado. Puedes cambiar el nombre para mostrar de tu codespace mediante {% data variables.product.prodname_cli %}.
|
||||
|
||||
Para cambiar el nombre de un codespace, usa el subcomando `gh codespace edit`:
|
||||
|
||||
```shell
|
||||
gh codespace edit -c <em>permanent name of the codespace</em> -d <em>new display name</em>
|
||||
```
|
||||
|
||||
En este ejemplo, reemplaza por `permanent name of the codespace` el nombre permanente del espacio de código. Reemplaza `new display name` por el nombre para mostrar deseado.
|
|
@ -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)."
|
||||
|
|
|
@ -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 %}
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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 %}
|
||||
|
||||
|
|
|
@ -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",
|
||||
|
|
|
@ -32,7 +32,7 @@ This guide shows you how to set up your Java project in {% data variables.produc
|
|||
|
||||
If you don’t 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 %}
|
||||
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Acerca de los dominios personalizados y las Páginas de GitHub
|
||||
intro: '{% data variables.product.prodname_pages %} respalda el uso de dominios personalizados o el cambio la raíz de la URL del sitio desde el valor predeterminado, como `octocat.github.io`, para cualquier dominio que poseas.'
|
||||
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: es-ES
|
||||
ms.lasthandoff: 09/05/2022
|
||||
ms.locfileid: '145140373'
|
||||
---
|
||||
## Dominios personalizados compatibles
|
||||
|
||||
{% data variables.product.prodname_pages %} trabaja con dos tipos de dominios: subdominios y dominios apex. Para obtener una lista de dominios personalizados no admitidos, vea "[Solución de problemas de dominios personalizados y {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)".
|
||||
## Supported custom domains
|
||||
|
||||
| Tipo de dominio personalizado compatible | Ejemplo |
|
||||
{% 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 |
|
||||
|---|---|
|
||||
| Subdominio `www` | `www.example.com` |
|
||||
| Subdominio personalizado | `blog.example.com` |
|
||||
| Dominio de Apex | `example.com` |
|
||||
| `www` subdomain | `www.example.com` |
|
||||
| Custom subdomain | `blog.example.com` |
|
||||
| Apex domain | `example.com` |
|
||||
|
||||
Puede establecer una de las configuraciones de subdominio de vértice y `www`, o las dos, para el sitio. Para más información sobre los dominios de vértice, vea "[Uso de un dominio de vértice para el sitio de {% 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)."
|
||||
|
||||
Se recomienda usar siempre un subdominio `www`, incluso si también se utiliza un dominio de vértice. Al crear un sitio con un dominio de vértice, intentaremos asegurar el subdominio `www` de forma automática para que lo use al entregar el contenido del sitio, pero tendrá que realizar los cambios de DNS para usar el subdominio `www`. Si configura un subdominio de `www`, intentamos proteger de forma automática el dominio de vértice asociado. Para más información, vea "[Administración de un dominio personalizado para el sitio de {% 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)."
|
||||
|
||||
Después de configurar un dominio personalizado para un sitio de usuario u organización, el dominio personalizado reemplazará la parte `<user>.github.io` o `<organization>.github.io` de la dirección URL de los sitios de proyecto propiedad de la cuenta que no tengan configurado un dominio personalizado. Por ejemplo, si el dominio personalizado para el sitio de usuario es `www.octocat.com` y tiene un sitio de proyecto sin ningún dominio personalizado configurado que se publique desde un repositorio denominado `octo-project`, el sitio de {% data variables.product.prodname_pages %} para ese repositorio estará disponible en `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)."
|
||||
|
||||
## Uso de un subdominio para tu sitio {% data variables.product.prodname_pages %}
|
||||
## Using a subdomain for your {% data variables.product.prodname_pages %} site
|
||||
|
||||
Un subdominio es la parte de una URL antes del dominio raíz. Puede configurar el subdominio como `www` o como una sección distintiva del sitio, como `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`.
|
||||
|
||||
Los subdominios se configuran con un registro `CNAME` por medio del proveedor DNS. Para más información, vea "[Administración de un dominio personalizado para el sitio de {% 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)."
|
||||
|
||||
### Subdominios `www`
|
||||
### `www` subdomains
|
||||
|
||||
`www` es el tipo de subdominio más usado. Por ejemplo, `www.example.com` incluye un subdominio `www`.
|
||||
A `www` subdomain is the most commonly used type of subdomain. For example, `www.example.com` includes a `www` subdomain.
|
||||
|
||||
Los subdominios `www` son el tipo de dominio personalizado más estable porque los subdominios `www` no se ven afectados por los cambios en las direcciones IP de los servidores de {% data variables.product.product_name %}.
|
||||
`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.
|
||||
|
||||
### Subdominios personalizados
|
||||
### Custom subdomains
|
||||
|
||||
Un subdominio personalizado es un tipo de subdominio que no usa la variante `www` estándar. Los subdominios personalizados se utilizan principalmente cuando se necesitan dos secciones distintas de su sitio. Por ejemplo, puede crear un sitio denominado `blog.example.com` y personalizar esa sección de manera independiente a `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`.
|
||||
|
||||
## Uso de un dominio apex para tu sitio {% data variables.product.prodname_pages %}
|
||||
## Using an apex domain for your {% data variables.product.prodname_pages %} site
|
||||
|
||||
Un dominio de vértice es un dominio personalizado que no contiene un subdominio, como `example.com`. Los dominios apex también son conocidos como dominios apex base, vacíos, desnudos, o de zona.
|
||||
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.
|
||||
|
||||
Un dominio de vértice se configura con un registro `A`, `ALIAS`o `ANAME` desde el proveedor DNS. Para más información, vea "[Administración de un dominio personalizado para el sitio de {% 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 %} Para más información, vea "[Administración de un dominio personalizado para el sitio {% 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)."
|
||||
|
||||
## Asegurar el dominio personalizado para tu sitio de {% data variables.product.prodname_pages %}
|
||||
## Securing the custom domain for your {% data variables.product.prodname_pages %} site
|
||||
|
||||
{% data reusables.pages.secure-your-domain %} Para más información, vea "[Comprobación del dominio personalizado para {% data variables.product.prodname_pages %}](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)" y "[Administración de un dominio personalizado para el sitio de {% 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)."
|
||||
|
||||
Existen algunos motivos por los que tu sitio pueda estar inhabilitado automáticamente.
|
||||
There are a couple of reasons your site might be automatically disabled.
|
||||
|
||||
- Si bajaste de categoría de {% data variables.product.prodname_pro %} a {% data variables.product.prodname_free_user %}, todos los sitios de {% data variables.product.prodname_pages %} que se publicaron actualmente desde repositorios privados en tu cuenta quedarán sin publicar. Para más información, vea "[Cambio del plan de facturación de {% data variables.product.prodname_dotcom %} a una versión anterior](/articles/downgrading-your-github-billing-plan)".
|
||||
- Si transfieres a un repositorio privado a una cuenta personal que está usando {% data variables.product.prodname_free_user %}, el repositorio perderá acceso a la función de {% data variables.product.prodname_pages %}, y el sitio de {% data variables.product.prodname_pages %} actualmente publicado, quedará sin publicar. Para más información, vea "[Transferencia de un repositorio](/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)."
|
||||
|
||||
## Información adicional
|
||||
## Further reading
|
||||
|
||||
- "[Solución de problemas de dominios personalizados y {% 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)"
|
||||
|
|
|
@ -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 %}
|
||||
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -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.
|
||||
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -14,6 +14,7 @@ children:
|
|||
- /managing-the-forking-policy-for-your-repository
|
||||
- /managing-pull-request-reviews-in-your-repository
|
||||
- /managing-the-commit-signoff-policy-for-your-repository
|
||||
- /managing-the-push-policy-for-your-repository
|
||||
- /managing-git-lfs-objects-in-archives-of-your-repository
|
||||
- /enabling-anonymous-git-read-access-for-a-repository
|
||||
- /about-email-notifications-for-pushes-to-your-repository
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -1,13 +1,5 @@
|
|||
---
|
||||
ms.openlocfilehash: 5f71b486e450ec53e4f144c7cabd87e1e7e8a257
|
||||
ms.sourcegitcommit: 478f2931167988096ae6478a257f492ecaa11794
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: es-ES
|
||||
ms.lasthandoff: 09/09/2022
|
||||
ms.locfileid: "147717641"
|
||||
---
|
||||
{% note %}
|
||||
|
||||
**Nota**: Las políticas de organización que definas para {% data variables.product.prodname_codespaces %} solo se aplican a los codespaces para los que se facturará la organización. Si un usuario individual crea un codespace para un repositorio de tu organización y la organización no se factura, dicho codespace no estará enlazado por estas políticas. Para obtener información sobre cómo elegir quién puede crear codespaces que se facturan a tu organización, consulta "[Habilitar {% data variables.product.prodname_github_codespaces %} para tu organización](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)".
|
||||
**Note**: Codespace policies only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)."
|
||||
|
||||
{% endnote %}
|
|
@ -1,18 +1,10 @@
|
|||
---
|
||||
ms.openlocfilehash: 073c21c1480e0f9f699687c730aef2bb670654e7
|
||||
ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: es-ES
|
||||
ms.lasthandoff: 09/05/2022
|
||||
ms.locfileid: "146689025"
|
||||
---
|
||||
La siguiente tabla muestra, para cada administrador de paquetes:
|
||||
- El valor YAML a utilizar en el archivo *dependabot.yml*
|
||||
- Las versiones compatibles del administrador de paquetes
|
||||
- Si las dependencias en los repositorios o registros privados de {% data variables.product.prodname_dotcom %} son compatibles
|
||||
- Si las dependencias delegadas a proveedores son compatibles
|
||||
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
|
||||
|
||||
Administrador de paquetes | El valor de YAML | Versiones compatibles | Los repositorios privados | Registros privados | Delegamiento a proveedores
|
||||
Package manager | YAML value | Supported versions | Private repositories | Private registries | Vendoring
|
||||
---------------|------------------|------------------|:---:|:---:|:---:
|
||||
Bundler | `bundler` | v1, v2 | | **✓** | **✓** |
|
||||
Cargo | `cargo` | v1 | **✓** | **✓** | |
|
||||
|
@ -20,11 +12,11 @@ Composer | `composer` | v1, v2 | **✓** | **✓** | |
|
|||
Docker | `docker` | v1 | **✓** | **✓** | |
|
||||
Hex | `mix` | v1 | | **✓** | |
|
||||
elm-package | `elm` | v0.19 | **✓** | **✓** | |
|
||||
submódulo de git | `gitsubmodule` | N/A (sin versión) | **✓** | **✓** | |
|
||||
Acciones de GitHub | `github-actions` | N/A (sin versión) | **✓** | **✓** | |
|
||||
Módulos de Go | `gomod` | v1 | **✓** | **✓** | **✓** |
|
||||
Gradle | `gradle` | N/A (sin versión)<sup>[1]</sup> | **✓** | **✓** | |
|
||||
Maven | `maven` | N/A (sin versión)<sup>[2]</sup> | **✓** | **✓** | |
|
||||
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 | | **✓** | |
|
||||
|
@ -33,23 +25,29 @@ pip-compile | `pip` | 6.1.0 | | **✓** | |
|
|||
poetry | `pip` | v1 | | **✓** | |{% ifversion fpt or ghec or ghes > 3.4 %}
|
||||
pub | `pub` | v2 <sup>[4]</sup> | | | |{% endif %}
|
||||
Terraform | `terraform` | >= 0.13, <= 1.2.x | **✓** | **✓** | |
|
||||
yarn | `npm` | v1 | **✓** | **✓** | |
|
||||
{% ifversion dependabot-yarn-v3-update %}yarn | `npm` | v1, v2, v3 | **✓** | **✓** | **✓**<sup>[5]</sup> |{% else %}yarn | `npm` | v1 | **✓** | **✓** | |
|
||||
{% endif %}
|
||||
|
||||
{% tip %}
|
||||
|
||||
**Sugerencia:** Para los administradores de paquetes tales como `pipenv` y `poetry`, necesitas utilizar el valor `pip` de YAML. Por ejemplo, si utilizas `poetry` para administrar tus dependencias de Python y quieres que el {% data variables.product.prodname_dependabot %} monitoree el archivo de manifiesto de tu dependencia para encontrar versiones, utiliza `package-ecosystem: "pip"` en tu archivo de *dependabot.yml*.
|
||||
**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] El {% data variables.product.prodname_dependabot %} no ejecuta Gradle pero es compatible con las actualizaciones de los siguientes archivos: `build.gradle`, `build.gradle.kts` (para los proyectos de Kotlin), y los archivos que se incluyen a través de la declaración `apply` que tengan `dependencies` en el nombre de archivo. Ten en cuenta que `apply` no es compatible con `apply to`, con la recursión o con las sintaxis avanzadas (por ejemplo, el `apply` de Kotlin con `mapOf`, que son nombres de archivo que se definen por propiedad).
|
||||
[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] El {% data variables.product.prodname_dependabot %} no ejecuta Maven, pero es compatible con las actualizaciones a los archivos `pom.xml`.
|
||||
[2] {% data variables.product.prodname_dependabot %} doesn't run Maven but supports updates to `pom.xml` files.
|
||||
|
||||
[3] El {% data variables.product.prodname_dependabot %} no ejecuta el CLI de NuGet pero sí es compatible con la mayoría de las características hasta la versión 4.8.
|
||||
[3] {% data variables.product.prodname_dependabot %} doesn't run the NuGet CLI but does support most features up until version 4.8.
|
||||
|
||||
La compatibilidad con {% ifversion fpt or ghec or ghes > 3.4 %} [4] {% ifversion ghes = 3.5 %}`pub` está actualmente en versión beta. Las limitaciones conocidas están sujetas a cambios. Ten en cuenta que {% data variables.product.prodname_dependabot %}:
|
||||
- No admite la actualización de dependencias de git para `pub`.
|
||||
- No realizará una actualización cuando se omita la versión a la que intenta actualizar, incluso si hay disponible una versión anterior.
|
||||
{% 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.
|
||||
|
||||
Para obtener información sobre cómo configurar el archivo _dependabot.yml_ para `pub`, consulta "[Habilitación de la compatibilidad con ecosistemas de nivel beta](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)".
|
||||
{%- else %}{% data variables.product.prodname_dependabot %} no realizará una actualización de `pub` cuando la versión que intenta actualizar se omite, incluso si hay una versión anterior disponible.{% 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 %}
|
||||
|
|
|
@ -146,7 +146,7 @@ When you set your status, you can also let people know that you have limited ava
|
|||
|
||||
If you select the "Busy" option, when people @mention your username, assign you an issue or pull request, or request a pull request review from you, a note next to your username will show that you're busy. You will also be excluded from automatic review assignment for pull requests assigned to any teams you belong to. For more information, see "[Managing code review settings for your team](/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team)."
|
||||
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set your status** or, if you already have a status set, click your current status.
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set status** or, if you already have a status set, click your current status.
|
||||
![Button on profile to set your status](/assets/images/help/profile/set-status-on-profile.png)
|
||||
2. To add custom text to your status, click in the text field and type a status message.
|
||||
![Field to type a status message](/assets/images/help/profile/type-a-status-message.png)
|
||||
|
|
|
@ -51,7 +51,7 @@ To ensure that commits are attributed to you and appear in your contributions gr
|
|||
|
||||
{% note %}
|
||||
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is a seven-digit ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is an ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
|
|
|
@ -105,7 +105,8 @@ To use a {% data variables.product.pat_generic %} or SSH key to access resources
|
|||
|
||||
| Token type | Prefix | More information |
|
||||
| :- | :- | :- |
|
||||
| {% data variables.product.pat_generic_caps %} | `ghp_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)" |
|
||||
| {% data variables.product.pat_v1_caps %} | `ghp_` | {% ifversion pat-v2 %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-personal-access-token-classic)"{% else %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)"{% endif %} |{% ifversion pat-v2 %}
|
||||
| {% data variables.product.pat_v2_caps %} | `github_pat_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-fine-grained-personal-access-token)" |{% endif %}
|
||||
| OAuth access token | `gho_` | "[Authorizing {% data variables.product.prodname_oauth_apps %}](/developers/apps/authorizing-oauth-apps)" |
|
||||
| User-to-server token for a {% data variables.product.prodname_github_app %} | `ghu_` | "[Identifying and authorizing users for {% data variables.product.prodname_github_apps %}](/developers/apps/identifying-and-authorizing-users-for-github-apps)" |
|
||||
| Server-to-server token for a {% data variables.product.prodname_github_app %} | `ghs_` | "[Authenticating with {% data variables.product.prodname_github_apps %}](/developers/apps/authenticating-with-github-apps#authenticating-as-an-installation)" |
|
||||
|
|
|
@ -87,7 +87,7 @@ To sign commits using GPG and have those commits verified on {% data variables.p
|
|||
{% ifversion ssh-commit-verification %}
|
||||
## SSH commit signature verification
|
||||
|
||||
You can use SSH to sign commits with an SSH public key that you generate yourself. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
You can use SSH to sign commits with an SSH key that you generate yourself. For more information, see the [Git reference documentation](https://git-scm.com/docs/git-config#Documentation/git-config.txt-usersigningKey) for `user.Signingkey`. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
you can also upload that same key again for use as a signing key. There's no limit on the number of signing keys you can add to your account.
|
||||
|
||||
{% data variables.product.product_name %} uses [ssh_data](https://github.com/github/ssh_data), an open source Ruby library, to confirm that your locally signed commits and tags are cryptographically verifiable against a public key you have added to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.location.product_location %}{% endif %}.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: SSH キーのパスフレーズのリカバリ
|
||||
intro: SSH キーのパスフレーズをなくした場合、ご使用のオペレーティングシステムによって、リカバリができることもあれば、SSH キーのパスフレーズを新たに生成することが必要なこともあります。
|
||||
title: Recovering your SSH key passphrase
|
||||
intro: 'If you''ve lost your SSH key passphrase, depending on the operating system you use, you may either recover it or you may need to generate a new SSH key passphrase.'
|
||||
redirect_from:
|
||||
- /articles/how-do-i-recover-my-passphrase
|
||||
- /articles/how-do-i-recover-my-ssh-key-passphrase
|
||||
|
@ -15,36 +15,30 @@ versions:
|
|||
topics:
|
||||
- SSH
|
||||
shortTitle: Recover SSH key passphrase
|
||||
ms.openlocfilehash: 28d768e81f3076898c23b2b1668314ae5573ec5c
|
||||
ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: ja-JP
|
||||
ms.lasthandoff: 09/10/2022
|
||||
ms.locfileid: '145088163'
|
||||
---
|
||||
{% mac %}
|
||||
|
||||
[macOS キーチェーンを使用して SSH パスフレーズを構成](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain)した場合は、リカバリできる場合があります。
|
||||
If you [configured your SSH passphrase with the macOS keychain](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain), you may be able to recover it.
|
||||
|
||||
1. Finder で、**キーチェーン アクセス** アプリを検索します。
|
||||
![スポットライト検索バー](/assets/images/help/setup/keychain-access.png)
|
||||
2. キーチェーン アクセスで、**SSH** を検索します。
|
||||
3. SSH キーのエントリをダブルクリックして、新しいダイアログボックスを開きます。
|
||||
4. 左下隅で、 **[パスワードを表示]** を選択します。
|
||||
![キーチェーン アクセス ダイアログ](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. 管理者パスワードを入力するようプロンプトが表示されます。 [Keychain Access] ダイアログボックスに入力します。
|
||||
6. パスワードのマスクが解除されます。
|
||||
1. In Finder, search for the **Keychain Access** app.
|
||||
![Spotlight Search bar](/assets/images/help/setup/keychain-access.png)
|
||||
2. In Keychain Access, search for **SSH**.
|
||||
3. Double click on the entry for your SSH key to open a new dialog box.
|
||||
4. In the lower-left corner, select **Show password**.
|
||||
![Keychain access dialog](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. You'll be prompted for your administrative password. Type it into the "Keychain Access" dialog box.
|
||||
6. Your password will be revealed.
|
||||
|
||||
{% endmac %}
|
||||
|
||||
{% windows %}
|
||||
|
||||
SSH キーパスフレーズをなくした場合、リカバリの方法はありません。 代わりに GitHub パスワードを使用できるように、[新しい SSH キーペアを生成](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)するか、[HTTPS 複製に切り替える](/github/getting-started-with-github/managing-remote-repositories)必要があります。
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endwindows %}
|
||||
|
||||
{% linux %}
|
||||
|
||||
SSH キーパスフレーズをなくした場合、リカバリの方法はありません。 代わりに GitHub パスワードを使用できるように、[新しい SSH キーペアを生成](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)するか、[HTTPS 複製に切り替える](/github/getting-started-with-github/about-remote-repositories/#cloning-with-https-urls)必要があります。
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endlinux %}
|
||||
|
|
|
@ -26,8 +26,20 @@ $ ssh -T -p 443 git@ssh.github.com
|
|||
> provide shell access.
|
||||
```
|
||||
|
||||
{% note %}
|
||||
|
||||
**Note**: The hostname for port 443 is `ssh.{% data variables.command_line.backticks %}`, not `{% data variables.command_line.backticks %}`.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
If that worked, great! If not, you may need to [follow our troubleshooting guide](/articles/error-permission-denied-publickey).
|
||||
|
||||
Now, to clone the repository, you can run the following command:
|
||||
|
||||
```
|
||||
$ git clone ssh://git@ssh.{% data variables.command_line.codeblock %}:443/YOUR-USERNAME/YOUR-REPOSITORY.git
|
||||
```
|
||||
|
||||
## Enabling SSH connections over HTTPS
|
||||
|
||||
If you are able to SSH into `git@ssh.{% data variables.command_line.backticks %}` over port 443, you can override your SSH settings to force any connection to {% data variables.location.product_location %} to run through that server and port.
|
||||
|
@ -48,3 +60,19 @@ $ ssh -T git@{% data variables.command_line.codeblock %}
|
|||
> Hi USERNAME! You've successfully authenticated, but GitHub does not
|
||||
> provide shell access.
|
||||
```
|
||||
|
||||
## Updating known hosts
|
||||
|
||||
The first time you interact with GitHub after switching to port 443, you may get a warning message
|
||||
that the host wasn't found in `known_hosts`, or that it was found by another name.
|
||||
|
||||
```ShellSession
|
||||
> The authenticity of host '[ssh.github.com]:443 ([140.82.112.36]:443)' can't be established.
|
||||
> ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
|
||||
> This host key is known by the following other names/addresses:
|
||||
> ~/.ssh/known_hosts:32: github.com
|
||||
> Are you sure you want to continue connecting (yes/no/[fingerprint])?
|
||||
```
|
||||
|
||||
It is safe to answer `yes` to this question, assuming that the SSH fingerprint matches
|
||||
one of GitHub's published fingerprints. For more information, see "[Github's SSH key fingerprints](/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints)."
|
||||
|
|
|
@ -32,6 +32,8 @@ If you're unable to verify with the captcha:
|
|||
|
||||
Switching from cloning via SSH to cloning via HTTPS, or vice versa may improve connectivity. For more information, see "[Troubleshooting cloning errors](/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors)."
|
||||
|
||||
If you prefer to use SSH but the port is blocked, you can use an alternative port. For more information, see "[Using SSH over the HTTPS port](/authentication/troubleshooting-ssh/using-ssh-over-the-https-port)".
|
||||
|
||||
If you're encountering timeouts with SSH, see "[Error: Bad file number](/articles/error-bad-file-number)."
|
||||
|
||||
## Troubleshooting slow downloads and intermittent slow connections
|
||||
|
|
|
@ -14,6 +14,7 @@ children:
|
|||
- /managing-the-forking-policy-for-your-repository
|
||||
- /managing-pull-request-reviews-in-your-repository
|
||||
- /managing-the-commit-signoff-policy-for-your-repository
|
||||
- /managing-the-push-policy-for-your-repository
|
||||
- /managing-git-lfs-objects-in-archives-of-your-repository
|
||||
- /enabling-anonymous-git-read-access-for-a-repository
|
||||
- /about-email-notifications-for-pushes-to-your-repository
|
||||
|
|
|
@ -531,6 +531,7 @@ translations/zh-CN/content/authentication/securing-your-account-with-two-factor-
|
|||
translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md,broken liquid tags
|
||||
translations/zh-CN/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md,broken liquid tags
|
||||
translations/zh-CN/content/authentication/troubleshooting-ssh/error-key-already-in-use.md,broken liquid tags
|
||||
translations/zh-CN/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md,broken liquid tags
|
||||
translations/zh-CN/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md,broken liquid tags
|
||||
translations/zh-CN/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md,broken liquid tags
|
||||
translations/zh-CN/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md,broken liquid tags
|
||||
|
@ -1012,7 +1013,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/dependabot/supported-package-managers.md,rendering error
|
||||
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
|
||||
|
|
|
|
@ -84,6 +84,7 @@ translations/es-ES/content/codespaces/customizing-your-codespace/personalizing-c
|
|||
translations/es-ES/content/codespaces/customizing-your-codespace/setting-your-default-editor-for-codespaces.md,file deleted because it no longer exists in main
|
||||
translations/es-ES/content/codespaces/customizing-your-codespace/setting-your-default-region-for-codespaces.md,file deleted because it no longer exists in main
|
||||
translations/es-ES/content/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces.md,file deleted because it no longer exists in main
|
||||
translations/es-ES/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,file deleted because it no longer exists in main
|
||||
translations/es-ES/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md,file deleted because it no longer exists in main
|
||||
translations/es-ES/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md,file deleted because it no longer exists in main
|
||||
translations/es-ES/content/codespaces/developing-in-codespaces/using-codespaces-with-github-cli.md,file deleted because it no longer exists in main
|
||||
|
@ -285,7 +286,7 @@ translations/es-ES/content/account-and-profile/managing-subscriptions-and-notifi
|
|||
translations/es-ES/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md,broken liquid tags
|
||||
translations/es-ES/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md,broken liquid tags
|
||||
translations/es-ES/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md,rendering error
|
||||
translations/es-ES/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md,broken liquid tags
|
||||
translations/es-ES/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md,rendering error
|
||||
translations/es-ES/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md,rendering error
|
||||
translations/es-ES/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md,broken liquid tags
|
||||
translations/es-ES/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md,rendering error
|
||||
|
@ -297,17 +298,17 @@ translations/es-ES/content/account-and-profile/setting-up-and-managing-your-pers
|
|||
translations/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/index.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/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/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/changing-your-github-username.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md,rendering error
|
||||
translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md,rendering error
|
||||
translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md,broken liquid tags
|
||||
translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md,rendering error
|
||||
translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md,broken liquid tags
|
||||
translations/es-ES/content/actions/automating-builds-and-tests/about-continuous-integration.md,broken liquid tags
|
||||
translations/es-ES/content/actions/creating-actions/creating-a-composite-action.md,broken liquid tags
|
||||
|
@ -333,7 +334,7 @@ translations/es-ES/content/actions/examples/using-the-github-cli-on-a-runner.md,
|
|||
translations/es-ES/content/actions/hosting-your-own-runners/about-self-hosted-runners.md,rendering error
|
||||
translations/es-ES/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md,rendering error
|
||||
translations/es-ES/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md,rendering error
|
||||
translations/es-ES/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md,broken liquid tags
|
||||
translations/es-ES/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md,rendering error
|
||||
translations/es-ES/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md,rendering error
|
||||
translations/es-ES/content/actions/hosting-your-own-runners/running-scripts-before-or-after-a-job.md,broken liquid tags
|
||||
translations/es-ES/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md,rendering error
|
||||
|
@ -355,23 +356,24 @@ translations/es-ES/content/actions/security-guides/encrypted-secrets.md,renderin
|
|||
translations/es-ES/content/actions/security-guides/security-hardening-for-github-actions.md,rendering error
|
||||
translations/es-ES/content/actions/using-github-hosted-runners/using-larger-runners.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/about-workflows.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md,broken liquid tags
|
||||
translations/es-ES/content/actions/using-workflows/creating-starter-workflows-for-your-organization.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/events-that-trigger-workflows.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/reusing-workflows.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/sharing-workflows-secrets-and-runners-with-your-organization.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/storing-workflow-data-as-artifacts.md,broken liquid tags
|
||||
translations/es-ES/content/actions/using-workflows/storing-workflow-data-as-artifacts.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/triggering-a-workflow.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/workflow-commands-for-github-actions.md,rendering error
|
||||
translations/es-ES/content/actions/using-workflows/workflow-syntax-for-github-actions.md,rendering error
|
||||
translations/es-ES/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md,broken liquid tags
|
||||
translations/es-ES/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md,broken liquid tags
|
||||
translations/es-ES/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-secret-scanning-for-your-appliance.md,broken liquid tags
|
||||
translations/es-ES/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md,rendering error
|
||||
translations/es-ES/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-secret-scanning-for-your-appliance.md,rendering error
|
||||
translations/es-ES/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/about-supply-chain-security-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/about-supply-chain-security-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/viewing-the-vulnerability-data-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-github-connect/about-github-connect.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-unified-contributions-for-your-enterprise.md,broken liquid tags
|
||||
|
@ -383,28 +385,31 @@ translations/es-ES/content/admin/configuration/configuring-network-settings/conf
|
|||
translations/es-ES/content/admin/configuration/configuring-network-settings/configuring-built-in-firewall-rules.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-network-settings/configuring-dns-nameservers.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-network-settings/configuring-tls.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-network-settings/enabling-subdomain-isolation.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-network-settings/enabling-subdomain-isolation.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-network-settings/network-ports.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-network-settings/using-github-enterprise-server-with-a-load-balancer.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-network-settings/validating-your-domain-settings.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/accessing-the-management-console.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-applications.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-backups-on-your-appliance.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-the-referrer-policy-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/enabling-private-mode.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md,broken liquid tags
|
||||
translations/es-ES/content/admin/configuration/configuring-your-enterprise/troubleshooting-tls-errors.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/monitoring-your-appliance/accessing-the-monitor-dashboard.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/monitoring-your-appliance/configuring-collectd.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/monitoring-your-appliance/generating-a-health-check-for-your-enterprise.md,broken liquid tags
|
||||
|
@ -414,27 +419,27 @@ translations/es-ES/content/admin/enterprise-management/monitoring-your-appliance
|
|||
translations/es-ES/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/enabling-automatic-update-checks.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-cpu-or-memory-resources.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrade-requirements.md,broken liquid tags
|
||||
translations/es-ES/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrade-requirements.md,rendering error
|
||||
translations/es-ES/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server.md,rendering error
|
||||
translations/es-ES/content/admin/github-actions/advanced-configuration-and-troubleshooting/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled.md,broken liquid tags
|
||||
translations/es-ES/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/github-actions/advanced-configuration-and-troubleshooting/using-a-staging-environment.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md,broken liquid tags
|
||||
translations/es-ES/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md,rendering error
|
||||
translations/es-ES/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises.md,rendering error
|
||||
translations/es-ES/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/es-ES/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/es-ES/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/es-ES/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/github-actions/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect.md,broken liquid tags
|
||||
translations/es-ES/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md,broken liquid tags
|
||||
translations/es-ES/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md,broken liquid tags
|
||||
translations/es-ES/content/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect.md,rendering error
|
||||
translations/es-ES/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md,rendering error
|
||||
translations/es-ES/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/index.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/index.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-built-in-authentication/configuring-built-in-authentication.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-built-in-authentication/disabling-unauthenticated-sign-ups.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-built-in-authentication/inviting-people-to-use-your-instance.md,broken liquid tags
|
||||
|
@ -442,30 +447,30 @@ translations/es-ES/content/admin/identity-and-access-management/using-cas-for-en
|
|||
translations/es-ES/content/admin/identity-and-access-management/using-cas-for-enterprise-iam/using-cas.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-saml-single-sign-on-for-enterprise-managed-users.md,rendering error
|
||||
translations/es-ES/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/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/index.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/about-saml-for-enterprise-iam.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-authentication-and-provisioning-for-your-enterprise-using-azure-ad.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-authentication-and-provisioning-for-your-enterprise-using-okta.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-saml-single-sign-on-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-user-provisioning-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-user-provisioning-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/enabling-encrypted-assertions.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/index.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/troubleshooting-saml-authentication.md,broken liquid tags
|
||||
translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/updating-a-users-saml-nameid.md,broken liquid tags
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md,broken liquid tags
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md,broken liquid tags
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md,broken liquid tags
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md,broken liquid tags
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md,broken liquid tags
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md,rendering error
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md,rendering error
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md,rendering error
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md,rendering error
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md,rendering error
|
||||
translations/es-ES/content/admin/installation/setting-up-a-github-enterprise-server-instance/setting-up-a-staging-instance.md,broken liquid tags
|
||||
translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md,broken liquid tags
|
||||
translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/exporting-server-statistics.md,broken liquid tags
|
||||
|
@ -480,12 +485,12 @@ translations/es-ES/content/admin/overview/about-data-residency.md,broken liquid
|
|||
translations/es-ES/content/admin/overview/about-enterprise-accounts.md,broken liquid tags
|
||||
translations/es-ES/content/admin/overview/about-github-enterprise-server.md,broken liquid tags
|
||||
translations/es-ES/content/admin/overview/accessing-compliance-reports-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/overview/system-overview.md,broken liquid tags
|
||||
translations/es-ES/content/admin/overview/system-overview.md,rendering error
|
||||
translations/es-ES/content/admin/packages/enabling-github-packages-with-aws.md,broken liquid tags
|
||||
translations/es-ES/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md,broken liquid tags
|
||||
translations/es-ES/content/admin/packages/enabling-github-packages-with-minio.md,broken liquid tags
|
||||
translations/es-ES/content/admin/packages/getting-started-with-github-packages-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md,broken liquid tags
|
||||
translations/es-ES/content/admin/packages/getting-started-with-github-packages-for-your-enterprise.md,rendering error
|
||||
translations/es-ES/content/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md,rendering error
|
||||
translations/es-ES/content/admin/packages/quickstart-for-configuring-your-minio-storage-bucket-for-github-packages.md,broken liquid tags
|
||||
translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/about-enterprise-policies.md,broken liquid tags
|
||||
translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md,broken liquid tags
|
||||
|
@ -494,10 +499,10 @@ translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise
|
|||
translations/es-ES/content/admin/policies/enforcing-policy-with-pre-receive-hooks/about-pre-receive-hooks.md,broken liquid tags
|
||||
translations/es-ES/content/admin/policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/adding-people-to-teams.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/adding-people-to-teams.md,rendering error
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/continuous-integration-using-jenkins.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/creating-teams.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/requiring-two-factor-authentication-for-an-organization.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/creating-teams.md,rendering error
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/requiring-two-factor-authentication-for-an-organization.md,rendering error
|
||||
translations/es-ES/content/admin/user-management/managing-organizations-in-your-enterprise/restoring-a-deleted-organization.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-repositories-in-your-enterprise/configuring-git-large-file-storage-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md,broken liquid tags
|
||||
|
@ -513,24 +518,24 @@ translations/es-ES/content/authentication/authenticating-with-saml-single-sign-o
|
|||
translations/es-ES/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md,rendering error
|
||||
translations/es-ES/content/authentication/connecting-to-github-with-ssh/about-ssh.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md,rendering error
|
||||
translations/es-ES/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md,rendering error
|
||||
translations/es-ES/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md,rendering error
|
||||
translations/es-ES/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md,rendering error
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md,rendering error
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/index.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md,rendering error
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md,rendering error
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md,rendering error
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md,rendering error
|
||||
translations/es-ES/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md,rendering error
|
||||
translations/es-ES/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md,rendering error
|
||||
translations/es-ES/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md,rendering error
|
||||
translations/es-ES/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md,rendering error
|
||||
translations/es-ES/content/authentication/managing-commit-signature-verification/index.md,broken liquid tags
|
||||
|
@ -539,12 +544,13 @@ translations/es-ES/content/authentication/managing-commit-signature-verification
|
|||
translations/es-ES/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md,rendering error
|
||||
translations/es-ES/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/troubleshooting-ssh/error-key-already-in-use.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md,broken liquid tags
|
||||
translations/es-ES/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md,broken liquid tags
|
||||
translations/es-ES/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md,broken liquid tags
|
||||
translations/es-ES/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md,broken liquid tags
|
||||
|
@ -555,7 +561,7 @@ translations/es-ES/content/billing/managing-billing-for-github-codespaces/managi
|
|||
translations/es-ES/content/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage.md,broken liquid tags
|
||||
translations/es-ES/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md,broken liquid tags
|
||||
translations/es-ES/content/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription.md,broken liquid tags
|
||||
translations/es-ES/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md,broken liquid tags
|
||||
translations/es-ES/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md,rendering error
|
||||
translations/es-ES/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.md,broken liquid tags
|
||||
translations/es-ES/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md,rendering error
|
||||
translations/es-ES/content/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise.md,broken liquid tags
|
||||
|
@ -582,10 +588,10 @@ translations/es-ES/content/code-security/code-scanning/integrating-with-code-sca
|
|||
translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/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/es-ES/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md,broken liquid tags
|
||||
translations/es-ES/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md,rendering error
|
||||
translations/es-ES/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md,rendering error
|
||||
translations/es-ES/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md,rendering error
|
||||
translations/es-ES/content/code-security/dependabot/dependabot-alerts/editing-security-advisories-in-the-github-advisory-database.md,broken liquid tags
|
||||
|
@ -597,19 +603,21 @@ translations/es-ES/content/code-security/dependabot/dependabot-version-updates/c
|
|||
translations/es-ES/content/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates.md,rendering error
|
||||
translations/es-ES/content/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions.md,rendering error
|
||||
translations/es-ES/content/code-security/dependabot/working-with-dependabot/managing-encrypted-secrets-for-dependabot.md,rendering error
|
||||
translations/es-ES/content/code-security/dependabot/working-with-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md,broken liquid tags
|
||||
translations/es-ES/content/code-security/dependabot/working-with-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md,rendering error
|
||||
translations/es-ES/content/code-security/getting-started/github-security-features.md,rendering error
|
||||
translations/es-ES/content/code-security/getting-started/securing-your-organization.md,broken liquid tags
|
||||
translations/es-ES/content/code-security/getting-started/securing-your-organization.md,rendering error
|
||||
translations/es-ES/content/code-security/getting-started/securing-your-repository.md,rendering error
|
||||
translations/es-ES/content/code-security/repository-security-advisories/about-coordinated-disclosure-of-security-vulnerabilities.md,rendering error
|
||||
translations/es-ES/content/code-security/secret-scanning/about-secret-scanning.md,rendering error
|
||||
translations/es-ES/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md,rendering error
|
||||
translations/es-ES/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md,rendering error
|
||||
translations/es-ES/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md,rendering error
|
||||
translations/es-ES/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md,broken liquid tags
|
||||
translations/es-ES/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md,broken liquid tags
|
||||
translations/es-ES/content/code-security/security-overview/about-the-security-overview.md,rendering error
|
||||
translations/es-ES/content/code-security/security-overview/filtering-alerts-in-the-security-overview.md,rendering error
|
||||
translations/es-ES/content/code-security/security-overview/viewing-the-security-overview.md,rendering error
|
||||
translations/es-ES/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-accounts.md,broken liquid tags
|
||||
translations/es-ES/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-accounts.md,rendering error
|
||||
translations/es-ES/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-code.md,rendering error
|
||||
translations/es-ES/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md,rendering error
|
||||
translations/es-ES/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security.md,rendering error
|
||||
|
@ -681,9 +689,9 @@ translations/es-ES/content/desktop/contributing-and-collaborating-using-github-d
|
|||
translations/es-ES/content/desktop/installing-and-configuring-github-desktop/installing-and-authenticating-to-github-desktop/about-connections-to-github.md,broken liquid tags
|
||||
translations/es-ES/content/desktop/installing-and-configuring-github-desktop/installing-and-authenticating-to-github-desktop/authenticating-to-github.md,broken liquid tags
|
||||
translations/es-ES/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md,broken liquid tags
|
||||
translations/es-ES/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md,broken liquid tags
|
||||
translations/es-ES/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md,broken liquid tags
|
||||
translations/es-ES/content/developers/apps/getting-started-with-apps/about-apps.md,broken liquid tags
|
||||
translations/es-ES/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md,rendering error
|
||||
translations/es-ES/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md,rendering error
|
||||
translations/es-ES/content/developers/apps/getting-started-with-apps/about-apps.md,rendering error
|
||||
translations/es-ES/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md,broken liquid tags
|
||||
translations/es-ES/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md,rendering error
|
||||
translations/es-ES/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md,rendering error
|
||||
|
@ -714,12 +722,12 @@ translations/es-ES/content/education/manage-coursework-with-github-classroom/tea
|
|||
translations/es-ES/content/get-started/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/exploring-projects-on-github/following-organizations.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/getting-started-with-git/about-remote-repositories.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/getting-started-with-git/about-remote-repositories.md,rendering error
|
||||
translations/es-ES/content/get-started/getting-started-with-git/associating-text-editors-with-git.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/getting-started-with-git/managing-remote-repositories.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md,rendering error
|
||||
translations/es-ES/content/get-started/getting-started-with-git/managing-remote-repositories.md,rendering error
|
||||
translations/es-ES/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md,rendering error
|
||||
translations/es-ES/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md,rendering error
|
||||
translations/es-ES/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md,broken liquid tags
|
||||
|
@ -727,7 +735,7 @@ translations/es-ES/content/get-started/learning-about-github/about-github-advanc
|
|||
translations/es-ES/content/get-started/learning-about-github/access-permissions-on-github.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/learning-about-github/types-of-github-accounts.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/onboarding/getting-started-with-github-ae.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md,rendering error
|
||||
translations/es-ES/content/get-started/onboarding/getting-started-with-github-enterprise-server.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/onboarding/getting-started-with-github-team.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/onboarding/getting-started-with-your-github-account.md,broken liquid tags
|
||||
|
@ -737,21 +745,21 @@ translations/es-ES/content/get-started/quickstart/contributing-to-projects.md,br
|
|||
translations/es-ES/content/get-started/quickstart/create-a-repo.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/quickstart/fork-a-repo.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/quickstart/git-and-github-learning-resources.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/signing-up-for-github/verifying-your-email-address.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/signing-up-for-github/verifying-your-email-address.md,rendering error
|
||||
translations/es-ES/content/get-started/using-git/about-git-rebase.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/using-github/github-command-palette.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/using-github/github-mobile.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/using-github/github-mobile.md,rendering error
|
||||
translations/es-ES/content/get-started/using-github/keyboard-shortcuts.md,rendering error
|
||||
translations/es-ES/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/es-ES/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md,rendering error
|
||||
translations/es-ES/content/get-started/writing-on-github/working-with-advanced-formatting/attaching-files.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md,broken liquid tags
|
||||
translations/es-ES/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md,rendering error
|
||||
translations/es-ES/content/github-cli/github-cli/quickstart.md,broken liquid tags
|
||||
translations/es-ES/content/graphql/guides/forming-calls-with-graphql.md,broken liquid tags
|
||||
translations/es-ES/content/github-cli/github-cli/quickstart.md,rendering error
|
||||
translations/es-ES/content/graphql/guides/forming-calls-with-graphql.md,rendering error
|
||||
translations/es-ES/content/graphql/guides/introduction-to-graphql.md,broken liquid tags
|
||||
translations/es-ES/content/graphql/guides/managing-enterprise-accounts.md,broken liquid tags
|
||||
translations/es-ES/content/graphql/guides/managing-enterprise-accounts.md,rendering error
|
||||
translations/es-ES/content/graphql/guides/migrating-from-rest-to-graphql.md,broken liquid tags
|
||||
translations/es-ES/content/graphql/overview/about-the-graphql-api.md,rendering error
|
||||
translations/es-ES/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md,broken liquid tags
|
||||
|
@ -767,48 +775,49 @@ translations/es-ES/content/issues/tracking-your-work-with-issues/linking-a-pull-
|
|||
translations/es-ES/content/issues/tracking-your-work-with-issues/planning-and-tracking-work-for-your-team-or-project.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/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/es-ES/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/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization.md,rendering error
|
||||
translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/managing-organization-settings/deleting-an-organization-account.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-organization-settings/deleting-an-organization-account.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-organization-settings/integrating-jira-with-your-organization-project-board.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md,rendering error
|
||||
translations/es-ES/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization.md,rendering error
|
||||
translations/es-ES/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/es-ES/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/organizing-members-into-teams/about-teams.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team.md,rendering error
|
||||
translations/es-ES/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md,broken liquid tags
|
||||
translations/es-ES/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/about-permissions-for-github-packages.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md,broken liquid tags
|
||||
translations/es-ES/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/deleting-and-restoring-a-package.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/installing-a-package.md,broken liquid tags
|
||||
translations/es-ES/content/packages/learn-github-packages/installing-a-package.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/introduction-to-github-packages.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/publishing-a-package.md,broken liquid tags
|
||||
translations/es-ES/content/packages/learn-github-packages/publishing-a-package.md,rendering error
|
||||
translations/es-ES/content/packages/learn-github-packages/viewing-packages.md,rendering error
|
||||
translations/es-ES/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md,broken liquid tags
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md,broken liquid tags
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md,broken liquid tags
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md,broken liquid tags
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md,broken liquid tags
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,broken liquid tags
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,broken liquid tags
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,rendering error
|
||||
translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,rendering error
|
||||
translations/es-ES/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md,broken liquid tags
|
||||
translations/es-ES/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md,rendering error
|
||||
translations/es-ES/content/pages/getting-started-with-github-pages/about-github-pages.md,broken liquid tags
|
||||
translations/es-ES/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md,rendering error
|
||||
translations/es-ES/content/pages/index.md,broken liquid tags
|
||||
translations/es-ES/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md,broken liquid tags
|
||||
translations/es-ES/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md,rendering error
|
||||
translations/es-ES/content/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md,broken liquid tags
|
||||
translations/es-ES/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md,broken liquid tags
|
||||
translations/es-ES/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md,rendering error
|
||||
translations/es-ES/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/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
|
||||
|
@ -821,7 +830,7 @@ translations/es-ES/content/pull-requests/committing-changes-to-your-project/crea
|
|||
translations/es-ES/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/es-ES/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md,broken liquid tags
|
||||
translations/es-ES/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/es-ES/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md,broken liquid tags
|
||||
translations/es-ES/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md,rendering error
|
||||
translations/es-ES/content/repositories/archiving-a-github-repository/archiving-repositories.md,rendering error
|
||||
translations/es-ES/content/repositories/archiving-a-github-repository/backing-up-a-repository.md,broken liquid tags
|
||||
translations/es-ES/content/repositories/archiving-a-github-repository/referencing-and-citing-content.md,broken liquid tags
|
||||
|
@ -840,7 +849,7 @@ translations/es-ES/content/repositories/configuring-branches-and-merges-in-your-
|
|||
translations/es-ES/content/repositories/creating-and-managing-repositories/about-repositories.md,broken liquid tags
|
||||
translations/es-ES/content/repositories/creating-and-managing-repositories/cloning-a-repository.md,broken liquid tags
|
||||
translations/es-ES/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md,broken liquid tags
|
||||
translations/es-ES/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md,broken liquid tags
|
||||
translations/es-ES/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md,rendering error
|
||||
translations/es-ES/content/repositories/creating-and-managing-repositories/transferring-a-repository.md,rendering error
|
||||
translations/es-ES/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md,broken liquid tags
|
||||
translations/es-ES/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md,rendering error
|
||||
|
@ -883,7 +892,7 @@ translations/es-ES/content/rest/enterprise-admin/users.md,broken liquid tags
|
|||
translations/es-ES/content/rest/gitignore.md,broken liquid tags
|
||||
translations/es-ES/content/rest/guides/building-a-ci-server.md,broken liquid tags
|
||||
translations/es-ES/content/rest/guides/getting-started-with-the-rest-api.md,broken liquid tags
|
||||
translations/es-ES/content/rest/guides/traversing-with-pagination.md,broken liquid tags
|
||||
translations/es-ES/content/rest/guides/traversing-with-pagination.md,rendering error
|
||||
translations/es-ES/content/rest/guides/working-with-comments.md,broken liquid tags
|
||||
translations/es-ES/content/rest/migrations/source-imports.md,broken liquid tags
|
||||
translations/es-ES/content/rest/overview/other-authentication-methods.md,broken liquid tags
|
||||
|
@ -904,7 +913,7 @@ translations/es-ES/content/sponsors/receiving-sponsorships-through-github-sponso
|
|||
translations/es-ES/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md,broken liquid tags
|
||||
translations/es-ES/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-personal-account.md,broken liquid tags
|
||||
translations/es-ES/content/support/contacting-github-support/providing-data-to-github-support.md,broken liquid tags
|
||||
translations/es-ES/content/support/learning-about-github-support/about-github-premium-support.md,broken liquid tags
|
||||
translations/es-ES/content/support/learning-about-github-support/about-github-premium-support.md,rendering error
|
||||
translations/es-ES/content/support/learning-about-github-support/about-github-support.md,rendering error
|
||||
translations/es-ES/data/glossaries/external.yml,broken liquid tags
|
||||
translations/es-ES/data/learning-tracks/actions.yml,broken liquid tags
|
||||
|
@ -996,7 +1005,7 @@ translations/es-ES/data/reusables/advanced-security/secret-scanning-add-custom-p
|
|||
translations/es-ES/data/reusables/advanced-security/secret-scanning-create-custom-pattern.md,rendering error
|
||||
translations/es-ES/data/reusables/advanced-security/secret-scanning-push-protection-org.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/apps/user-to-server-rate-limits.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/audit_log/audit-log-action-categories.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/audit_log/audit-log-action-categories.md,rendering error
|
||||
translations/es-ES/data/reusables/audit_log/audit-log-events-workflows.md,rendering error
|
||||
translations/es-ES/data/reusables/audit_log/audit_log_sidebar_for_org_admins.md,rendering error
|
||||
translations/es-ES/data/reusables/audit_log/audit_log_sidebar_for_site_admins.md,rendering error
|
||||
|
@ -1011,6 +1020,7 @@ translations/es-ES/data/reusables/code-scanning/enterprise-enable-code-scanning-
|
|||
translations/es-ES/data/reusables/code-scanning/enterprise-enable-code-scanning.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/code-scanning/what-is-codeql-cli.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/codespaces/codespaces-api-beta-note.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/codespaces/codespaces-org-policies-note.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/codespaces/codespaces-spending-limit-requirement.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/codespaces/creating-a-codespace-in-vscode.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/codespaces/customize-vcpus-and-ram.md,broken liquid tags
|
||||
|
@ -1027,6 +1037,7 @@ translations/es-ES/data/reusables/dependabot/beta-security-and-version-updates.m
|
|||
translations/es-ES/data/reusables/dependabot/default-dependencies-allow-ignore.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md,rendering error
|
||||
translations/es-ES/data/reusables/dependabot/enterprise-enable-dependabot.md,rendering error
|
||||
translations/es-ES/data/reusables/dependabot/supported-package-managers.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/desktop/get-an-account.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/discussions/navigate-to-repo-or-org.md,broken liquid tags
|
||||
|
@ -1045,7 +1056,7 @@ translations/es-ES/data/reusables/enterprise-accounts/emu-permission-gist.md,bro
|
|||
translations/es-ES/data/reusables/enterprise-accounts/emu-permission-interact.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise-accounts/emu-permission-propose.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise-accounts/emu-permission-repo.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise-accounts/emu-short-summary.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise-accounts/emu-short-summary.md,rendering error
|
||||
translations/es-ES/data/reusables/enterprise-accounts/oidc-gei-warning.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise-accounts/security-tab.md,rendering error
|
||||
translations/es-ES/data/reusables/enterprise/apply-configuration.md,broken liquid tags
|
||||
|
@ -1053,7 +1064,7 @@ translations/es-ES/data/reusables/enterprise/rate_limit.md,broken liquid tags
|
|||
translations/es-ES/data/reusables/enterprise/test-in-staging.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise_enterprise_support/installing-releases.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise_installation/download-package.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise_installation/hardware-considerations-all-platforms.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise_installation/hardware-considerations-all-platforms.md,rendering error
|
||||
translations/es-ES/data/reusables/enterprise_installation/hotpatching-explanation.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise_installation/image-urls-viewable-warning.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/enterprise_installation/ssh-into-instance.md,broken liquid tags
|
||||
|
@ -1097,7 +1108,7 @@ translations/es-ES/data/reusables/organizations/security.md,rendering error
|
|||
translations/es-ES/data/reusables/organizations/teams_sidebar.md,rendering error
|
||||
translations/es-ES/data/reusables/organizations/verified-domains.md,rendering error
|
||||
translations/es-ES/data/reusables/package_registry/authenticate-packages.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/package_registry/authenticate-to-container-registry-steps.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/package_registry/authenticate-to-container-registry-steps.md,rendering error
|
||||
translations/es-ES/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/package_registry/package-registry-with-github-tokens.md,broken liquid tags
|
||||
|
@ -1125,7 +1136,7 @@ translations/es-ES/data/reusables/repositories/repository-branches.md,rendering
|
|||
translations/es-ES/data/reusables/repositories/sidebar-notifications.md,rendering error
|
||||
translations/es-ES/data/reusables/repositories/suggest-changes.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/repositories/you-can-fork.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/rest-api/dotcom-only-guide-note.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/rest-api/dotcom-only-guide-note.md,rendering error
|
||||
translations/es-ES/data/reusables/saml/about-authorized-credentials.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/saml/about-linked-identities.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/saml/about-saml-access-enterprise-account.md,broken liquid tags
|
||||
|
@ -1143,7 +1154,7 @@ translations/es-ES/data/reusables/shortdesc/rate_limits_github_apps.md,broken li
|
|||
translations/es-ES/data/reusables/sponsors/feedback.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/sponsors/select-sponsorship-billing.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/ssh/about-ssh.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/ssh/key-type-support.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/ssh/key-type-support.md,rendering error
|
||||
translations/es-ES/data/reusables/ssh/rsa-sha-1-connection-failure-criteria.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/support/help_resources.md,rendering error
|
||||
translations/es-ES/data/reusables/support/submit-a-ticket.md,broken liquid tags
|
||||
|
@ -1153,7 +1164,7 @@ translations/es-ES/data/reusables/user-settings/appearance-settings.md,rendering
|
|||
translations/es-ES/data/reusables/user-settings/developer_settings.md,rendering error
|
||||
translations/es-ES/data/reusables/user-settings/emails.md,rendering error
|
||||
translations/es-ES/data/reusables/user-settings/organizations.md,rendering error
|
||||
translations/es-ES/data/reusables/user-settings/password-authentication-deprecation.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/user-settings/password-authentication-deprecation.md,rendering error
|
||||
translations/es-ES/data/reusables/user-settings/personal_access_tokens.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/user-settings/removes-personal-access-tokens.md,broken liquid tags
|
||||
translations/es-ES/data/reusables/user-settings/repo-tab.md,rendering error
|
||||
|
|
|
|
@ -544,6 +544,7 @@ translations/ja-JP/content/authentication/securing-your-account-with-two-factor-
|
|||
translations/ja-JP/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md,broken liquid tags
|
||||
translations/ja-JP/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md,broken liquid tags
|
||||
translations/ja-JP/content/authentication/troubleshooting-ssh/error-key-already-in-use.md,broken liquid tags
|
||||
translations/ja-JP/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md,broken liquid tags
|
||||
translations/ja-JP/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md,broken liquid tags
|
||||
translations/ja-JP/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md,broken liquid tags
|
||||
translations/ja-JP/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md,broken liquid tags
|
||||
|
@ -605,8 +606,8 @@ translations/ja-JP/content/code-security/secret-scanning/about-secret-scanning.m
|
|||
translations/ja-JP/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md,rendering error
|
||||
translations/ja-JP/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md,rendering error
|
||||
translations/ja-JP/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md,rendering error
|
||||
translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md,broken liquid tags
|
||||
translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md,broken liquid tags
|
||||
translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md,rendering error
|
||||
translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md,rendering error
|
||||
translations/ja-JP/content/code-security/security-overview/about-the-security-overview.md,rendering error
|
||||
translations/ja-JP/content/code-security/security-overview/filtering-alerts-in-the-security-overview.md,rendering error
|
||||
translations/ja-JP/content/code-security/security-overview/viewing-the-security-overview.md,rendering error
|
||||
|
@ -1027,7 +1028,7 @@ translations/ja-JP/data/reusables/dependabot/default-dependencies-allow-ignore.m
|
|||
translations/ja-JP/data/reusables/dependabot/dependabot-alerts-filters.md,rendering error
|
||||
translations/ja-JP/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md,rendering error
|
||||
translations/ja-JP/data/reusables/dependabot/enterprise-enable-dependabot.md,rendering error
|
||||
translations/ja-JP/data/reusables/dependabot/supported-package-managers.md,broken liquid tags
|
||||
translations/ja-JP/data/reusables/dependabot/supported-package-managers.md,rendering error
|
||||
translations/ja-JP/data/reusables/desktop/get-an-account.md,rendering error
|
||||
translations/ja-JP/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md,broken liquid tags
|
||||
translations/ja-JP/data/reusables/discussions/navigate-to-repo-or-org.md,broken liquid tags
|
||||
|
|
|
|
@ -535,6 +535,7 @@ translations/pt-BR/content/authentication/securing-your-account-with-two-factor-
|
|||
translations/pt-BR/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md,broken liquid tags
|
||||
translations/pt-BR/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md,broken liquid tags
|
||||
translations/pt-BR/content/authentication/troubleshooting-ssh/error-key-already-in-use.md,broken liquid tags
|
||||
translations/pt-BR/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md,broken liquid tags
|
||||
translations/pt-BR/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md,broken liquid tags
|
||||
translations/pt-BR/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md,broken liquid tags
|
||||
translations/pt-BR/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md,broken liquid tags
|
||||
|
@ -1030,7 +1031,7 @@ translations/pt-BR/data/reusables/dependabot/beta-security-and-version-updates.m
|
|||
translations/pt-BR/data/reusables/dependabot/default-dependencies-allow-ignore.md,broken liquid tags
|
||||
translations/pt-BR/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md,rendering error
|
||||
translations/pt-BR/data/reusables/dependabot/enterprise-enable-dependabot.md,rendering error
|
||||
translations/pt-BR/data/reusables/dependabot/supported-package-managers.md,broken liquid tags
|
||||
translations/pt-BR/data/reusables/dependabot/supported-package-managers.md,rendering error
|
||||
translations/pt-BR/data/reusables/desktop/get-an-account.md,broken liquid tags
|
||||
translations/pt-BR/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md,broken liquid tags
|
||||
translations/pt-BR/data/reusables/discussions/navigate-to-repo-or-org.md,broken liquid tags
|
||||
|
|
|
|
@ -146,7 +146,7 @@ When you set your status, you can also let people know that you have limited ava
|
|||
|
||||
If you select the "Busy" option, when people @mention your username, assign you an issue or pull request, or request a pull request review from you, a note next to your username will show that you're busy. You will also be excluded from automatic review assignment for pull requests assigned to any teams you belong to. For more information, see "[Managing code review settings for your team](/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team)."
|
||||
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set your status** or, if you already have a status set, click your current status.
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set status** or, if you already have a status set, click your current status.
|
||||
![Button on profile to set your status](/assets/images/help/profile/set-status-on-profile.png)
|
||||
2. To add custom text to your status, click in the text field and type a status message.
|
||||
![Field to type a status message](/assets/images/help/profile/type-a-status-message.png)
|
||||
|
|
|
@ -51,7 +51,7 @@ To ensure that commits are attributed to you and appear in your contributions gr
|
|||
|
||||
{% note %}
|
||||
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is a seven-digit ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is an ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
|
|
|
@ -105,7 +105,8 @@ To use a {% data variables.product.pat_generic %} or SSH key to access resources
|
|||
|
||||
| Token type | Prefix | More information |
|
||||
| :- | :- | :- |
|
||||
| {% data variables.product.pat_generic_caps %} | `ghp_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)" |
|
||||
| {% data variables.product.pat_v1_caps %} | `ghp_` | {% ifversion pat-v2 %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-personal-access-token-classic)"{% else %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)"{% endif %} |{% ifversion pat-v2 %}
|
||||
| {% data variables.product.pat_v2_caps %} | `github_pat_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-fine-grained-personal-access-token)" |{% endif %}
|
||||
| OAuth access token | `gho_` | "[Authorizing {% data variables.product.prodname_oauth_apps %}](/developers/apps/authorizing-oauth-apps)" |
|
||||
| User-to-server token for a {% data variables.product.prodname_github_app %} | `ghu_` | "[Identifying and authorizing users for {% data variables.product.prodname_github_apps %}](/developers/apps/identifying-and-authorizing-users-for-github-apps)" |
|
||||
| Server-to-server token for a {% data variables.product.prodname_github_app %} | `ghs_` | "[Authenticating with {% data variables.product.prodname_github_apps %}](/developers/apps/authenticating-with-github-apps#authenticating-as-an-installation)" |
|
||||
|
|
|
@ -87,7 +87,7 @@ To sign commits using GPG and have those commits verified on {% data variables.p
|
|||
{% ifversion ssh-commit-verification %}
|
||||
## SSH commit signature verification
|
||||
|
||||
You can use SSH to sign commits with an SSH public key that you generate yourself. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
You can use SSH to sign commits with an SSH key that you generate yourself. For more information, see the [Git reference documentation](https://git-scm.com/docs/git-config#Documentation/git-config.txt-usersigningKey) for `user.Signingkey`. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
you can also upload that same key again for use as a signing key. There's no limit on the number of signing keys you can add to your account.
|
||||
|
||||
{% data variables.product.product_name %} uses [ssh_data](https://github.com/github/ssh_data), an open source Ruby library, to confirm that your locally signed commits and tags are cryptographically verifiable against a public key you have added to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.location.product_location %}{% endif %}.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: Recuperar frase secreta da chave SSH
|
||||
intro: 'Se você perder a frase secreta da chave SSH, poderá recuperá-la ou gerar uma nova, dependendo do sistema operacional usado.'
|
||||
title: Recovering your SSH key passphrase
|
||||
intro: 'If you''ve lost your SSH key passphrase, depending on the operating system you use, you may either recover it or you may need to generate a new SSH key passphrase.'
|
||||
redirect_from:
|
||||
- /articles/how-do-i-recover-my-passphrase
|
||||
- /articles/how-do-i-recover-my-ssh-key-passphrase
|
||||
|
@ -15,36 +15,30 @@ versions:
|
|||
topics:
|
||||
- SSH
|
||||
shortTitle: Recover SSH key passphrase
|
||||
ms.openlocfilehash: 28d768e81f3076898c23b2b1668314ae5573ec5c
|
||||
ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: pt-BR
|
||||
ms.lasthandoff: 09/10/2022
|
||||
ms.locfileid: '145083537'
|
||||
---
|
||||
{% mac %}
|
||||
|
||||
Se você [configurou a frase secreta do SSH com o conjunto de chaves do macOS](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain), talvez consiga recuperá-la.
|
||||
If you [configured your SSH passphrase with the macOS keychain](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain), you may be able to recover it.
|
||||
|
||||
1. No Localizador, procure o aplicativo **Acesso ao Conjunto de Chaves**.
|
||||
![Barra de pesquisa do Spotlight](/assets/images/help/setup/keychain-access.png)
|
||||
2. Em Acesso ao Conjunto de Chaves, procure **SSH**.
|
||||
3. Clique duas vezes na entrada da chave SSH para abrir uma nova caixa de diálogo.
|
||||
4. No canto inferior esquerdo, selecione **Mostrar senha**.
|
||||
![Caixa de diálogo Acesso ao conjunto de chaves](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. A senha de administrador será solicitada. Insira a senha na caixa de diálogo "Acesso às Chaves".
|
||||
6. A senha será exibida.
|
||||
1. In Finder, search for the **Keychain Access** app.
|
||||
![Spotlight Search bar](/assets/images/help/setup/keychain-access.png)
|
||||
2. In Keychain Access, search for **SSH**.
|
||||
3. Double click on the entry for your SSH key to open a new dialog box.
|
||||
4. In the lower-left corner, select **Show password**.
|
||||
![Keychain access dialog](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. You'll be prompted for your administrative password. Type it into the "Keychain Access" dialog box.
|
||||
6. Your password will be revealed.
|
||||
|
||||
{% endmac %}
|
||||
|
||||
{% windows %}
|
||||
|
||||
Se você perder a frase secreta da chave SSH, não haverá como recuperá-la. Você precisará [gerar um novo par de chaves SSH](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) ou [alternar para a clonagem HTTPS](/github/getting-started-with-github/managing-remote-repositories) para usar sua senha do GitHub.
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endwindows %}
|
||||
|
||||
{% linux %}
|
||||
|
||||
Se você perder a frase secreta da chave SSH, não haverá como recuperá-la. Você precisará [gerar um novo par de chaves SSH](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) ou [alternar para a clonagem HTTPS](/github/getting-started-with-github/about-remote-repositories/#cloning-with-https-urls) para usar sua senha do GitHub.
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endlinux %}
|
||||
|
|
|
@ -26,8 +26,20 @@ $ ssh -T -p 443 git@ssh.github.com
|
|||
> provide shell access.
|
||||
```
|
||||
|
||||
{% note %}
|
||||
|
||||
**Note**: The hostname for port 443 is `ssh.{% data variables.command_line.backticks %}`, not `{% data variables.command_line.backticks %}`.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
If that worked, great! If not, you may need to [follow our troubleshooting guide](/articles/error-permission-denied-publickey).
|
||||
|
||||
Now, to clone the repository, you can run the following command:
|
||||
|
||||
```
|
||||
$ git clone ssh://git@ssh.{% data variables.command_line.codeblock %}:443/YOUR-USERNAME/YOUR-REPOSITORY.git
|
||||
```
|
||||
|
||||
## Enabling SSH connections over HTTPS
|
||||
|
||||
If you are able to SSH into `git@ssh.{% data variables.command_line.backticks %}` over port 443, you can override your SSH settings to force any connection to {% data variables.location.product_location %} to run through that server and port.
|
||||
|
@ -48,3 +60,19 @@ $ ssh -T git@{% data variables.command_line.codeblock %}
|
|||
> Hi USERNAME! You've successfully authenticated, but GitHub does not
|
||||
> provide shell access.
|
||||
```
|
||||
|
||||
## Updating known hosts
|
||||
|
||||
The first time you interact with GitHub after switching to port 443, you may get a warning message
|
||||
that the host wasn't found in `known_hosts`, or that it was found by another name.
|
||||
|
||||
```ShellSession
|
||||
> The authenticity of host '[ssh.github.com]:443 ([140.82.112.36]:443)' can't be established.
|
||||
> ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
|
||||
> This host key is known by the following other names/addresses:
|
||||
> ~/.ssh/known_hosts:32: github.com
|
||||
> Are you sure you want to continue connecting (yes/no/[fingerprint])?
|
||||
```
|
||||
|
||||
It is safe to answer `yes` to this question, assuming that the SSH fingerprint matches
|
||||
one of GitHub's published fingerprints. For more information, see "[Github's SSH key fingerprints](/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints)."
|
||||
|
|
|
@ -14,6 +14,7 @@ children:
|
|||
- /managing-the-forking-policy-for-your-repository
|
||||
- /managing-pull-request-reviews-in-your-repository
|
||||
- /managing-the-commit-signoff-policy-for-your-repository
|
||||
- /managing-the-push-policy-for-your-repository
|
||||
- /managing-git-lfs-objects-in-archives-of-your-repository
|
||||
- /enabling-anonymous-git-read-access-for-a-repository
|
||||
- /about-email-notifications-for-pushes-to-your-repository
|
||||
|
|
|
@ -146,7 +146,7 @@ When you set your status, you can also let people know that you have limited ava
|
|||
|
||||
If you select the "Busy" option, when people @mention your username, assign you an issue or pull request, or request a pull request review from you, a note next to your username will show that you're busy. You will also be excluded from automatic review assignment for pull requests assigned to any teams you belong to. For more information, see "[Managing code review settings for your team](/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team)."
|
||||
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set your status** or, if you already have a status set, click your current status.
|
||||
1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set status** or, if you already have a status set, click your current status.
|
||||
![Button on profile to set your status](/assets/images/help/profile/set-status-on-profile.png)
|
||||
2. To add custom text to your status, click in the text field and type a status message.
|
||||
![Field to type a status message](/assets/images/help/profile/type-a-status-message.png)
|
||||
|
|
|
@ -51,7 +51,7 @@ To ensure that commits are attributed to you and appear in your contributions gr
|
|||
|
||||
{% note %}
|
||||
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is a seven-digit ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
**Note:** If you created your account on {% data variables.location.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is an ID number and your username in the form of <code>ID+USERNAME@users.noreply.github.com</code>. If you created your account on {% data variables.location.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code>USERNAME@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
|
|
|
@ -105,7 +105,8 @@ To use a {% data variables.product.pat_generic %} or SSH key to access resources
|
|||
|
||||
| Token type | Prefix | More information |
|
||||
| :- | :- | :- |
|
||||
| {% data variables.product.pat_generic_caps %} | `ghp_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)" |
|
||||
| {% data variables.product.pat_v1_caps %} | `ghp_` | {% ifversion pat-v2 %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-personal-access-token-classic)"{% else %}"[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token)"{% endif %} |{% ifversion pat-v2 %}
|
||||
| {% data variables.product.pat_v2_caps %} | `github_pat_` | "[Creating a {% data variables.product.pat_generic %}](/github/authenticating-to-github/creating-a-personal-access-token#creating-a-fine-grained-personal-access-token)" |{% endif %}
|
||||
| OAuth access token | `gho_` | "[Authorizing {% data variables.product.prodname_oauth_apps %}](/developers/apps/authorizing-oauth-apps)" |
|
||||
| User-to-server token for a {% data variables.product.prodname_github_app %} | `ghu_` | "[Identifying and authorizing users for {% data variables.product.prodname_github_apps %}](/developers/apps/identifying-and-authorizing-users-for-github-apps)" |
|
||||
| Server-to-server token for a {% data variables.product.prodname_github_app %} | `ghs_` | "[Authenticating with {% data variables.product.prodname_github_apps %}](/developers/apps/authenticating-with-github-apps#authenticating-as-an-installation)" |
|
||||
|
|
|
@ -87,7 +87,7 @@ To sign commits using GPG and have those commits verified on {% data variables.p
|
|||
{% ifversion ssh-commit-verification %}
|
||||
## SSH commit signature verification
|
||||
|
||||
You can use SSH to sign commits with an SSH public key that you generate yourself. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
You can use SSH to sign commits with an SSH key that you generate yourself. For more information, see the [Git reference documentation](https://git-scm.com/docs/git-config#Documentation/git-config.txt-usersigningKey) for `user.Signingkey`. If you already use an SSH key to authenticate with {% data variables.product.product_name %},
|
||||
you can also upload that same key again for use as a signing key. There's no limit on the number of signing keys you can add to your account.
|
||||
|
||||
{% data variables.product.product_name %} uses [ssh_data](https://github.com/github/ssh_data), an open source Ruby library, to confirm that your locally signed commits and tags are cryptographically verifiable against a public key you have added to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.location.product_location %}{% endif %}.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
title: 恢复 SSH 密钥密码
|
||||
intro: 如果您丢失 SSH 密钥密码,则根据您使用的操作系统,您可能可以恢复它,也可能需要生成新的 SSH 密钥密码。
|
||||
title: Recovering your SSH key passphrase
|
||||
intro: 'If you''ve lost your SSH key passphrase, depending on the operating system you use, you may either recover it or you may need to generate a new SSH key passphrase.'
|
||||
redirect_from:
|
||||
- /articles/how-do-i-recover-my-passphrase
|
||||
- /articles/how-do-i-recover-my-ssh-key-passphrase
|
||||
|
@ -15,36 +15,30 @@ versions:
|
|||
topics:
|
||||
- SSH
|
||||
shortTitle: Recover SSH key passphrase
|
||||
ms.openlocfilehash: 28d768e81f3076898c23b2b1668314ae5573ec5c
|
||||
ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d
|
||||
ms.translationtype: HT
|
||||
ms.contentlocale: zh-CN
|
||||
ms.lasthandoff: 09/10/2022
|
||||
ms.locfileid: '145084559'
|
||||
---
|
||||
{% mac %}
|
||||
|
||||
如果[使用 macOS 密钥链配置 SSH 密码](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain),则能够恢复它。
|
||||
If you [configured your SSH passphrase with the macOS keychain](/articles/working-with-ssh-key-passphrases#saving-your-passphrase-in-the-keychain), you may be able to recover it.
|
||||
|
||||
1. 在 Finder 中,搜索 Keychain Access 应用。
|
||||
![Spotlight 搜索栏](/assets/images/help/setup/keychain-access.png)
|
||||
2. 在 Keychain Access 中,搜索 SSH。
|
||||
3. 双击 SSH 密钥的条目以打开一个新对话框。
|
||||
4. 在左下角选择“显示密码”。
|
||||
![“Keychain Access”对话框](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. 系统将提示您输入管理密码。 在 "Keychain Access" 对话框中输入该密码。
|
||||
6. 此时将显示您的密码。
|
||||
1. In Finder, search for the **Keychain Access** app.
|
||||
![Spotlight Search bar](/assets/images/help/setup/keychain-access.png)
|
||||
2. In Keychain Access, search for **SSH**.
|
||||
3. Double click on the entry for your SSH key to open a new dialog box.
|
||||
4. In the lower-left corner, select **Show password**.
|
||||
![Keychain access dialog](/assets/images/help/setup/keychain_show_password_dialog.png)
|
||||
5. You'll be prompted for your administrative password. Type it into the "Keychain Access" dialog box.
|
||||
6. Your password will be revealed.
|
||||
|
||||
{% endmac %}
|
||||
|
||||
{% windows %}
|
||||
|
||||
如果您丢失 SSH 密钥密码,则无法进行恢复。 需要[生成全新的 SSH 密钥对](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)或[切换到 HTTPS 克隆](/github/getting-started-with-github/managing-remote-repositories),以便能够改用 GitHub 密码。
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endwindows %}
|
||||
|
||||
{% linux %}
|
||||
|
||||
如果您丢失 SSH 密钥密码,则无法进行恢复。 需要[生成全新的 SSH 密钥对](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)或[切换到 HTTPS 克隆](/github/getting-started-with-github/about-remote-repositories/#cloning-with-https-urls),以便能够改用 GitHub 密码。
|
||||
If you lose your SSH key passphrase, there's no way to recover it. You'll need to [generate a brand new SSH keypair](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) or [switch to HTTPS cloning](/github/getting-started-with-github/about-remote-repositories#cloning-with-https-urls) so you can use a {% data variables.product.pat_generic %} instead.
|
||||
|
||||
{% endlinux %}
|
||||
|
|
|
@ -26,8 +26,20 @@ $ ssh -T -p 443 git@ssh.github.com
|
|||
> provide shell access.
|
||||
```
|
||||
|
||||
{% note %}
|
||||
|
||||
**Note**: The hostname for port 443 is `ssh.{% data variables.command_line.backticks %}`, not `{% data variables.command_line.backticks %}`.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
If that worked, great! If not, you may need to [follow our troubleshooting guide](/articles/error-permission-denied-publickey).
|
||||
|
||||
Now, to clone the repository, you can run the following command:
|
||||
|
||||
```
|
||||
$ git clone ssh://git@ssh.{% data variables.command_line.codeblock %}:443/YOUR-USERNAME/YOUR-REPOSITORY.git
|
||||
```
|
||||
|
||||
## Enabling SSH connections over HTTPS
|
||||
|
||||
If you are able to SSH into `git@ssh.{% data variables.command_line.backticks %}` over port 443, you can override your SSH settings to force any connection to {% data variables.location.product_location %} to run through that server and port.
|
||||
|
@ -48,3 +60,19 @@ $ ssh -T git@{% data variables.command_line.codeblock %}
|
|||
> Hi USERNAME! You've successfully authenticated, but GitHub does not
|
||||
> provide shell access.
|
||||
```
|
||||
|
||||
## Updating known hosts
|
||||
|
||||
The first time you interact with GitHub after switching to port 443, you may get a warning message
|
||||
that the host wasn't found in `known_hosts`, or that it was found by another name.
|
||||
|
||||
```ShellSession
|
||||
> The authenticity of host '[ssh.github.com]:443 ([140.82.112.36]:443)' can't be established.
|
||||
> ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
|
||||
> This host key is known by the following other names/addresses:
|
||||
> ~/.ssh/known_hosts:32: github.com
|
||||
> Are you sure you want to continue connecting (yes/no/[fingerprint])?
|
||||
```
|
||||
|
||||
It is safe to answer `yes` to this question, assuming that the SSH fingerprint matches
|
||||
one of GitHub's published fingerprints. For more information, see "[Github's SSH key fingerprints](/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints)."
|
||||
|
|
|
@ -14,6 +14,7 @@ children:
|
|||
- /managing-the-forking-policy-for-your-repository
|
||||
- /managing-pull-request-reviews-in-your-repository
|
||||
- /managing-the-commit-signoff-policy-for-your-repository
|
||||
- /managing-the-push-policy-for-your-repository
|
||||
- /managing-git-lfs-objects-in-archives-of-your-repository
|
||||
- /enabling-anonymous-git-read-access-for-a-repository
|
||||
- /about-email-notifications-for-pushes-to-your-repository
|
||||
|
|
Загрузка…
Ссылка в новой задаче