diff --git a/.github/branch_protection_settings/main.json b/.github/branch_protection_settings/main.json index 39c2b0491e00..29e0c828d766 100644 --- a/.github/branch_protection_settings/main.json +++ b/.github/branch_protection_settings/main.json @@ -41,7 +41,10 @@ "workflows", "lint-code", "secret-scanning", - "pagelist" + "pagelist", + "docs-internal-docker-image / docs-internal-docker-image", + "docs-internal-docker-security / docs-internal-docker-security", + "docs-internal-moda-config-bundle / docs-internal-moda-config-bundle" ], "contexts_url": "https://api.github.com/repos/github/docs-internal/branches/main/protection/required_status_checks/contexts", "checks": [ @@ -85,7 +88,19 @@ { "context": "workflows", "app_id": 15368 }, { "context": "lint-code", "app_id": 15368 }, { "context": "secret-scanning", "app_id": 15368 }, - { "context": "pagelist", "app_id": 15368 } + { "context": "pagelist", "app_id": 15368 }, + { + "context": "docs-internal-docker-image / docs-internal-docker-image", + "app_id": 15368 + }, + { + "context": "docs-internal-docker-security / docs-internal-docker-security", + "app_id": 15368 + }, + { + "context": "docs-internal-moda-config-bundle / docs-internal-moda-config-bundle", + "app_id": 15368 + } ] }, "restrictions": { diff --git a/.github/workflows/azure-prod-build-deploy.yml b/.github/workflows/azure-prod-build-deploy.yml index 7e5e27bea77e..9a09b5f18599 100644 --- a/.github/workflows/azure-prod-build-deploy.yml +++ b/.github/workflows/azure-prod-build-deploy.yml @@ -5,9 +5,6 @@ name: Azure Production - Build and Deploy # **Who does it impact**: All contributors. on: - push: - branches: - - main workflow_dispatch: permissions: diff --git a/.github/workflows/codeowners-legal.yml b/.github/workflows/codeowners-legal.yml index ca9edb14b8b0..e783f5ad4321 100644 --- a/.github/workflows/codeowners-legal.yml +++ b/.github/workflows/codeowners-legal.yml @@ -20,6 +20,7 @@ on: permissions: contents: read pull-requests: write + repository-projects: read jobs: codeowners-legal: @@ -33,7 +34,7 @@ jobs: uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 with: # Picking this number is a "best guess". If we make it too large, - # the checkout will take potentially unnecessariily long. + # the checkout will take potentially unnecessarily long. # This reduces the chance that tj-actions/changed-files has to # fetch deeper history. But if it needs to, it will. fetch-depth: 10 @@ -58,19 +59,14 @@ jobs: CHANGED_FILE_PATHS: ${{ steps.changed-files.outputs.all_changed_files }} CONTENT_TYPE: 'rai' - - name: Add Legal team as a reviewer + - name: Check for reviewers-legal label, add if missing and request review if: steps.checkContentType.outputs.containsContentType == 'true' env: - # The GH CLI uses a slightly different env name for - # the token than the GITHUB_TOKEN used by actions - GH_TOKEN: ${{ secrets.DOCS_BOT_PAT_WRITEORG_PROJECT }} + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} PR: ${{ github.event.pull_request.html_url }} run: | - has_reviewer=$( - gh pr view $PR --json reviews | - jq 'any(.reviews[]; select(length > 0))' - ) - if ! $has_reviewer - then + labels=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name') + if ! echo "$labels" | grep -q 'reviewers-legal'; then gh pr edit $PR --add-reviewer github/legal-product + gh pr edit $PR --add-label reviewers-legal fi diff --git a/.github/workflows/delete-orphan-translation-files.yml b/.github/workflows/delete-orphan-translation-files.yml index da1e7cec5edb..350f9992cff6 100644 --- a/.github/workflows/delete-orphan-translation-files.yml +++ b/.github/workflows/delete-orphan-translation-files.yml @@ -129,7 +129,8 @@ jobs: --title "Delete orphan files ($current_daystamp)" \ --body '👋 humans. This PR was generated from docs-internal/.github/workflows/delete-orphan-translation-files.yml. ' \ - --repo "${{ matrix.language_repo }}" + --repo "${{ matrix.language_repo }}" \ + --head=$branch_name echo "Merge created PR..." retry_command gh pr merge --merge --auto --delete-branch "$branch_name" diff --git a/.github/workflows/generate-code-scanning-query-lists.yml b/.github/workflows/generate-code-scanning-query-lists.yml index 505550449ffc..7fcbc2bc31c9 100644 --- a/.github/workflows/generate-code-scanning-query-lists.yml +++ b/.github/workflows/generate-code-scanning-query-lists.yml @@ -146,7 +146,7 @@ jobs: git add data/reusables/code-scanning/codeql-query-tables git commit -m "Update CodeQL query tables" - git push origin $branchname + git push -u origin $branchname echo "Creating pull request..." gh pr create \ diff --git a/.github/workflows/purge-fastly.yml b/.github/workflows/purge-fastly.yml index b0415c6c44bd..aa02af6bf3e8 100644 --- a/.github/workflows/purge-fastly.yml +++ b/.github/workflows/purge-fastly.yml @@ -5,6 +5,7 @@ name: Purge Fastly # **Who does it impact**: Writers and engineers. on: + deployment_status: workflow_dispatch: inputs: nuke_all: @@ -16,9 +17,6 @@ on: description: "Comma separated languages. E.g. 'en,ja, es' (defaults to all)" required: false default: '' - push: - branches: - - main permissions: contents: read @@ -29,11 +27,12 @@ env: jobs: send-purges: + # Run when workflow_dispatch is the event (manual) or when deployment_status is the event (automatic) and it's a successful production deploy if: >- ${{ github.repository == 'github/docs-internal' && - (github.event_name != 'workflow_run' || - github.event.workflow_run.conclusion == 'success') + (github.event_name != 'deployment_status' || + github.event.deployment_status.state == 'success' && github.event.deployment_status.environment == 'production') }} runs-on: ubuntu-latest steps: diff --git a/.github/workflows/sync-audit-logs.yml b/.github/workflows/sync-audit-logs.yml index f0226617d16b..8ae0705622e7 100644 --- a/.github/workflows/sync-audit-logs.yml +++ b/.github/workflows/sync-audit-logs.yml @@ -33,7 +33,7 @@ jobs: # need to use a token from a user with access to github/audit-log-allowlists for this step GITHUB_TOKEN: ${{ secrets.DOCS_BOT_PAT_WRITEORG_PROJECT }} run: | - npm run audit-log-sync + npm run sync-audit-log - name: Get the audit-log-allowlists SHA being synced id: audit-log-allowlists @@ -54,7 +54,11 @@ jobs: # If nothing to commit, exit now. It's fine. No orphans. changes=$(git diff --name-only | wc -l) untracked=$(git status --untracked-files --short | wc -l) - if [[ $changes -eq 0 ]] && [[ $untracked -eq 0 ]]; then + filesChanged=$(git diff --name-only) + # There will always be at least one file changed: + # src/audit-logs/lib/config.json + # If the config file is the only file changed, exit. + if [[ $changes -eq 1 ]] && [[ $untracked -eq 1 ]] && [[ $filesChanged == *lib/config.json ]]; then echo "There are no changes to commit or untracked files. Exiting..." exit 0 fi @@ -83,7 +87,8 @@ jobs: If CI does not pass or other problems arise, contact #docs-engineering on slack.' \ --repo github/docs-internal \ - --label audit-log-pipeline + --label audit-log-pipeline \ + --head=$branchname # can't approve your own PR, approve with Actions unset GITHUB_TOKEN @@ -93,7 +98,7 @@ jobs: # Actions can't merge the PR so back to docs-bot to merge the PR unset GITHUB_TOKEN gh auth login --with-token <<< "${{ secrets.DOCS_BOT_PAT_WORKFLOW_READORG }}" - gh pr merge --auto --delete-branch + gh pr merge --auto - uses: ./.github/actions/slack-alert if: ${{ failure() && github.event_name != 'workflow_dispatch' }} diff --git a/.github/workflows/sync-codeql-cli.yml b/.github/workflows/sync-codeql-cli.yml index e42d6207406c..e9698bb7ae3a 100644 --- a/.github/workflows/sync-codeql-cli.yml +++ b/.github/workflows/sync-codeql-cli.yml @@ -91,13 +91,13 @@ jobs: branchname=codeql-cli-update-${{ steps.semmle-code.outputs.OPENAPI_COMMIT_SHA }} branchCheckout=$(git checkout -b $branchname) - if [[! $? -eq 0 ]]; then + if [[ ! $? -eq 0 ]]; then echo "Branch $branchname already exists in `github/docs-internal`. Exiting..." exit 0 fi git add . git commit -m "Update CodeQL CLI data" - git push origin $branchname + git push -u origin $branchname echo "Creating pull request..." gh pr create \ @@ -109,3 +109,9 @@ jobs: If CI does not pass or other problems arise, contact #docs-engineering on slack.' \ --repo github/docs-internal \ --label "codeql-cli-pipeline,skip FR board,ready-for-doc-review" + + - uses: ./.github/actions/slack-alert + if: ${{ failure() && github.event_name != 'workflow_dispatch' }} + with: + slack_channel_id: ${{ secrets.DOCS_ALERTS_SLACK_CHANNEL_ID }} + slack_token: ${{ secrets.SLACK_DOCS_BOT_TOKEN }} diff --git a/.github/workflows/sync-graphql.yml b/.github/workflows/sync-graphql.yml index c8acb219c641..b0d964b8d03d 100644 --- a/.github/workflows/sync-graphql.yml +++ b/.github/workflows/sync-graphql.yml @@ -1,4 +1,4 @@ -name: Update GraphQL files +name: Sync GraphQL schema # **What it does**: This updates our GraphQL schemas. # **Why we have it**: We want our GraphQL docs up to date. @@ -25,7 +25,7 @@ jobs: env: # need to use a token from a user with access to github/github for this step GITHUB_TOKEN: ${{ secrets.DOCS_BOT_PAT_WRITEORG_PROJECT }} - run: npm run graphql-sync + run: npm run sync-graphql - name: Create pull request id: create-pull-request uses: peter-evans/create-pull-request@6cd32fd93684475c31847837f87bb135d40a2b79 # pin @v7.0.3 diff --git a/.github/workflows/sync-openapi.yml b/.github/workflows/sync-openapi.yml index 7e28c4294484..339fb7eac14e 100644 --- a/.github/workflows/sync-openapi.yml +++ b/.github/workflows/sync-openapi.yml @@ -101,7 +101,8 @@ jobs: If CI does not pass or other problems arise, contact #docs-engineering on slack.' \ --repo github/docs-internal \ - --label github-openapi-bot + --label github-openapi-bot \ + --head=$branchname \ - uses: ./.github/actions/slack-alert if: ${{ failure() && github.event_name != 'workflow_dispatch' }} diff --git a/.github/workflows/sync-secret-scanning.yml b/.github/workflows/sync-secret-scanning.yml index 8a1ef68e338a..9d90f9b9606a 100644 --- a/.github/workflows/sync-secret-scanning.yml +++ b/.github/workflows/sync-secret-scanning.yml @@ -76,7 +76,8 @@ jobs: If CI does not pass or other problems arise, contact #docs-engineering on Slack.' \ --repo github/docs-internal \ - --label secret-scanning-pipeline,'skip FR board',ready-for-doc-review + --label secret-scanning-pipeline,'skip FR board',ready-for-doc-review \ + --head=$branchname - uses: ./.github/actions/slack-alert if: ${{ failure() && github.event_name != 'workflow_dispatch' }} diff --git a/.github/workflows/sync-staging-repo-files.yml b/.github/workflows/sync-staging-repo-files.yml new file mode 100644 index 000000000000..736d8cf07b3c --- /dev/null +++ b/.github/workflows/sync-staging-repo-files.yml @@ -0,0 +1,194 @@ +# **What it does**: Synchronizes each of the github/docs-staging-X repositories with the latest build scripts, workflows, and other files from src/deployments/staging. +# **Why we have it**: We want to centralize build config in src/deployments/staging for use across multiple repos. +# **Who does it impact**: Docs engineering, and potentially content writers. + +name: Sync Staging Repo Files + +on: + workflow_dispatch: + push: + branches: [main] + paths: + - 'src/deployments/staging/build-scripts/*.sh' + - 'src/deployments/staging/.github/**' + - 'src/deployments/staging/Dockerfile' + - 'src/deployments/staging/.env.example' + - 'src/deployments/staging/README.staging.md' + - 'src/deployments/staging/ownership.yaml' + - 'src/deployments/staging/config/**' + +permissions: + contents: write + +jobs: + # Determine how many staging repos we have and generate a matrix with repo and index + generate-matrix: + if: github.repository == 'github/docs-internal' + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + steps: + - name: Checkout source repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + with: + fetch-depth: 1 # Only need latest commit for config.json + + - name: Read configuration + id: read-config + run: | + sudo apt-get update && sudo apt-get install -y jq + NUMBER_OF_REPOS=$(jq '.number_of_staging_repos' src/deployments/staging/config.json) + if ! [[ "$NUMBER_OF_REPOS" =~ ^[0-9]+$ ]]; then + echo "Invalid number_of_staging_repos in config.json: $NUMBER_OF_REPOS" + exit 1 + fi + echo "number_of_repos=$NUMBER_OF_REPOS" >> $GITHUB_OUTPUT + + - name: Generate repository list with indices + id: generate-repos + run: | + NUMBER_OF_REPOS=${{ steps.read-config.outputs.number_of_repos }} + # Since we use 0-based index e.g. docs-staging-0, we need to subtract 1 + END=$((NUMBER_OF_REPOS - 1)) + repos=() + for i in $(seq 0 $END); do + repos+=("{\"repo\": \"github/docs-staging-$i\", \"index\": $i}") + done + json_repos=$(printf '%s\n' "${repos[@]}" | jq -s -c .) + echo "repos=$json_repos" >> $GITHUB_OUTPUT + + - name: Set matrix + id: set-matrix + run: | + echo "matrix={\"include\": $REPOS}" >> $GITHUB_OUTPUT + env: + REPOS: ${{ steps.generate-repos.outputs.repos }} + + - uses: ./.github/actions/slack-alert + if: ${{ failure() && github.event_name != 'workflow_dispatch' }} + with: + slack_channel_id: ${{ secrets.DOCS_ALERTS_SLACK_CHANNEL_ID }} + slack_token: ${{ secrets.SLACK_DOCS_BOT_TOKEN }} + + sync: + if: github.repository == 'github/docs-internal' + needs: generate-matrix + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: ${{ fromJson(needs.generate-matrix.outputs.matrix) }} + steps: + - name: Checkout source repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + with: + # Only need latest commits to sync with + fetch-depth: 2 + + - name: Checkout target repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + with: + repository: ${{ matrix.repo }} + token: ${{ secrets.DOCS_BOT_PAT_WORKFLOW }} + path: target_repo + fetch-depth: 2 + + - name: Synchronize files to target repo + env: + INDEX: ${{ matrix.index }} + run: | + # Create necessary directories if they DNE + mkdir -p target_repo/build-scripts + mkdir -p target_repo/.github/workflows + mkdir -p target_repo/config + + # Copy build scripts + cp src/deployments/staging/build-scripts/*.sh target_repo/build-scripts/ || true + + # Copy .github directory + cp -r src/deployments/staging/.github target_repo/ + + # Copy config files + cp -r src/deployments/staging/config/* target_repo/config/ || true + + # Overwrite Dockerfile + cp src/deployments/staging/Dockerfile target_repo/Dockerfile + + # Conditional copy for .env if not present + if [ ! -f target_repo/.env ]; then + cp src/deployments/staging/.env.example target_repo/.env + fi + + # Only copy README.md for non-review servers e.g. index >= 2 + if [ "$INDEX" -ge 2 ]; then + cp src/deployments/staging/README.staging.md target_repo/README.md + fi + + # Copy ownership.yaml + cp src/deployments/staging/ownership.yaml target_repo/ownership.yaml + + - name: Install jq + run: sudo apt-get update && sudo apt-get install -y jq + + - name: Replace template variables + run: | + # Determine which values to use based on the index + INDEX=${{ matrix.index }} + + if [ "$INDEX" -eq 0 ]; then + DOMAIN=$(jq -r '.server_domain_name.internal' src/deployments/staging/config.json) + LOADBALANCER=$(jq -r '.load_balancer_type.internal' src/deployments/staging/config.json) + elif [ "$INDEX" -eq 1 ]; then + DOMAIN=$(jq -r '.server_domain_name.external' src/deployments/staging/config.json) + LOADBALANCER=$(jq -r '.load_balancer_type.external' src/deployments/staging/config.json) + else + DOMAIN=$(jq -r '.server_domain_name["docs-staging-x"]' src/deployments/staging/config.json) + LOADBALANCER=$(jq -r '.load_balancer_type.["docs-staging-x"]' src/deployments/staging/config.json) + + # Replace {{x}} in the domain variable with the current index + DOMAIN=$(echo "$DOMAIN" | sed "s/{{x}}/$INDEX/g") + fi + + # Perform replacements in target_repo files + # Replace the server_domain_name and load_balancer_type + find target_repo -type f -exec sed -i "s|{{server_domain_name}}|$DOMAIN|g" {} + + find target_repo -type f -exec sed -i "s|{{load_balancer_type}}|$LOADBALANCER|g" {} + + + # If any files still contain {{x}}, replace them with the current index + find target_repo -type f -exec sed -i "s/{{x}}/$INDEX/g" {} + + + - name: Commit Changes to new branch + id: commit_changes + run: | + BRANCH_NAME=sync-staging-files-${{ github.run_id }} + cd target_repo + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git checkout -b $BRANCH_NAME + git add . + if ! git diff --cached --quiet; then + git commit -m "Synchronize files from source repository with docs-staging-${{ matrix.index }}" + git push origin $BRANCH_NAME + fi + echo "BRANCH_NAME=${BRANCH_NAME}" >> $GITHUB_OUTPUT + + # We want to create a PR instead of committing directly in order to trigger a deployment + - name: Create Pull Request + id: create_pr + env: + GH_TOKEN: ${{ secrets.DOCS_BOT_PAT_READPUBLICKEY }} + run: | + cd target_repo + PR_URL=$(gh pr create \ + --title "Sync files from docs-internal" \ + --body "This PR synchronized the files of this repo with the source of truth files in doc-internal. The PR should automatically merge, if it doesn't please fix files in docs-internal so that the fix is applied to every docs-staging-x repo." \ + --base main \ + --head ${{ steps.commit_changes.outputs.BRANCH_NAME }} \ + ) + # Enable auto-merge on PR + gh pr merge $PR_URL --auto --squash + + - uses: ./.github/actions/slack-alert + if: ${{ failure() && github.event_name != 'workflow_dispatch' }} + with: + slack_channel_id: ${{ secrets.DOCS_ALERTS_SLACK_CHANNEL_ID }} + slack_token: ${{ secrets.SLACK_DOCS_BOT_TOKEN }} diff --git a/.github/workflows/update-docs-staging-x-repo.yml b/.github/workflows/update-docs-staging-x-repo.yml new file mode 100644 index 000000000000..352560d94e2d --- /dev/null +++ b/.github/workflows/update-docs-staging-x-repo.yml @@ -0,0 +1,126 @@ +# **What it does**: Triggers a repo disaptch event when pushing to a `docs-staging-x` branch +# or when a PR is labeled with `docs-staging-x`. The repo dispatch updates the corresponding +# docs-staging-x repo with the latest commit SHA, which triggers a deployment. +# +# Note: This does not work for docs-staging-{0/1} (review servers) updates to those are +# handled in the `update-review-servers-on-code-push.yml` workflow. +# +# **Why we have it**: Makes staging deployments easy +# **Who does it impact**: Anyone trying to deploy a staging branch, both Docs Content and Docs Engineering + +name: Update docs-staging-x + +on: + push: + branches: + - 'docs-staging-[0-9]*' + pull_request: + types: [labeled] + +permissions: + contents: write + +jobs: + dispatch-sha: + if: github.repository == 'github/docs-internal' + runs-on: ubuntu-latest + + steps: + # Needed because we call a composite action (Slack alert) + - name: Checkout source repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + with: + fetch-depth: 1 # Only need latest commit + + - name: Determine target staging repo + id: determine_repo + run: | + # Determine the event type + EVENT_TYPE="${{ github.event_name }}" + + SHOULD_DISPATCH="false" + if [ "$EVENT_TYPE" = "push" ]; then + # Triggered by a push event + BRANCH_NAME=${GITHUB_REF#refs/heads/} + echo "Triggered by push event on branch: $BRANCH_NAME" + + # Extract the staging number from branch name + if [[ "$BRANCH_NAME" =~ ^docs-staging-([0-9]+)$ ]]; then + STAGING_NUMBER="${BASH_REMATCH[1]}" + else + echo "Branch name does not match the required pattern docs-staging-X." + exit 1 + fi + + # Get the commit SHA from the push event + COMMIT_SHA="${GITHUB_SHA}" + + elif [ "$EVENT_TYPE" = "pull_request" ]; then + # Triggered by a PR labeled event + LABEL_NAME="${{ github.event.label.name }}" + echo "Triggered by PR labeled event with label: $LABEL_NAME" + + if [[ "$LABEL_NAME" =~ ^docs-staging-([0-9]+)$ ]]; then + STAGING_NUMBER="${BASH_REMATCH[1]}" + else + echo "Label does not match the required pattern docs-staging-X." + # Do not dispatch if it doesn't match + echo "should_dispatch=false" >> $GITHUB_OUTPUT + exit 0 + fi + + # Get the commit SHA from the pull request head + COMMIT_SHA="${{ github.event.pull_request.head.sha }}" + + # Update the docs-staging-x branch to the latest SHA from the PR branch + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git checkout docs-staging-$STAGING_NUMBER || { echo "Failed to checkout docs-staging-$STAGING_NUMBER"; exit 1; } + git reset --hard $COMMIT_SHA || { echo "Git reset failed"; exit 1; } + git push origin docs-staging-$STAGING_NUMBER --force || { echo "Git push failed"; exit 1; } + + else + echo "Event type $EVENT_TYPE not supported." + echo "should_dispatch=false" >> $GITHUB_OUTPUT + exit 0 + fi + + echo "Staging Number: $STAGING_NUMBER" + + # Check if staging number is 0 or 1 + if [ "$STAGING_NUMBER" = "0" ] || [ "$STAGING_NUMBER" = "1" ]; then + echo "Staging number $STAGING_NUMBER is reserved." + echo "Review server repos are handled in the \`update-review-servers-on-code-push.yml\` repository." + echo "should_dispatch=false" >> $GITHUB_OUTPUT + exit 0 + fi + + TARGET_REPO="docs-staging-$STAGING_NUMBER" + echo "Target Repository: $TARGET_REPO" + SHOULD_DISPATCH="true" + + # Set outputs + echo "target_repo=$TARGET_REPO" >> $GITHUB_OUTPUT + echo "commit_sha=$COMMIT_SHA" >> $GITHUB_OUTPUT + echo "should_dispatch=$SHOULD_DISPATCH" >> $GITHUB_OUTPUT + + - name: Dispatch repository dispatch event to staging repo + if: steps.determine_repo.outputs.should_dispatch == 'true' + env: + REPO_DISPATCH_TOKEN: ${{ secrets.DOCS_BOT_PAT_WORKFLOW }} + TARGET_OWNER: github + TARGET_REPO: ${{ steps.determine_repo.outputs.target_repo }} + EVENT_TYPE: update-sha + SHA: ${{ steps.determine_repo.outputs.commit_sha }} + run: | + curl -X POST \ + -H "Accept: application/vnd.github.v3+json" \ + -H "Authorization: token $REPO_DISPATCH_TOKEN" \ + https://api.github.com/repos/$TARGET_OWNER/$TARGET_REPO/dispatches \ + -d "{\"event_type\":\"$EVENT_TYPE\",\"client_payload\":{\"SHA\":\"$SHA\"}}" + + - uses: ./.github/actions/slack-alert + if: ${{ failure() && github.event_name != 'workflow_dispatch' }} + with: + slack_channel_id: ${{ secrets.DOCS_ALERTS_SLACK_CHANNEL_ID }} + slack_token: ${{ secrets.SLACK_DOCS_BOT_TOKEN }} diff --git a/.github/workflows/update-review-servers-on-code-push.yml b/.github/workflows/update-review-servers-on-code-push.yml new file mode 100644 index 000000000000..ff2032eddc1b --- /dev/null +++ b/.github/workflows/update-review-servers-on-code-push.yml @@ -0,0 +1,67 @@ +# **What it does**: Triggers a repo dispatch event when pushing a code change to `main` +# dispatches the latest SHA to both review server repos, `docs-staging-0` and `docs-staging-1` +# +# Note: We only dispatch on code changes to prevent unnecessary deployments since content changes +# won't affect the review servers. +# +# **Why we have it**: Keeps the review servers up-to-date with the latest code changes +# **Who does it impact**: Docs Content and Docs Engineering + +name: Update review servers on code push + +on: + push: + branches: + - main + paths: + - 'src/**' + - 'package.json' + - 'tsconfig.json' + - 'next.config.js' + +permissions: + contents: read + +jobs: + dispatch-sha: + if: github.repository == 'github/docs-internal' + runs-on: ubuntu-latest + strategy: + matrix: + target_repo: [docs-staging-0, docs-staging-1] + + steps: + # Needed because we call a composite action (Slack alert) + - name: Checkout source repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + with: + fetch-depth: 1 # Only need latest commit + + - name: Determine commit SHA and dispatch condition + id: determine_repo + run: | + echo "commit_sha=${GITHUB_SHA}" >> $GITHUB_OUTPUT + # Since this workflow only runs when code changes occur (due to path filters), + # we can always set should_dispatch to true. + echo "should_dispatch=true" >> $GITHUB_OUTPUT + + - name: Dispatch repository dispatch event to staging repos + if: steps.determine_repo.outputs.should_dispatch == 'true' + env: + REPO_DISPATCH_TOKEN: ${{ secrets.DOCS_BOT_PAT_WORKFLOW }} + TARGET_OWNER: github + TARGET_REPO: ${{ matrix.target_repo }} + EVENT_TYPE: update-sha + SHA: ${{ steps.determine_repo.outputs.commit_sha }} + run: | + curl -X POST \ + -H "Accept: application/vnd.github.v3+json" \ + -H "Authorization: token $REPO_DISPATCH_TOKEN" \ + https://api.github.com/repos/$TARGET_OWNER/$TARGET_REPO/dispatches \ + -d "{\"event_type\":\"$EVENT_TYPE\",\"client_payload\":{\"SHA\":\"$SHA\"}}" + + - uses: ./.github/actions/slack-alert + if: ${{ failure() && github.event_name != 'workflow_dispatch' }} + with: + slack_channel_id: ${{ secrets.DOCS_ALERTS_SLACK_CHANNEL_ID }} + slack_token: ${{ secrets.SLACK_DOCS_BOT_TOKEN }} diff --git a/Dockerfile b/Dockerfile index ca3381d9c512..d4ce7e2c8793 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,11 +5,23 @@ # -------------------------------------------------------------------------------- # BASE IMAGE # -------------------------------------------------------------------------------- -# To update the sha, run `docker pull node:$VERSION-alpine` -# look for something like: `Digest: sha256:0123456789abcdef` -FROM node:22-alpine@sha256:c13b26e7e602ef2f1074aef304ce6e9b7dd284c419b35d89fcf3cc8e44a8def9 AS base +# To update the sha: +# https://github.com/github/gh-base-image/pkgs/container/gh-base-image%2Fgh-base-noble +FROM ghcr.io/github/gh-base-image/gh-base-noble:20250108-185521-gcd4825276 AS base + +# Install git for cloning docs-early-access & translations repos +# Install curl for determining the early access branch +RUN apt-get -qq update && apt-get -qq install --no-install-recommends git curl + +# Install Node.js latest LTS +# https://github.com/nodejs/release#release-schedule +# Ubuntu's apt-get install nodejs is _very_ outdated +RUN curl -sL https://deb.nodesource.com/setup_22.x | bash - +RUN apt-get install -y nodejs +RUN node --version # This directory is owned by the node user +RUN useradd -ms /bin/bash node ARG APP_HOME=/home/node/app RUN mkdir -p $APP_HOME && chown -R node:node $APP_HOME WORKDIR $APP_HOME @@ -17,10 +29,6 @@ WORKDIR $APP_HOME # Switch to root to ensure we have permissions to copy, chmod, and install USER root -# Install git for cloning docs-early-access & translations repos -# Install curl for determining the early access branch -RUN apk add --no-cache git curl - # Copy in build scripts COPY src/deployments/production/build-scripts/*.sh ./build-scripts/ @@ -39,12 +47,12 @@ COPY data ./data # We use --mount-type=secret to avoid the secret being copied into the image layers for security # The secret passed via --secret can only be used in this RUN command RUN --mount=type=secret,id=DOCS_BOT_PAT_READPUBLICKEY \ - # We don't cache because Docker can't know if we need to fetch new content from remote repos - echo "Don't cache this step by printing date: $(date)" && \ - . ./build-scripts/fetch-repos.sh + # We don't cache because Docker can't know if we need to fetch new content from remote repos + echo "Don't cache this step by printing date: $(date)" && \ + . ./build-scripts/fetch-repos.sh # Give node user access to the copied content since we cloned as root -RUN chown -R node:node $APP_HOME/content +RUN chown -R node:node $APP_HOME/content RUN chown -R node:node $APP_HOME/assets RUN chown -R node:node $APP_HOME/data # Give node user access to translations repos @@ -105,7 +113,7 @@ RUN npm run precompute-pageinfo -- --max-versions 2 RUN npm prune --production # -------------------------------------------------------------------------------- -# PRODUCTION IMAGE +# PRODUCTION IMAGE # -------------------------------------------------------------------------------- FROM base AS production @@ -140,7 +148,7 @@ COPY --chown=node:node --from=builder $APP_HOME/next.config.js ./ COPY --chown=node:node --from=builder $APP_HOME/tsconfig.json ./ # - - - -# Environment variables are set in the Moda +# Environment variables are set in the Moda # configuration: config/moda/configuration/*/env.yaml # - - - diff --git a/LICENSE-CODE b/LICENSE-CODE index fce94e6f0dd5..f3b5f7eda9e6 100644 --- a/LICENSE-CODE +++ b/LICENSE-CODE @@ -1,6 +1,6 @@ MIT License -Copyright 2024 GitHub +Copyright 2025 GitHub Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 69090a601896..bd02c836ac79 100644 --- a/README.md +++ b/README.md @@ -9,13 +9,13 @@ Use the table of contents icon Table of contents icon diff --git a/assets/images/help/models/model-playground-code-tab.png b/assets/images/help/models/model-playground-code-tab.png new file mode 100644 index 000000000000..f63e8832cd2e Binary files /dev/null and b/assets/images/help/models/model-playground-code-tab.png differ diff --git a/assets/images/help/repository/headings-toc.png b/assets/images/help/repository/headings-toc.png index a1f27da4b4ce..8937b2aff0f5 100644 Binary files a/assets/images/help/repository/headings-toc.png and b/assets/images/help/repository/headings-toc.png differ diff --git a/config/kubernetes/production/deployments/webapp.yaml b/config/kubernetes/production/deployments/webapp.yaml index 35e49765e9d0..fc0bfb0feb54 100644 --- a/config/kubernetes/production/deployments/webapp.yaml +++ b/config/kubernetes/production/deployments/webapp.yaml @@ -23,10 +23,10 @@ spec: image: docs-internal resources: requests: - cpu: 4000m - memory: 5Gi + cpu: 8000m + memory: 10Gi limits: - cpu: 4000m + cpu: 16000m memory: 14Gi ports: - name: http diff --git a/config/moda/deployment.yaml b/config/moda/deployment.yaml index a8edafe09980..d77c5bb51341 100644 --- a/config/moda/deployment.yaml +++ b/config/moda/deployment.yaml @@ -1,13 +1,36 @@ -required_builds: - - docs-internal-moda-config-bundle / docs-internal-moda-config-bundle - - docs-internal-docker-image / docs-internal-docker-image - - docs-internal-docker-security / docs-internal-docker-security +# Deploy configuration reference: https://thehub.github.com/epd/engineering/products-and-services/internal/moda/reference/deployment-yaml/ + environments: - name: production - auto_deploy: true + require_pipeline: true cluster_selector: profile: general region: iad + +required_builds: + - docs-internal-moda-config-bundle / docs-internal-moda-config-bundle + - docs-internal-docker-image / docs-internal-docker-image + - docs-internal-docker-security / docs-internal-docker-security + +# Make the pipeline start automatically when a PR is enqueued +auto_start_pipeline: production_rollout + +pipelines: + production_rollout: + thread_notifications: true + notify_users_via_dm: false + timeout: 1200 + stages: + - name: full_production + kind: deployment + start_message: We are now going to deploy {{app}}/{{ref}}! Please pause or cancel the pipeline after the deploy if you want more time before auto-merging your pull request(s). + config: + environment: production + timeout: 1200 + # gates: + # - kind: timer + # duration: 1200 + notifications: slack_channels: - '#docs-ops' diff --git a/content/README.md b/content/README.md index 19e57200b888..672c9629c755 100644 --- a/content/README.md +++ b/content/README.md @@ -196,7 +196,7 @@ featuredLinks: ### `allowTitleToDifferFromFilename` -- Purpose: Indicates whether a page is allowed to have a title that differs from its filename. Pages with this frontmatter set to `true` will not be flagged in tests or updated by `src/content-render/scripts/reconcile-filenames-with-ids.js`. Use this value if a file's `title` frontmatter includes Liquid or punctuation that cannot be part of the filename. For example, the article "[About Enterprise Managed Users](https://docs.github.com/en/enterprise-cloud@latest/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users)" uses a Liquid reusable in its title, `'About {% data variables.product.prodname_emus %}'`, which cannot be in the filename, `about-enterprise-managed-users.md`, so the `allowTitleToDifferFromFilename` frontmatter is set to `true`. +- Purpose: Indicates whether a page is allowed to have a title that differs from its filename. Pages with this frontmatter set to `true` will not be flagged in tests or updated by `src/content-render/scripts/reconcile-filenames-with-ids.js`. Use this value if a file's `title` frontmatter includes Liquid or punctuation that cannot be part of the filename. For example, the article [About Enterprise Managed Users](https://docs.github.com/en/enterprise-cloud@latest/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users) uses a Liquid reusable in its title, `'About {% data variables.product.prodname_emus %}'`, which cannot be in the filename, `about-enterprise-managed-users.md`, so the `allowTitleToDifferFromFilename` frontmatter is set to `true`. - Type: `Boolean`. Default is `false`. - Optional. @@ -293,15 +293,15 @@ Do not add hardcoded "In this article" sections in the Markdown source or else t A content file can have **two** types of versioning: - [`versions`](#versions) frontmatter (**required**) - - Determines in which versions the page is available. See "[Versioning documentation](https://docs.github.com/en/contributing/writing-for-github-docs/versioning-documentation)" for more info. + - Determines in which versions the page is available. See [Versioning documentation](https://docs.github.com/en/contributing/writing-for-github-docs/versioning-documentation) for more info. - Liquid statements in content (**optional**) - - Conditionally render content depending on the current version being viewed. See "[Versioning documentation](https://docs.github.com/en/contributing/writing-for-github-docs/versioning-documentation#versioning-with-liquid-conditional-operators)" for more info. Note Liquid conditionals can also appear in `data` and `include` files. + - Conditionally render content depending on the current version being viewed. See [Versioning documentation](https://docs.github.com/en/contributing/writing-for-github-docs/versioning-documentation#versioning-with-liquid-conditional-operators) for more info. Note Liquid conditionals can also appear in `data` and `include` files. **Note**: As of early 2021, the `free-pro-team@latest` version is not included URLs. A helper function called `src/versions/lib/remove-fpt-from-path.js` removes the version from URLs. ## Filenames -When adding a new article, the filename is a [kebab-cased](https://en.wikipedia.org/wiki/Letter_case#Kebab_case) version of the article's [`title`](#title) frontmatter. For example, the article "[About GitHub CLI](https://docs.github.com/en/github-cli/github-cli/about-github-cli)" has a `title` frontmatter of `About GitHub CLI` and a filename of `about-github-cli.md`. +When adding a new article, the filename is a [kebab-cased](https://en.wikipedia.org/wiki/Letter_case#Kebab_case) version of the article's [`title`](#title) frontmatter. For example, the article [About GitHub CLI](https://docs.github.com/en/github-cli/github-cli/about-github-cli) has a `title` frontmatter of `About GitHub CLI` and a filename of `about-github-cli.md`. Directory names for categories and map topics can match the `title` or `shortTitle` frontmatter. @@ -383,7 +383,7 @@ You can link directly to a different version of the page using the `currentArtic Sometimes you want to link to a Dotcom-only article in Enterprise content and you don't want the link to be Enterprise-ified. To prevent the transformation, you should include the preferred version in the path. ```markdown -"[GitHub's Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service)" +[GitHub's Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service) ``` Sometimes the canonical home of content moves outside the docs site. None of the links included in [`src/redirects/lib/external-sites.json`](/src/redirects/lib/external-sites.json) get rewritten. See [`contributing/redirects.md`](/contributing/redirects.md) for more info about this type of redirect. diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md index e4f61014d69d..3543aa1229ad 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md @@ -79,7 +79,7 @@ Anytime you comment in a conversation or when someone @mentions your username, y For conversations you're watching or participating in, you can choose whether you want to receive notifications by email or through the notifications inbox. For more information, see [Choosing your notification settings](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#choosing-your-notification-settings). -![Screenshot of the "Notification settings" page. The "Participating" and "Watching" settings are shown, each with two checkbox options, titled "Email" and "Web and Mobile".](/assets/images/help/notifications-v2/participating-and-watching-options.png){% endif %} +![Screenshot of the "Notification settings" page. "Participating" and "Watching" each have two checkbox options: "Email" and "Web and Mobile".](/assets/images/help/notifications-v2/participating-and-watching-options.png){% endif %} For example, on your "Notification settings" page: * If you don't want notifications to be sent to your email, deselect **email** for participating and watching notifications. @@ -236,8 +236,6 @@ For more information about the notification delivery methods available to you, a For more information on how to configure notifications for {% data variables.secret-scanning.alerts %}, see [AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning/monitoring-alerts). -{% ifversion update-notification-settings-22 or ghes %} - ## {% data variables.product.prodname_actions %} notification options For repositories that are set up with {% data variables.product.prodname_actions %} and that you are watching, you can choose how you want to receive workflow run updates. @@ -245,7 +243,7 @@ For repositories that are set up with {% data variables.product.prodname_actions {% ifversion update-notification-settings-22 %} 1. On the "Notification settings" page, under "System", then under "Actions", select the **Don't notify** dropdown menu. - ![Screenshot of the "System" section of the notification settings. Under "Actions," a dropdown menu, titled "Don't notify", is highlighted with an orange outline.](/assets/images/help/notifications/github-actions-customize-notifications.png) + ![Screenshot of the "System" section of the notification settings. Under "Actions," a dropdown menu, titled "Don't notify", is outlined in orange.](/assets/images/help/notifications/github-actions-customize-notifications.png) 1. To opt into web notifications, from the dropdown menu, select "On {% data variables.product.prodname_dotcom %}." To opt into email notifications, from the dropdown menu, select "Email." @@ -254,9 +252,7 @@ For repositories that are set up with {% data variables.product.prodname_actions {% ifversion ghes %} On the "Notification settings" page, select "Email" or "Web" notifications. Optionally, to only receive notifications for failed workflow runs, select "Send notifications for failed workflows only". -![Screenshot of the "Actions" section on the "Notification settings" page. Three checkboxes, titled "Email", "Web", and "Send notifications for failed workflows only", are shown.](/assets/images/help/notifications-v2/github-actions-notification-options.png){% endif %} - -{% endif %} +![Screenshot of the "Actions" section of "Notification settings" with checkboxes: "Email", "Web", and "Send notifications for failed workflows only."](/assets/images/help/notifications-v2/github-actions-notification-options.png){% endif %} ## Organization alerts notification options diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md index 08a6da63ce2d..d5b30b53132e 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md @@ -17,5 +17,5 @@ children: - /managing-your-profile-readme - /pinning-items-to-your-profile - /setting-your-profile-to-private + - /using-your-github-profile-to-enhance-your-resume --- - diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md index cd27989dd8a6..eacef672a92d 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md @@ -92,8 +92,6 @@ Add pronouns to your public user profile to share information about yourself wit {% endif %} -{% ifversion profile-time-zone %} - ## Setting your location and time zone You can set a location and time zone on your profile to show other people your local time. Your location and time zone will be visible: @@ -111,8 +109,6 @@ When you view your profile, you will see your location, local time, and your tim * Select the **Time zone** dropdown menu, then click your local time zone. {% data reusables.profile.update-profile %} -{% endif %} - {% ifversion profile-social-links %} ## Adding links to your social accounts diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/using-your-github-profile-to-enhance-your-resume.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/using-your-github-profile-to-enhance-your-resume.md new file mode 100644 index 000000000000..78342c0af42a --- /dev/null +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/using-your-github-profile-to-enhance-your-resume.md @@ -0,0 +1,107 @@ +--- +title: Using your GitHub profile to enhance your resume +intro: 'Demonstrate your skills to hiring managers with your {% data variables.product.github %} profile.' +versions: + fpt: '*' +topics: + - Profiles +shortTitle: Enhance your resume +--- + +## How can my {% data variables.product.github %} profile enhance my resume? + +When you include a link to your {% data variables.product.github %} profile in your resume, you showcase your skills and experience to potential employers. In this article, you'll find practical tips for preparing your {% data variables.product.github %} profile for a job search. + +After you complete these steps, you can be confident that hiring managers will have a good sense of your technical skills when they are reviewing your {% data variables.product.github %} profile. + +## Step 1: Create a professional bio + +Your bio is a sentence or two that appears under your profile picture. Use your bio to give potential employers a high-level overview of who you are and what kind of work you're looking for. + +Navigate to your [profile settings](https://github.com/settings/profile) to update your bio. Keep this description short and concise. Consider something like, "Hello! My name is Mona and I'm looking for work as a front end developer." + +> [!NOTE] While you're here, you can update the rest of your profile settings. Consider including a profile picture, a link to your personal website or portfolio, and links to your social profiles. + +## Step 2: Create a profile README + +Compared to your bio, your profile README is flexible and allows for more creativity. You can write more in your profile README to showcase your skills and interests. + +Things you may want to add to your profile README include: + +* **An introduction**: Write a brief introduction of yourself and your professional background. +* **Skills and experience**: List your technical skills, including any programming languages, frameworks, and tools you are proficient in. +* **Your professional experience**: Describe where you've worked before and what sort of professional skills you've built. These can even be non-technical skills, such as communication and empathy. +* **Some of your best projects**: Describe some projects you're proud of. You'll also pin these repositories later, but your README gives you a chance to provide more commentary. +* **Achievements or awards**: Show off any of your achievements, including certifications or awards you've received for your work. + +For instructions for creating a profile README, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme#adding-a-profile-readme). + +> [!NOTE] Updating and customizing your profile README also helps demonstrate fluency using Markdown and HTML, which are useful skills for technical jobs. To show off your skills for potential employers, look for ways to use more advanced Markdown or HTML elements in your profile README. + +## Step 3: Choose projects to showcase + +Pick your favorite 3-5 projects to highlight for your job application. For the best chances at an interview, pick projects that show your diverse skills and are relevant to your specific job search. + +These can be projects you created or projects that you contributed to: + +* Projects you own are fully under your control, so you can prepare the project using the rest of the steps below. +* Open source projects highlight your ability to collaborate with others. + +To take advantage of both, pin some of each to your profile. + +Repositories you pin will be prominently displayed on your profile, allowing you to direct hiring managers' attention to the projects you're most proud of. + +To get started, click **Customize your pins** in the "Popular repositories" section of your profile. + +## Step 4: Prepare the projects you want to showcase + +Hiring managers usually consider many applicants for each role. Expect that they will only look at your projects for a couple minutes. To give the best impression during this brief time, you should make your projects easy to understand and explore. + +Below, you'll find some practical suggestions for preparing your showcase projects, as well as some tips on using {% data variables.product.prodname_copilot_short %} to help. + +> [!NOTE] Always verify the answers that {% data variables.product.prodname_copilot_short %} provides. + +### Update the repository details + +On the main page of the repository, to the right of "About," click {% octicon "gear" aria-label="Edit repository metadata" %}. Here, you can provide information that helps hiring managers quickly understand the project: +* A brief description of your project +* A website where you can see the project in action +* Topic tags that categorize your project + +### Write a helpful README + +The README for your project's repository is a perfect space to give a concise project overview. Helpful project README details include: +* A list of key features of the project +* Details on how to set up and run the project +* An example or demo of the project +* Instructions on testing your code + +You can use [Copilot Chat](https://github.com/copilot) to help write your README. Use a prompt like this: +>Write a README for my `lottery-number-generator` repository. + +### Make the code easy to understand + +To give the best impression, you'll want to make sure that hiring managers can understand your project quickly. In general, a few best practices can help give any readers an understanding of your project and how you work with code: + +* Maintain a consistent coding style with descriptive file and directory names throughout the project +* Use helpful comments and documentation for any complex or important snippets +* Refine your code according to popular style guides +* Simplify complex functions, break down large classes, and remove redundant code +* Provide tests to validate that your code is working as expected + +You can use [{% data variables.product.prodname_copilot_extension_vsc %}](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) to interact with {% data variables.product.prodname_copilot_short %} in {% data variables.product.prodname_vscode_shortname %}. Here, {% data variables.product.prodname_copilot_short %} can help answer more specific questions about your project, make edits across multiple files, provide suggestions for simplifying your code, and write tests. For more information, see [AUTOTITLE](/copilot/using-github-copilot/guides-on-using-github-copilot/writing-tests-with-github-copilot). + +### Update your project's dependencies + +To showcase your understanding of security best practices, ensure your project is using the latest versions of any dependencies. You can use {% data variables.product.prodname_dependabot_alerts %} and security updates to view alerts about dependencies with known security vulnerabilities. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts). + +## Looking forward: Maintaining your projects + +Your profile is now ready to be included on your resume! The changes you made today will have a big impact on your job search and will make your {% data variables.product.github %} profile stand out to hiring managers. + +If you want to improve your profile even more, incorporate these practices into your coding routines: + +* **Maintain a clean commit history**. To make your project history understandable, use descriptive commit messages and work in smaller batches. +* **Use issues, pull requests, and {% data variables.product.prodname_projects_v2 %}**. Showcase your task management and project planning skills by tracking bugs and feature requests with issues and using {% data variables.product.prodname_projects_v2 %} to organize them. +* **Keep dependencies updated**. Use {% data variables.product.prodname_dependabot_version_updates %} to automatically update your project's dependencies with the latest security features and bug fixes. +* **Contribute to open source**. Open source contributions showcase your collaboration skills and prove that you can work in complex code bases. For more information, see [AUTOTITLE](/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github). diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-personal-accounts-repositories.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-personal-accounts-repositories.md index d5151af2ae21..6052b705a660 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-personal-accounts-repositories.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-personal-accounts-repositories.md @@ -36,7 +36,7 @@ The person you invite to be your successor must have a {% data variables.product 1. Under "Successor settings", to invite a successor, begin typing a username, full name, or email address, then click their name when it appears. - ![Screenshot of the "Successor settings" section. The string "octocat" is entered in a search field, and Octocat's profile is listed in a dropdown below.](/assets/images/help/settings/settings-invite-successor-search-field.png) + ![Screenshot of the "Successor settings" section. The string "octocat" is entered in a search field, and Octocat's profile is listed in a dropdown.](/assets/images/help/settings/settings-invite-successor-search-field.png) 1. Click **Add successor**. {% data reusables.user-settings.sudo-mode-popup %} diff --git a/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 b/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 index f1c5c01c5dfd..b4baa9dfde01 100644 --- a/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 +++ b/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 @@ -1,6 +1,6 @@ --- title: Adding an email address to your GitHub account -intro: '{% data variables.product.product_name %} allows you to add as many email addresses to your account as you like. If you set an email address in your local Git configuration, you will need to add it to your account settings in order to connect your commits to your account. For more information about your email address and commits, see "[Setting your commit email address](/articles/setting-your-commit-email-address/)."' +intro: '{% data variables.product.product_name %} allows you to add as many email addresses to your account as you like. If you set an email address in your local Git configuration, you will need to add it to your account settings in order to connect your commits to your account. For more information about your email address and commits, see [Setting your commit email address](/articles/setting-your-commit-email-address/).' redirect_from: - /articles/adding-an-email-address-to-your-github-account - /github/setting-up-and-managing-your-github-user-account/adding-an-email-address-to-your-github-account diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-accessibility-settings.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-accessibility-settings.md index 3c1e08293999..297de01bebb3 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-accessibility-settings.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-accessibility-settings.md @@ -48,8 +48,6 @@ By default, all keyboard shortcuts are enabled on {% data variables.product.prod * To customize the keyboard shortcuts for triggering the command palette, under "Command palette", use the drop-down menus to choose a keyboard shortcut. For more information, see [AUTOTITLE](/get-started/accessibility/github-command-palette). {%- endif %} -{% ifversion motion-management %} - ## Managing motion You can control how {% data variables.product.product_name %} displays animated _.gif_ images. @@ -61,5 +59,3 @@ By default, {% data variables.product.product_name %} syncs with your system-lev 1. Under "Motion", manage settings for motion. * To control how {% data variables.product.product_name %} displays animated images, under "Autoplay animated images", select **Sync with system**, **Enabled**, or **Disabled**. - -{% endif %} diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-security-and-analysis-settings-for-your-personal-account.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-security-and-analysis-settings-for-your-personal-account.md index 617534c2cd67..0a4a9725b6be 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-security-and-analysis-settings-for-your-personal-account.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-security-and-analysis-settings-for-your-personal-account.md @@ -35,7 +35,7 @@ For an overview of repository-level security, see [AUTOTITLE](/code-security/get 1. Under {% ifversion code-security-wording-only %}"Code security"{% else %}"Code security and analysis"{% endif %}, to the right of the feature, click **Disable all** or **Enable all**. 1. Optionally, enable the feature by default for new repositories that you own.{% ifversion not ghes %} - ![Screenshot of the "Enable FEATURE" modal dialog, with the "Enable by default for new private repositories" option highlighted with a dark orange outline.](/assets/images/help/settings/security-and-analysis-enable-by-default-in-modal.png){% endif %} + ![Screenshot of the "Enable FEATURE" modal dialog, with the "Enable by default for new private repositories" option outlined in dark orange.](/assets/images/help/settings/security-and-analysis-enable-by-default-in-modal.png){% endif %} 1. Click **Disable FEATURE** or **Enable FEATURE** to disable or enable the feature for all the repositories you own. diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md index d76b125e9d4a..a0c8eb10c64a 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md @@ -27,6 +27,6 @@ You can customize how non-essential cookies behave on any {% data variables.prod 1. Under "Manage cookie preferences," to accept or reject each non-essential cookie, click **Accept** or **Reject**. - ![Screenshot of the "Manage cookie preferences" dialog window. Under "Analytics," two radio buttons, labeled "Accept" and "Reject," are outlined in orange.](/assets/images/help/settings/cookie-settings-accept-or-reject.png) + ![Screenshot of the "Manage cookie preferences" dialog. Under "Analytics", two radio buttons, labeled "Accept" and "Reject," are outlined.](/assets/images/help/settings/cookie-settings-accept-or-reject.png) 1. Click **Save changes**. diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/managing-your-scheduled-reminders.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/managing-your-scheduled-reminders.md index d23dab9157d0..5af4ef321ce5 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/managing-your-scheduled-reminders.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/managing-your-scheduled-reminders.md @@ -28,7 +28,7 @@ You can set scheduled reminders for personal or team-level review requests for p {% data reusables.reminders.scheduled-reminders %} 1. Next to the organization you'd like to schedule reminders for, click {% octicon "pencil" aria-label="Edit reminder" %}. - ![Screenshot of the settings for a personal account showing the name of a GitHub organization. An edit button with a pencil icon is outlined in dark orange.](/assets/images/help/settings/scheduled-reminders-org-choice.png) + ![Screenshot of the settings for a personal account showing the name of a GitHub organization. An edit button with a pencil icon is outlined in orange.](/assets/images/help/settings/scheduled-reminders-org-choice.png) {% data reusables.reminders.authorize-slack %} {% data reusables.reminders.days-dropdown %} @@ -45,7 +45,7 @@ You can set scheduled reminders for personal or team-level review requests for p {% data reusables.reminders.scheduled-reminders %} 1. Next to the organization you'd like to edit scheduled reminders for, click {% octicon "pencil" aria-label="Edit reminder" %}. - ![Screenshot of the settings for a personal account showing the name of a GitHub organization. An edit button with a pencil icon is outlined in dark orange.](/assets/images/help/settings/scheduled-reminders-org-choice.png) + ![Screenshot of the settings for a personal account showing the name of a GitHub organization. An edit button with a pencil icon is outlined in orange.](/assets/images/help/settings/scheduled-reminders-org-choice.png) {% data reusables.reminders.edit-page %} {% data reusables.reminders.update-buttons %} @@ -57,7 +57,7 @@ You can set scheduled reminders for personal or team-level review requests for p {% data reusables.reminders.scheduled-reminders %} 1. Next to the organization you'd like to delete reminders for, click {% octicon "pencil" aria-label="Edit reminder" %}. - ![Screenshot of the settings for a personal account showing the name of a GitHub organization. An edit button with a pencil icon is outlined in dark orange.](/assets/images/help/settings/scheduled-reminders-org-choice.png) + ![Screenshot of the settings for a personal account showing the name of a GitHub organization. An edit button with a pencil icon is outlined in orange.](/assets/images/help/settings/scheduled-reminders-org-choice.png) {% data reusables.reminders.delete %} diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/publicizing-or-hiding-organization-membership.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/publicizing-or-hiding-organization-membership.md index 4c06ba1d5898..febd59177a0a 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/publicizing-or-hiding-organization-membership.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/publicizing-or-hiding-organization-membership.md @@ -27,4 +27,4 @@ shortTitle: Show or hide membership * To publicize your membership, choose **Public**. * To hide your membership, choose **Private**. - ![Screenshot of an entry in the list of organization members. To the right of the username, a dropdown menu, labeled "Private", is outlined in dark orange.](/assets/images/help/organizations/member-visibility-link.png) + ![Screenshot of an entry in the list of organization members. Next to the username, a dropdown menu, labeled "Private", is outlined in dark orange.](/assets/images/help/organizations/member-visibility-link.png) diff --git a/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 b/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 index ffa4af89d45b..58dfa736d07e 100644 --- a/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 +++ b/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 @@ -18,7 +18,7 @@ shortTitle: Request {% data variables.product.prodname_oauth_app %} approval ## About requesting organization approval for an {% data variables.product.prodname_oauth_app %} -Organization members can always request owner approval for {% data variables.product.prodname_oauth_apps %} they'd like to use, and organization owners receive a notification of pending requests.{% ifversion limit-app-access-requests %} Outside collaborators can request owner approval for {% data variables.product.prodname_oauth_apps %} they'd like to use if integration access requests are enabled. For more information, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/limiting-oauth-app-and-github-app-access-requests).{% endif %} +Organization members can always request owner approval for {% data variables.product.prodname_oauth_apps %} they'd like to use, and organization owners receive a notification of pending requests. Outside collaborators can request owner approval for {% data variables.product.prodname_oauth_apps %} they'd like to use if integration access requests are enabled. For more information, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/limiting-oauth-app-and-github-app-access-requests). ## Requesting organization approval for an {% data variables.product.prodname_oauth_app %} you've already authorized for your personal account diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/viewing-peoples-roles-in-an-organization.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/viewing-peoples-roles-in-an-organization.md index 15ef0ddab8f1..d2ea9b248849 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/viewing-peoples-roles-in-an-organization.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/viewing-peoples-roles-in-an-organization.md @@ -1,6 +1,6 @@ --- title: Viewing people's roles in an organization -intro: 'You can view a list of the people in your organization and filter by their role. For more information on organization roles, see "[Roles in an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization)."' +intro: 'You can view a list of the people in your organization and filter by their role. For more information on organization roles, see [Roles in an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization).' permissions: Organization members can see people's roles in the organization. redirect_from: - /articles/viewing-people-s-roles-in-an-organization @@ -49,7 +49,7 @@ You can also view whether an enterprise owner has a specific role in the organiz | Enterprise owner | Organization owner | Able to configure organization settings and manage access to the organization's resources through teams, etc. | | Enterprise owner | Organization member | Able to access organization resources and content, such as repositories, without access to the organization's settings. | -To review all roles in an organization, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization). {% ifversion custom-repository-roles %} An organization member can also have a custom role for a specific repository. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization).{% endif %} +To review all roles in an organization, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization). {% ifversion ghec or ghes %} An organization member can also have a custom role for a specific repository. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization).{% endif %} For more information about the enterprise owner role, see [AUTOTITLE](/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/roles-in-an-enterprise#enterprise-owner). diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md index 920d3e2a1834..c7231449f744 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md @@ -27,7 +27,7 @@ Before you leave your company, make sure you update the following information in If you've been working with repositories that belong to an organization, you'll want to [remove yourself as a member of the organization](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/removing-yourself-from-an-organization). Note that if you are the organization owner, you should first [transfer ownership of the organization](/organizations/managing-organization-settings/transferring-organization-ownership) to another person. -Unless you're using a {% data variables.enterprise.prodname_managed_user %}, you'll still be able to access your personal account, even after leaving the organization. For more information about {% data variables.product.prodname_emus %}, see "[About {% data variables.product.prodname_emus %}]({% ifversion not ghec %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users){% ifversion not ghec %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +Unless you're using a {% data variables.enterprise.prodname_managed_user %}, you'll still be able to access your personal account, even after leaving the organization. For more information about {% data variables.product.prodname_emus %}, see [About {% data variables.product.prodname_emus %}]({% ifversion not ghec %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users){% ifversion not ghec %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} ## Removing professional associations with personal repositories diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md index cf5c5930c17b..8d3aec2a258f 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md @@ -32,7 +32,7 @@ shortTitle: User into an organization > * Since organizations cannot star repositories, you will no longer have access to your original list of starred repositories. > * You will no longer have access to the list of users you were following from your user account. > * Any followers of your user account will not automatically follow the new organization. -{% ifversion projects-v2 %}> * Any existing collaborators on your projects will still have access to those projects in the new organization.{% endif %} +> * Any existing collaborators on your projects will still have access to those projects in the new organization. > * {% data variables.product.prodname_actions %} is not automatically enabled on the account after converting it to an organization, and will have to be re-enabled. To re-enable {% data variables.product.prodname_actions %}, create a new workflow file in the `.github/workflows` directory of your repository. ## Prerequisites diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md index 101cbc2ba216..7ed17840b271 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md @@ -14,7 +14,7 @@ shortTitle: Manage multiple accounts In some cases, you may need to use multiple accounts on {% data variables.product.github %}. For example, you may have a personal account for open source contributions, and your employer may also create and manage a user account for you within an enterprise. -You cannot use a {% data variables.enterprise.prodname_managed_user %} to contribute to public projects on {% data variables.location.product_location %}, so you must contribute to those resources using your personal account. For more information, see "[About {% data variables.product.prodname_emus %}]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% elsif ghec %}."{% endif %} +You cannot use a {% data variables.enterprise.prodname_managed_user %} to contribute to public projects on {% data variables.location.product_location %}, so you must contribute to those resources using your personal account. For more information, see [About {% data variables.product.prodname_emus %}]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% elsif ghec %}.{% endif %} {% ifversion account-switcher %} diff --git a/content/actions/administering-github-actions/usage-limits-billing-and-administration.md b/content/actions/administering-github-actions/usage-limits-billing-and-administration.md index b39687f11afd..c98c46e3c593 100644 --- a/content/actions/administering-github-actions/usage-limits-billing-and-administration.md +++ b/content/actions/administering-github-actions/usage-limits-billing-and-administration.md @@ -45,7 +45,7 @@ There are some limits on {% data variables.product.prodname_actions %} usage whe * **Job execution time** - Each job in a workflow can run for up to 6 hours of execution time. If a job reaches this limit, the job is terminated and fails to complete. {% data reusables.actions.usage-workflow-run-time %} {% data reusables.actions.usage-api-requests %} -* **Webhook rate limit** - Each repository is limited to 1500 triggered events every 10 seconds. +* **Webhook rate limit** - Each repository is limited to 1500 events triggering a workflow run every 10 seconds. When the limit is reached, the workflow runs that were supposed to be triggered by the webhook events will be blocked and will not be queued. * **Concurrent jobs** - The number of concurrent jobs you can run in your account depends on your {% data variables.product.prodname_dotcom %} plan, as well as the type of runner used. If exceeded, any additional jobs are queued. **Standard {% data variables.product.prodname_dotcom %}-hosted runners** @@ -112,13 +112,13 @@ For more information, see: ## Workflow run history retention policy -The workflow runs in a repository's workflow run history are retained for 400 days. After 400 days, workflow runs are archived. 10 days after archival, they are permanently deleted. The retention period for workflow runs cannot be modified. For more information, see "[AUTOTITLE](/actions/monitoring-and-troubleshooting-workflows/monitoring-workflows/viewing-workflow-run-history)." +The workflow runs in a repository's workflow run history are retained for 400 days. After 400 days, workflow runs are archived. 10 days after archival, they are permanently deleted. The retention period for workflow runs cannot be modified. For more information, see [AUTOTITLE](/actions/monitoring-and-troubleshooting-workflows/monitoring-workflows/viewing-workflow-run-history). ## Disabling or limiting {% data variables.product.prodname_actions %} for your repository or organization {% data reusables.actions.disabling-github-actions %} -{% ifversion actions-cache-admin-ui %}You can also manage {% data variables.product.prodname_actions %} settings for your enterprise, such as workflow permissions and cache storage.{% endif %} +{% ifversion ghes %}You can also manage {% data variables.product.prodname_actions %} settings for your enterprise, such as workflow permissions and cache storage.{% endif %} For more information, see: * [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository) diff --git a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners.md b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners.md index c6b063300ea7..e25539a24b0d 100644 --- a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners.md @@ -124,6 +124,7 @@ The following processor architectures are supported for the self-hosted runner a ## Supported actions on self-hosted runners +All `actions/setup-LANGUAGE` action repositories currently support three platforms: macOS, Windows, and Ubuntu. Some extra configuration might be required to use actions from {% data variables.product.github %} with {% data variables.product.prodname_ghe_server %}, or to use the `actions/setup-LANGUAGE` actions with self-hosted runners that do not have internet access. For more information, see [AUTOTITLE](/admin/github-actions/managing-access-to-actions-from-githubcom) and contact your {% data variables.product.prodname_enterprise %} site administrator. {% endif %} @@ -161,7 +162,7 @@ You can use the REST API to get meta information about {% data variables.product In addition, your workflow may require access to other network resources. -If you use an IP address allow list for your {% data variables.product.prodname_dotcom %} organization or enterprise account, you must add your self-hosted runner's IP address to the allow list. For more information, see "[Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list)" or "[Enforcing policies for security settings in your enterprise](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +If you use an IP address allow list for your {% data variables.product.prodname_dotcom %} organization or enterprise account, you must add your self-hosted runner's IP address to the allow list. For more information, see [Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list) or [Enforcing policies for security settings in your enterprise](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} {% else %} diff --git a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners.md b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners.md index f3be54b66527..6e51c2f69e23 100644 --- a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners.md @@ -28,12 +28,8 @@ For information on supported operating systems for self-hosted runners, or using You can set up automation to scale the number of self-hosted runners. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/autoscaling-with-self-hosted-runners). -{% ifversion actions-single-use-tokens %} - You can register ephemeral runners that perform a single job before the registration is cleaned up by using just-in-time runner registration. For more information, see [AUTOTITLE](/actions/security-guides/security-hardening-for-github-actions#using-just-in-time-runners). -{% endif %} - ## Prerequisites {% data reusables.actions.self-hosted-runners-prerequisites %} diff --git a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/autoscaling-with-self-hosted-runners.md b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/autoscaling-with-self-hosted-runners.md index 930cb48970da..c76382f66238 100644 --- a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/autoscaling-with-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/autoscaling-with-self-hosted-runners.md @@ -48,12 +48,8 @@ The {% data variables.product.prodname_actions %} service will then automaticall > [!NOTE] > If a job is labeled for a certain type of runner, but none matching that type are available, the job does not immediately fail at the time of queueing. Instead, the job will remain queued until the 24 hour timeout period expires. -{% ifversion actions-single-use-tokens %} - Alternatively, you can create ephemeral, just-in-time runners using the REST API. For more information, see [AUTOTITLE](/rest/actions/self-hosted-runners). -{% endif %} - ## Controlling runner software updates on self-hosted runners By default, self-hosted runners will automatically perform a software update whenever a new version of the runner software is available. If you use ephemeral runners in containers then this can lead to repeated software updates when a new runner version is released. Turning off automatic updates allows you to update the runner version on the container image directly on your own schedule. diff --git a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/removing-self-hosted-runners.md b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/removing-self-hosted-runners.md index 3bac1dee60cb..cb1f3454ceef 100644 --- a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/removing-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/removing-self-hosted-runners.md @@ -20,9 +20,7 @@ shortTitle: Remove self-hosted runners > [!NOTE] > * {% data reusables.actions.self-hosted-runner-removal-impact %} > * {% data reusables.actions.self-hosted-runner-auto-removal %} -{%- ifversion actions-single-use-tokens %} > * {% data reusables.actions.jit-runner-removal %} -{%- endif %} To remove a self-hosted runner from a user repository you must be the repository owner. Organization owners{% ifversion custom-org-roles %} and users with the "Manage organization runners and runner groups" permission{% endif %} can remove a runner from a repository in the organization. {% ifversion custom-org-roles %}For more information about custom organization roles, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles).{% endif %} @@ -42,9 +40,7 @@ For information about how to remove a self-hosted runner with the REST API, see > [!NOTE] > * {% data reusables.actions.self-hosted-runner-removal-impact %} > * {% data reusables.actions.self-hosted-runner-auto-removal %} -{%- ifversion actions-single-use-tokens %} > * {% data reusables.actions.jit-runner-removal %} -{%- endif %} To remove a self-hosted runner from an organization, you must be an organization owner{% ifversion custom-org-roles %} or have the "Manage organization runners and runner groups" permission{% endif %}. We recommend that you also have access to the self-hosted runner machine. For information about how to remove a self-hosted runner with the REST API, see [AUTOTITLE](/rest/actions/self-hosted-runners). @@ -67,11 +63,8 @@ If you use {% data variables.product.prodname_ghe_cloud %}, you can also remove > [!NOTE] > * {% data reusables.actions.self-hosted-runner-removal-impact %} > * {% data reusables.actions.self-hosted-runner-auto-removal %} -{%- ifversion actions-single-use-tokens %} > * {% data reusables.actions.jit-runner-removal %} -{%- endif %} - To remove a self-hosted runner from an enterprise, you must be an enterprise owner. We recommend that you also have access to the self-hosted runner machine. For information about how to remove a self-hosted runner with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/actions/self-hosted-runners). {% data reusables.actions.self-hosted-runner-reusing %} diff --git a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/running-scripts-before-or-after-a-job.md b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/running-scripts-before-or-after-a-job.md index 739fbb652f77..28fb850343eb 100644 --- a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/running-scripts-before-or-after-a-job.md +++ b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/running-scripts-before-or-after-a-job.md @@ -49,7 +49,8 @@ The scripts are automatically executed when the runner has the following environ * `ACTIONS_RUNNER_HOOK_JOB_STARTED`: The script defined in this environment variable is triggered when a job has been assigned to a runner, but before the job starts running. * `ACTIONS_RUNNER_HOOK_JOB_COMPLETED`: The script defined in this environment variable is triggered at the end of the job, after all the steps defined in the workflow have run. -To set these environment variables, you can either add them to the operating system, or add them to a file named `.env` within the self-hosted runner application directory (that is, the directory into which you downloaded and unpacked the runner software). For example, the following `.env` entry will have the runner automatically run a script, saved as `/opt/runner/cleanup_script.sh` on the runner machine, before each job runs: +To set these environment variables, you can either add them to the operating system, or add them to a file named `.env` within the self-hosted runner application directory (that is, the directory into which you downloaded and unpacked the runner software). Note that any change to the `.env` file will require restarting the runner. +For example, the following `.env` entry will have the runner automatically run a script, saved as `/opt/runner/cleanup_script.sh` on the runner machine, before each job runs: ```bash ACTIONS_RUNNER_HOOK_JOB_STARTED=/opt/runner/cleanup_script.sh diff --git a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/using-self-hosted-runners-in-a-workflow.md b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/using-self-hosted-runners-in-a-workflow.md index 3416f054f945..4cbdecc86572 100644 --- a/content/actions/hosting-your-own-runners/managing-self-hosted-runners/using-self-hosted-runners-in-a-workflow.md +++ b/content/actions/hosting-your-own-runners/managing-self-hosted-runners/using-self-hosted-runners-in-a-workflow.md @@ -17,7 +17,7 @@ shortTitle: Use runners in a workflow You can target self-hosted runners for use in a workflow based on the labels assigned to the runners{% ifversion target-runner-groups %}, or their group membership, or a combination of these{% endif %}. ->[!NOTE]Actions Runner Controller does not support multiple labels, only the name of the runner can be used in place of a label +>[!IMPORTANT]Runner Scale Sets do not support multiple labels, only the name of the runner can be used in place of a label. See [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/deploying-runner-scale-sets-with-actions-runner-controller). ## About self-hosted runner labels @@ -109,9 +109,9 @@ These labels operate cumulatively, so a self-hosted runner must have all four la ## Routing precedence for self-hosted runners -When routing a job to a self-hosted runner, {% data variables.product.prodname_dotcom %} looks for a runner that matches the job's `runs-on` labels{% ifversion target-runner-groups %} and/or groups{% endif %}: +When routing a job to a self-hosted runner, {% data variables.product.prodname_dotcom %} looks for a runner that matches the job's `runs-on` labels{% ifversion target-runner-groups %} and groups{% endif %}: -* If {% data variables.product.prodname_dotcom %} finds an online and idle runner that matches the job's `runs-on` labels{% ifversion target-runner-groups %} and/or groups{% endif %}, the job is then assigned and sent to the runner. +* If {% data variables.product.prodname_dotcom %} finds an online and idle runner that matches the job's `runs-on` labels{% ifversion target-runner-groups %} and groups{% endif %}, the job is then assigned and sent to the runner. * If the runner doesn't pick up the assigned job within 60 seconds, the job is re-queued so that a new runner can accept it. -* If {% data variables.product.prodname_dotcom %} doesn't find an online and idle runner that matches the job's `runs-on` labels {% ifversion target-runner-groups %} and/or groups{% endif %}, then the job will remain queued until a runner comes online. +* If {% data variables.product.prodname_dotcom %} doesn't find an online and idle runner that matches the job's `runs-on` labels {% ifversion target-runner-groups %} and groups{% endif %}, then the job will remain queued until a runner comes online. * If the job remains queued for more than 24 hours, the job will fail. diff --git a/content/actions/managing-workflow-runs-and-deployments/managing-deployments/managing-environments-for-deployment.md b/content/actions/managing-workflow-runs-and-deployments/managing-deployments/managing-environments-for-deployment.md index 9f9dddceaef9..948bbc9e58ed 100644 --- a/content/actions/managing-workflow-runs-and-deployments/managing-deployments/managing-environments-for-deployment.md +++ b/content/actions/managing-workflow-runs-and-deployments/managing-deployments/managing-environments-for-deployment.md @@ -28,7 +28,7 @@ Environments are used to describe a general deployment target like `production`, You can configure environments with protection rules and secrets. When a workflow job references an environment, the job won't start until all of the environment's protection rules pass. A job also cannot access secrets that are defined in an environment until all the deployment protection rules pass. -{% ifversion actions-break-glass %}Optionally, you can bypass an environment's protection rules and force all pending jobs referencing the environment to proceed. For more information, see [AUTOTITLE](/actions/managing-workflow-runs/reviewing-deployments#bypassing-environment-protection-rules).{% endif %} +Optionally, you can bypass an environment's protection rules and force all pending jobs referencing the environment to proceed. For more information, see [AUTOTITLE](/actions/managing-workflow-runs/reviewing-deployments#bypassing-environment-protection-rules). {% ifversion fpt %} @@ -41,14 +41,12 @@ You can configure environments with protection rules and secrets. When a workflo ## Deployment protection rules -Deployment protection rules require specific conditions to pass before a job referencing the environment can proceed. You can use deployment protection rules to require a manual approval, delay a job, or restrict the environment to certain branches.{% ifversion actions-custom-deployment-protection-rules-beta %} You can also create and implement custom protection rules powered by {% data variables.product.prodname_github_apps %} to use third-party systems to control deployments referencing environments configured on {% data variables.product.github %}. +Deployment protection rules require specific conditions to pass before a job referencing the environment can proceed. You can use deployment protection rules to require a manual approval, delay a job, or restrict the environment to certain branches. You can also create and implement custom protection rules powered by {% data variables.product.prodname_github_apps %} to use third-party systems to control deployments referencing environments configured on {% data variables.product.github %}. Third-party systems can be observability systems, change management systems, code quality systems, or other manual configurations that you use to assess readiness before deployments are safely rolled out to environments. {% data reusables.actions.custom-deployment-protection-rules-limits %} -{% endif %} - ### Required reviewers Use required reviewers to require a specific person or team to approve workflow jobs that reference the environment. You can list up to six users or teams as reviewers. The reviewers must have at least read access to the repository. Only one of the required reviewers needs to approve the job for it to proceed. @@ -66,7 +64,7 @@ For more information on reviewing jobs that reference an environment with requir ### Wait timer -Use a wait timer to delay a job for a specific amount of time after the job is initially triggered. The time (in minutes) must be an integer between 1 and 43,200 (30 days). +Use a wait timer to delay a job for a specific amount of time after the job is initially triggered. The time (in minutes) must be an integer between 1 and 43,200 (30 days). Wait time will not count towards your billable time. {% ifversion fpt %} @@ -107,8 +105,6 @@ Use deployment branches{% ifversion deployment-protections-tag-patterns %} and t {% endif %} -{% ifversion actions-break-glass %} - ### Allow administrators to bypass configured protection rules By default, administrators can bypass the protection rules and force deployments to specific environments. For more information, see [AUTOTITLE](/actions/managing-workflow-runs/reviewing-deployments#bypassing-environment-protection-rules). @@ -121,9 +117,6 @@ Alternatively, you can configure environments to disallow bypassing the protecti > Allowing administrators to bypass protection rules is only available for public repositories for users on {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, and {% data variables.product.prodname_team %} plans. {% endif %} -{% endif %} - -{% ifversion actions-custom-deployment-protection-rules-beta %} ### Custom deployment protection rules @@ -140,8 +133,6 @@ Once custom deployment protection rules have been created and installed on a rep {% endif %} -{% endif %} - ## Environment secrets Secrets stored in an environment are only available to workflow jobs that reference the environment. If the environment requires approval, a job cannot access environment secrets until one of the required reviewers approves it. For more information about secrets, see [AUTOTITLE](/actions/security-guides/using-secrets-in-github-actions). @@ -195,17 +186,13 @@ Variables stored in an environment are only available to workflow jobs that refe 1. Select **Wait timer**. 1. Enter the number of minutes to wait. 1. Click **Save protection rules**. -{%- ifversion actions-break-glass %} 1. Optionally, disallow bypassing configured protection rules. For more information, see [Allow administrators to bypass configured protection rules](#allow-administrators-to-bypass-configured-protection-rules). 1. Deselect **Allow administrators to bypass configured protection rules**. 1. Click **Save protection rules**. -{%- endif %} -{%- ifversion actions-custom-deployment-protection-rules-beta %} 1. Optionally, enable any custom deployment protection rules that have been created with {% data variables.product.prodname_github_apps %}. For more information, see [Custom deployment protection rules](#custom-deployment-protection-rules). 1. Select the custom protection rule you want to enable. 1. Click **Save protection rules**. -{%- endif %} -1. Optionally, specify what branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %} can deploy to this environment. For more information, see "[Deployment branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %}](/actions/deployment/targeting-different-environments/managing-environments-for-deployment#deployment-branches{% ifversion deployment-protections-tag-patterns %}-and-tags{% endif %})." +1. Optionally, specify what branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %} can deploy to this environment. For more information, see [Deployment branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %}](/actions/deployment/targeting-different-environments/managing-environments-for-deployment#deployment-branches{% ifversion deployment-protections-tag-patterns %}-and-tags{% endif %}). 1. Select the desired option in the **Deployment branches** dropdown. 1. If you chose **Selected branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %}**, to add a new rule, click **Add deployment branch{% ifversion deployment-protections-tag-patterns %} or tag{% endif %} rule** {% ifversion deployment-protections-tag-patterns %}1. In the "Ref type" dropdown menu, depending on what rule you want to apply, click **{% octicon "git-branch" aria-hidden="true" %} Branch** or **{% octicon "tag" aria-hidden="true" %} Tag**.{% endif %} diff --git a/content/actions/managing-workflow-runs-and-deployments/managing-deployments/reviewing-deployments.md b/content/actions/managing-workflow-runs-and-deployments/managing-deployments/reviewing-deployments.md index 4e84b29e1881..316be4d33d30 100644 --- a/content/actions/managing-workflow-runs-and-deployments/managing-deployments/reviewing-deployments.md +++ b/content/actions/managing-workflow-runs-and-deployments/managing-deployments/reviewing-deployments.md @@ -34,8 +34,6 @@ For more information about environments and required approvals, see [AUTOTITLE]( {% endif %} -{% ifversion actions-break-glass %} - ## Bypassing deployment protection rules If you have configured deployment protection rules that control whether software can be deployed to an environment, you can bypass these rules and force all pending jobs referencing the environment to proceed. @@ -50,4 +48,3 @@ If you have configured deployment protection rules that control whether software 1. In the pop-up window, select the environments for which you want to bypass deployment protection rules. 1. Under **Leave a comment**, enter a description for bypassing the deployment protection rules. 1. Click **I understand the consequences, start deploying**. -{% endif %} diff --git a/content/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/re-running-workflows-and-jobs.md b/content/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/re-running-workflows-and-jobs.md index 4cb1f9346d8b..00306541e9ee 100644 --- a/content/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/re-running-workflows-and-jobs.md +++ b/content/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/re-running-workflows-and-jobs.md @@ -16,7 +16,7 @@ versions: ## About re-running workflows and jobs -Re-running a workflow{% ifversion re-run-jobs %} or jobs in a workflow{% endif %} uses the same `GITHUB_SHA` (commit SHA) and `GITHUB_REF` (Git ref) of the original event that triggered the workflow run. The workflow will use the privileges of the actor who initially triggered the workflow, not the privileges of the actor who initiated the re-run. You can re-run a workflow{% ifversion re-run-jobs %} or jobs in a workflow{% endif %} for up to 30 days after the initial run.{% ifversion re-run-jobs %} You cannot re-run jobs in a workflow once its logs have passed their retention limits. For more information, see [AUTOTITLE](/actions/learn-github-actions/usage-limits-billing-and-administration#artifact-and-log-retention-policy).{% endif %}{% ifversion debug-reruns %} When you re-run a workflow or jobs in a workflow, you can enable debug logging for the re-run. This will enable runner diagnostic logging and step debug logging for the re-run. For more information about debug logging, see [AUTOTITLE](/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging).{% endif %} +Re-running a workflow{% ifversion re-run-jobs %} or jobs in a workflow{% endif %} uses the same `GITHUB_SHA` (commit SHA) and `GITHUB_REF` (Git ref) of the original event that triggered the workflow run. The workflow will use the privileges of the actor who initially triggered the workflow, not the privileges of the actor who initiated the re-run. You can re-run a workflow{% ifversion re-run-jobs %} or jobs in a workflow{% endif %} for up to 30 days after the initial run.{% ifversion re-run-jobs %} You cannot re-run jobs in a workflow once its logs have passed their retention limits. For more information, see [AUTOTITLE](/actions/learn-github-actions/usage-limits-billing-and-administration#artifact-and-log-retention-policy).{% endif %} When you re-run a workflow or jobs in a workflow, you can enable debug logging for the re-run. This will enable runner diagnostic logging and step debug logging for the re-run. For more information about debug logging, see [AUTOTITLE](/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging). ## Re-running all the jobs in a workflow @@ -46,15 +46,12 @@ To re-run a failed workflow run, use the `run rerun` subcommand. Replace `run-id gh run rerun RUN_ID ``` -{% ifversion debug-reruns %} {% data reusables.actions.enable-debug-logging-cli %} ```shell gh run rerun RUN_ID --debug ``` -{% endif %} - To view the progress of the workflow run, use the `run watch` subcommand and select the run from the interactive list. ```shell @@ -88,14 +85,12 @@ To re-run failed jobs in a workflow run, use the `run rerun` subcommand with the gh run rerun RUN_ID --failed ``` -{% ifversion debug-reruns %} {% data reusables.actions.enable-debug-logging-cli %} ```shell gh run rerun RUN_ID --failed --debug ``` -{% endif %} {% endcli %} ## Re-running a specific job in a workflow @@ -122,14 +117,12 @@ To re-run a specific job in a workflow run, use the `run rerun` subcommand with gh run rerun --job JOB_ID ``` -{% ifversion debug-reruns %} {% data reusables.actions.enable-debug-logging-cli %} ```shell gh run rerun --job JOB_ID --debug ``` -{% endif %} {% endcli %} {% endif %} diff --git a/content/actions/migrating-to-github-actions/manually-migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md b/content/actions/migrating-to-github-actions/manually-migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md index fdca1ee9a597..e37b7d91df3f 100644 --- a/content/actions/migrating-to-github-actions/manually-migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md +++ b/content/actions/migrating-to-github-actions/manually-migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md @@ -183,13 +183,7 @@ The concurrent jobs and workflow execution times in {% data variables.product.pr ### Using different languages in {% data variables.product.prodname_actions %} -When working with different languages in {% data variables.product.prodname_actions %}, you can create a step in your job to set up your language dependencies. For more information about working with a particular language, see the specific guide: -* [Building and testing Node.js](/actions/automating-builds-and-tests/building-and-testing-nodejs) -* [Building and testing Python](/actions/automating-builds-and-tests/building-and-testing-python) -* [Building and testing PowerShell](/actions/automating-builds-and-tests/building-and-testing-powershell) -* [Building and testing Java with Maven](/actions/automating-builds-and-tests/building-and-testing-java-with-maven) -* [Building and testing Java with Gradle](/actions/automating-builds-and-tests/building-and-testing-java-with-gradle) -* [Building and testing Java with Ant](/actions/automating-builds-and-tests/building-and-testing-java-with-ant) +When working with different languages in {% data variables.product.prodname_actions %}, you can create a step in your job to set up your language dependencies. For more information about working with a particular language, see [AUTOTITLE](/actions/use-cases-and-examples/building-and-testing). ## Executing scripts diff --git a/content/actions/monitoring-and-troubleshooting-workflows/troubleshooting-workflows/enabling-debug-logging.md b/content/actions/monitoring-and-troubleshooting-workflows/troubleshooting-workflows/enabling-debug-logging.md index e954e71da37c..955a4ade7ed9 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/troubleshooting-workflows/enabling-debug-logging.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/troubleshooting-workflows/enabling-debug-logging.md @@ -21,12 +21,8 @@ These extra logs are enabled by setting secrets or variables in the repository c For more information on setting secrets and variables, see [AUTOTITLE](/actions/security-guides/using-secrets-in-github-actions) and [AUTOTITLE](/actions/learn-github-actions/variables). -{% ifversion debug-reruns %} - Additionally, anyone who has access to run a workflow can enable runner diagnostic logging and step debug logging for a workflow re-run. For more information, see [AUTOTITLE](/actions/managing-workflow-runs/re-running-workflows-and-jobs). - {% endif %} - ## Enabling runner diagnostic logging Runner diagnostic logging provides additional log files that contain information about how a runner is executing a job. Two extra log files are added to the log archive: diff --git a/content/actions/security-for-github-actions/security-guides/automatic-token-authentication.md b/content/actions/security-for-github-actions/security-guides/automatic-token-authentication.md index bc72270705d4..0f105441a286 100644 --- a/content/actions/security-for-github-actions/security-guides/automatic-token-authentication.md +++ b/content/actions/security-for-github-actions/security-guides/automatic-token-authentication.md @@ -92,7 +92,7 @@ The following table shows the permissions granted to the `GITHUB_TOKEN` by defau | {% endif %} | | issues | read/write | none | read | | metadata | read | read | read | -| packages | read/write | {% ifversion actions-default-workflow-permissions-restrictive %}read{% else %}none{% endif %} | read | +| packages | read/write | read | read | | pages | read/write | none | read | | pull-requests | read/write | none | read | | repository-projects | read/write | none | read | diff --git a/content/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions.md b/content/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions.md index 72baa66deb2e..75be3eb699f8 100644 --- a/content/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions.md +++ b/content/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions.md @@ -352,8 +352,6 @@ You should also consider the environment of the self-hosted runner machines: Some customers might attempt to partially mitigate these risks by implementing systems that automatically destroy the self-hosted runner after each job execution. However, this approach might not be as effective as intended, as there is no way to guarantee that a self-hosted runner only runs one job. Some jobs will use secrets as command-line arguments which can be seen by another job running on the same runner, such as `ps x -w`. This can lead to secret leakages. -{% ifversion actions-single-use-tokens %} - ### Using just-in-time runners To improve runner registration security, you can use the REST API to create ephemeral, just-in-time (JIT) runners. These self-hosted runners perform at most one job before being automatically removed from the repository, organization, or enterprise. For more information about configuring JIT runners, see [AUTOTITLE](/rest/actions/self-hosted-runners#create-configuration-for-a-just-in-time-runner-for-an-organization). @@ -367,8 +365,6 @@ Once you have the config file from the REST API response, you can pass it to the ./run.sh --jitconfig ${encoded_jit_config} ``` -{% endif %} - ### Planning your management strategy for self-hosted runners A self-hosted runner can be added to various levels in your {% data variables.product.prodname_dotcom %} hierarchy: the enterprise, organization, or repository level. This placement determines who will be able to manage the runner: diff --git a/content/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-google-cloud-platform.md b/content/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-google-cloud-platform.md index 9839084bd93a..cbf49af87bdc 100644 --- a/content/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-google-cloud-platform.md +++ b/content/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-google-cloud-platform.md @@ -29,6 +29,16 @@ This guide gives an overview of how to configure GCP to trust {% data variables. {% data reusables.actions.oidc-on-ghecom %} +{% ifversion ghes %} +{% data reusables.actions.oidc-endpoints %} + + + > [!NOTE] + > Google Cloud Platform does not have fixed IP ranges defined for these endpoints. + +* Make sure that the value of the issuer claim that's included with the JSON Web Token (JWT) is set to a publicly routable URL. For more information, see [AUTOTITLE](/enterprise-server@latest/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect). +{% endif %} + ## Adding a Google Cloud Workload Identity Provider To configure the OIDC identity provider in GCP, you will need to perform the following configuration. For instructions on making these changes, refer to [the GCP documentation](https://github.com/google-github-actions/auth). diff --git a/content/actions/security-for-github-actions/using-artifact-attestations/enforcing-artifact-attestations-with-a-kubernetes-admission-controller.md b/content/actions/security-for-github-actions/using-artifact-attestations/enforcing-artifact-attestations-with-a-kubernetes-admission-controller.md index b34148e5cb28..01a913b94008 100644 --- a/content/actions/security-for-github-actions/using-artifact-attestations/enforcing-artifact-attestations-with-a-kubernetes-admission-controller.md +++ b/content/actions/security-for-github-actions/using-artifact-attestations/enforcing-artifact-attestations-with-a-kubernetes-admission-controller.md @@ -9,6 +9,8 @@ redirect_from: - /actions/security-guides/enforcing-artifact-attestations-with-a-kubernetes-admission-controller --- +>[!NOTE] Before proceeding, ensure you have enabled build provenance for container images, including setting the `push-to-registry` attribute in the [`attest-build-provenance` action](https://github.com/actions/attest-build-provenance) as documented in [Generating build provenance for container images](/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds#generating-build-provenance-for-container-images). This is required for the Policy Controller to verify the attestation. + ## About Kubernetes admission controller [Artifact attestations](/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds) enable you to create unfalsifiable provenance and integrity guarantees for the software you build. In turn, people who consume your software can verify where and how your software was built. @@ -19,6 +21,12 @@ Using the open source [Sigstore Policy Controller](https://docs.sigstore.dev/pol To [install the controller](#getting-started-with-kubernetes-admission-controller), we offer [two Helm charts](https://github.com/github/artifact-attestations-helm-charts): one for deploying the Sigstore Policy Controller, and another for loading the GitHub trust root and a default policy. +### About image verification + +When the Policy Controller is installed, it will intercept all image pull requests and verify the attestation for the image. The attestation must be stored in the image registry as an [OCI attached artifact](https://oras.land/docs/concepts/reftypes/) containing a [Sigstore Bundle](https://docs.sigstore.dev/about/bundle/) which contains the attestation and cryptographic material (e.g. certificates and signatures) used to verify the attestation. A verification process is then performed that ensures the image was built with the specified build provenance and matches any policies enabled by the cluster administrator. + +In order for an image to be verifiable, it must have a valid provenance attestation in the registry, which can be done by enabling the `push-to-registry: true` attribute in the `actions/attest-build-provenance` action. See [Generating build provenance for container images](/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds#generating-build-provenance-for-container-images) for more details on how to generate attestations for container images. + ### About trust roots and policies The Sigstore Policy Controller is primarily configured with trust roots and policies, represented by the Custom Resources `TrustRoot` and `ClusterImagePolicy`. A `TrustRoot` represents a trusted distribution channel for the public key material used to verify attestations. A `ClusterImagePolicy` represents a policy for enforcing attestations on images. @@ -47,7 +55,7 @@ First, install the Helm chart that deploys the Sigstore Policy Controller: helm upgrade policy-controller --install --atomic \ --create-namespace --namespace artifact-attestations \ oci://ghcr.io/github/artifact-attestations-helm-charts/policy-controller \ - --version v0.10.0-github9 + --version v0.12.0-github10 ``` This installs the Policy Controller into the `artifact-attestations` namespace. At this point, no policies have been configured, and it will not enforce any attestations. @@ -131,7 +139,7 @@ To see the full set of options you may configure with the Helm chart, you can ru For policy controller options: ```bash copy -helm show values oci://ghcr.io/github/artifact-attestations-helm-charts/policy-controller --version v0.10.0-github9 +helm show values oci://ghcr.io/github/artifact-attestations-helm-charts/policy-controller --version v0.12.0-github10 ``` For trust policy options: diff --git a/content/actions/sharing-automations/creating-actions/creating-a-composite-action.md b/content/actions/sharing-automations/creating-actions/creating-a-composite-action.md index ed1f8397c398..faa79ccf0324 100644 --- a/content/actions/sharing-automations/creating-actions/creating-a-composite-action.md +++ b/content/actions/sharing-automations/creating-actions/creating-a-composite-action.md @@ -155,7 +155,7 @@ Before you begin, you'll create a repository on {% data variables.product.github The following workflow code uses the completed hello world action that you made in [AUTOTITLE](/actions/creating-actions/creating-a-composite-action#creating-an-action-metadata-file). -Copy the workflow code into a `.github/workflows/main.yml` file in another repository, replacing `actions` and `SHA` with the repository owner and the SHA of the commit you want to use, respectively. You can also replace the `who-to-greet` input with your name. +Copy the workflow code into a `.github/workflows/main.yml` file in another repository, replacing `OWNER` and `SHA` with the repository owner and the SHA of the commit you want to use, respectively. You can also replace the `who-to-greet` input with your name. ```yaml copy on: [push] diff --git a/content/actions/sharing-automations/required-workflows.md b/content/actions/sharing-automations/required-workflows.md index c443c5dbbc76..b8580826f40e 100644 --- a/content/actions/sharing-automations/required-workflows.md +++ b/content/actions/sharing-automations/required-workflows.md @@ -16,7 +16,7 @@ redirect_from: ## Overview -You can configure a workflow that must run in repositories in an organization for all pull requests opened against {% ifversion actions-required-workflow-improvements %}any target branch{% else %}the default branch{% endif %}. Required workflows allow you to implement organization-wide CI/CD policies that apply to current and future repositories. A required workflow is triggered by {% ifversion actions-required-workflow-improvements %}`pull_request` and `pull_request_target` default events{% else %}pull request events{% endif %} and appears as a required status check, which blocks the ability to merge the pull request until the required workflow succeeds. +You can configure a workflow that must run in repositories in an organization for all pull requests opened against any target branch. Required workflows allow you to implement organization-wide CI/CD policies that apply to current and future repositories. A required workflow is triggered by `pull_request` and `pull_request_target` default events and appears as a required status check, which blocks the ability to merge the pull request until the required workflow succeeds. Required workflows are not the same as reusable workflows. Reusable workflows can be called by another workflow. Required workflows are enforced on repositories by an organization owner. diff --git a/content/actions/sharing-automations/reusing-workflows.md b/content/actions/sharing-automations/reusing-workflows.md index 6832eb80beef..ed96fc35f5ef 100644 --- a/content/actions/sharing-automations/reusing-workflows.md +++ b/content/actions/sharing-automations/reusing-workflows.md @@ -104,7 +104,6 @@ Called workflows that are owned by the same user or organization{% ifversion ghe * You can call a maximum of 20 unique reusable workflows from a single workflow file. {% endif %} {% ifversion private-actions %}{% else %}- Reusable workflows stored within a private repository can only be used by workflows within the same repository.{% endif %} -{% ifversion actions-reusable-workflow-matrix %}{% else %}* The `strategy` property is not supported in any job that calls a reusable workflow.{% endif %} * Any environment variables set in an `env` context defined at the workflow level in the caller workflow are not propagated to the called workflow. For more information, see [AUTOTITLE](/actions/learn-github-actions/variables) and [AUTOTITLE](/actions/learn-github-actions/contexts#env-context). * Similarly, environment variables set in the `env` context, defined in the called workflow, are not accessible in the `env` context of the caller workflow. Instead, you must use outputs of the reusable workflow. For more information, see [Using outputs from a reusable workflow](#using-outputs-from-a-reusable-workflow). * To reuse variables in multiple workflows, set them at the organization, repository, or environment levels and reference them using the `vars` context. For more information see [AUTOTITLE](/actions/learn-github-actions/variables) and [AUTOTITLE](/actions/learn-github-actions/contexts#vars-context). @@ -142,16 +141,11 @@ You can define inputs and secrets, which can be passed from the caller workflow {% endraw %} For details of the syntax for defining inputs and secrets, see [`on.workflow_call.inputs`](/actions/using-workflows/workflow-syntax-for-github-actions#onworkflow_callinputs) and [`on.workflow_call.secrets`](/actions/using-workflows/workflow-syntax-for-github-actions#onworkflow_callsecrets). - {% ifversion actions-inherit-secrets-reusable-workflows %} 1. In the reusable workflow, reference the input or secret that you defined in the `on` key in the previous step. > [!NOTE] > If the secrets are inherited by using `secrets: inherit` in the calling workflow, you can reference them even if they are not explicitly defined in the `on` key. For more information, see [AUTOTITLE](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecretsinherit). - {%- else %} -1. In the reusable workflow, reference the input or secret that you defined in the `on` key in the previous step. - {%- endif %} - {% raw %} ```yaml @@ -225,8 +219,6 @@ You can call multiple workflows, referencing each in a separate job. {% data reusables.actions.pass-inputs-to-reusable-workflows %} -{% ifversion actions-reusable-workflow-matrix %} - ### Using a matrix strategy with a reusable workflow Jobs using the matrix strategy can call a reusable workflow. @@ -249,7 +241,6 @@ jobs: ``` {% endraw %} -{% endif %} ### Supported keywords for jobs that call a reusable workflow @@ -261,12 +252,8 @@ When you call a reusable workflow, you can only use the following keywords in th * [`jobs..with.`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idwithinput_id) * [`jobs..secrets`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecrets) * [`jobs..secrets.`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecretssecret_id) -{%- ifversion actions-inherit-secrets-reusable-workflows %} * [`jobs..secrets.inherit`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecretsinherit) -{%- endif %} -{%- ifversion actions-reusable-workflow-matrix %} * [`jobs..strategy`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstrategy) -{%- endif %} * [`jobs..needs`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idneeds) * [`jobs..if`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idif) * [`jobs..concurrency`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idconcurrency) @@ -368,10 +355,10 @@ For information on how to use the API to determine which workflow files were inv ## Using outputs from a reusable workflow -A reusable workflow may generate data that you want to use in the caller workflow. To use these outputs, you must specify them as the outputs of the reusable workflow.{% ifversion actions-reusable-workflow-matrix %} +A reusable workflow may generate data that you want to use in the caller workflow. To use these outputs, you must specify them as the outputs of the reusable workflow. If a reusable workflow that sets an output is executed with a matrix strategy, the output will be the output set by the last successful completing reusable workflow of the matrix which actually sets a value. -That means if the last successful completing reusable workflow sets an empty string for its output, and the second last successful completing reusable workflow sets an actual value for its output, the output will contain the value of the second last completing reusable workflow.{% endif %} +That means if the last successful completing reusable workflow sets an empty string for its output, and the second last successful completing reusable workflow sets an actual value for its output, the output will contain the value of the second last completing reusable workflow. The following reusable workflow has a single job containing two steps. In each of these steps we set a single word as the output: "hello" and "world." In the `outputs` section of the job, we map these step outputs to job outputs called: `output1` and `output2`. In the `on.workflow_call.outputs` section we then define two outputs for the workflow itself, one called `firstword` which we map to `output1`, and one called `secondword` which we map to `output2`. diff --git a/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-go.md b/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-go.md index 60b99176a879..031d0655569c 100644 --- a/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-go.md +++ b/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-go.md @@ -148,9 +148,8 @@ You can use `go get` to install dependencies: ### Caching dependencies -You can cache and restore dependencies using the [`setup-go` action](https://github.com/actions/setup-go). By default, caching is {% ifversion actions-setup-go-default-cache-enabled %}enabled when using the `setup-go` action.{% else %}disabled, but you can set the `cache` parameter to `true` to enable it.{% endif %} +You can cache and restore dependencies using the [`setup-go` action](https://github.com/actions/setup-go). By default, caching is enabled when using the `setup-go` action. -{% ifversion actions-setup-go-default-cache-enabled %} The `setup-go` action searches for the dependency file, `go.sum`, in the repository root and uses the hash of the dependency file as a part of the cache key. You can use the `cache-dependency-path` parameter for cases when multiple dependency files are used, or when they are located in different subdirectories. @@ -163,30 +162,6 @@ You can use the `cache-dependency-path` parameter for cases when multiple depend cache-dependency-path: subdir/go.sum ``` -{% else %} - -When caching is enabled, the `setup-go` action searches for the dependency file, `go.sum`, in the repository root and uses the hash of the dependency file as a part of the cache key. - -```yaml copy - - name: Setup Go - uses: {% data reusables.actions.action-setup-go %} - with: - go-version: '1.21.x' - cache: true -``` - -Alternatively, you can use the `cache-dependency-path` parameter for cases when multiple dependency files are used, or when they are located in different subdirectories. - -```yaml copy - - uses: {% data reusables.actions.action-setup-go %} - with: - go-version: '1.17' - cache: true - cache-dependency-path: subdir/go.sum -``` - -{% endif %} - If you have a custom requirement or need finer controls for caching, you can use the [`cache` action](https://github.com/marketplace/actions/cache). For more information, see [AUTOTITLE](/actions/using-workflows/caching-dependencies-to-speed-up-workflows). ## Building and testing your code diff --git a/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-java-with-maven.md b/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-java-with-maven.md index 13230c3a7323..4cd3b9aeccab 100644 --- a/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-java-with-maven.md +++ b/content/actions/use-cases-and-examples/building-and-testing/building-and-testing-java-with-maven.md @@ -117,7 +117,7 @@ You can cache your dependencies to speed up your workflow runs. After a successf ```yaml copy steps: - uses: {% data reusables.actions.action-checkout %} - - name: Set up JDK 11 + - name: Set up JDK 17 uses: {% data reusables.actions.action-setup-java %} with: java-version: '17' diff --git a/content/actions/writing-workflows/choosing-what-your-workflow-does/caching-dependencies-to-speed-up-workflows.md b/content/actions/writing-workflows/choosing-what-your-workflow-does/caching-dependencies-to-speed-up-workflows.md index c12de102babf..426c578c9525 100644 --- a/content/actions/writing-workflows/choosing-what-your-workflow-does/caching-dependencies-to-speed-up-workflows.md +++ b/content/actions/writing-workflows/choosing-what-your-workflow-does/caching-dependencies-to-speed-up-workflows.md @@ -257,22 +257,14 @@ For example, if a pull request contains a `feature` branch and targets the defau ## Usage limits and eviction policy -{% 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-policy %} +{% 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 ghes %}. 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-policy %} -{% 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 [AUTOTITLE](/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 [AUTOTITLE](/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 [AUTOTITLE](/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). +{% data reusables.actions.cache-eviction-process %} 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).{% ifversion ghes %} You can also increase the cache size limit for a repository. For more information, see [AUTOTITLE](/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 %} - ## Managing caches -{% ifversion actions-cache-ui %} - To manage caches created from your workflows, you can: * View a list of all cache entries for a repository. @@ -289,16 +281,6 @@ There are multiple ways to manage caches for your repositories: > [!NOTE] > If you are doing this manually, ensure you have version 2.32.0 or higher of the CLI installed. -{% 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 [AUTOTITLE](/rest/actions/cache). - -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 [AUTOTITLE](/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. @@ -324,12 +306,6 @@ Users with `write` access to a repository can use the {% data variables.product. ![Screenshot of the list of cache entries. A trash can icon, used to delete a cache, is highlighted with a dark orange outline.](/assets/images/help/repository/actions-cache-delete.png) -{% endif %} - -{% endif %} - -{% ifversion actions-cache-list-delete-apis %} - ### Force deleting cache entries Caches have branch scope restrictions in place, which means some caches have limited usage options. For more information on cache scope restrictions, see [Restrictions for accessing a cache](#restrictions-for-accessing-a-cache), earlier in this article. If caches limited to a specific branch are using a lot of storage quota, it may cause caches from the `default` branch to be created and deleted at a high frequency. @@ -371,5 +347,3 @@ jobs: ``` Alternatively, you can use the API to automatically list or delete all caches on your own cadence. For more information, see [AUTOTITLE](/rest/actions/cache#about-the-cache-in-github-actions). - -{% endif %} diff --git a/content/actions/writing-workflows/choosing-what-your-workflow-does/control-the-concurrency-of-workflows-and-jobs.md b/content/actions/writing-workflows/choosing-what-your-workflow-does/control-the-concurrency-of-workflows-and-jobs.md index 2ea67b43254c..05f8a2c4cbcd 100644 --- a/content/actions/writing-workflows/choosing-what-your-workflow-does/control-the-concurrency-of-workflows-and-jobs.md +++ b/content/actions/writing-workflows/choosing-what-your-workflow-does/control-the-concurrency-of-workflows-and-jobs.md @@ -9,6 +9,7 @@ versions: redirect_from: - /actions/using-jobs/using-concurrency - /actions/writing-workflows/choosing-what-your-workflow-does/using-concurrency + - /early-access/actions/running-additional-jobs-in-github-actions --- {% data reusables.actions.enterprise-github-hosted-runners %} diff --git a/content/actions/writing-workflows/quickstart.md b/content/actions/writing-workflows/quickstart.md index c5e0b1706ecb..22072df36d2e 100644 --- a/content/actions/writing-workflows/quickstart.md +++ b/content/actions/writing-workflows/quickstart.md @@ -5,6 +5,7 @@ allowTitleToDifferFromFilename: true redirect_from: - /actions/getting-started-with-github-actions/starting-with-preconfigured-workflow-templates - /actions/quickstart + - /actions/getting-started-with-github-actions versions: fpt: '*' ghes: '*' diff --git a/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/accessing-the-administrative-shell-ssh.md b/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/accessing-the-administrative-shell-ssh.md index 79413075d81b..59efbdced6a7 100644 --- a/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/accessing-the-administrative-shell-ssh.md +++ b/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/accessing-the-administrative-shell-ssh.md @@ -66,7 +66,7 @@ Host HOSTNAME ## Accessing the administrative shell using the local console -In an emergency situation, for example if SSH is unavailable, you can access the administrative shell locally. Sign in as the `admin` user and use the password established during initial setup of {% data variables.product.prodname_ghe_server %}. +In an emergency situation, for example if SSH is unavailable, you can access the administrative shell locally if your hypervisor provides console access. Press `Alt` + `F2` to switch to an interactive prompt, then sign in as the `admin` user and use the password established during initial setup of {% data variables.product.prodname_ghe_server %}. ## Access limitations for the administrative shell diff --git a/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md b/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md index f08d536e6dc1..f4950e63333f 100644 --- a/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md +++ b/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md @@ -282,7 +282,7 @@ ghe-org-admin-promote -a ### ghe-reactivate-admin-login -Use this command to immediately unlock the {% data variables.enterprise.management_console %} after {% ifversion enterprise-authentication-rate-limits %}an account lockout. To configure authentication policies for {% data variables.location.product_location %}, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-rate-limits#configuring-authentication-policy-rate-limits).{% else %}10 failed login attempts in the span of 10 minutes.{% endif %} +Use this command to immediately unlock the {% data variables.enterprise.management_console %} after an account lockout. To configure authentication policies for {% data variables.location.product_location %}, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-rate-limits#configuring-authentication-policy-rate-limits). ```shell ghe-reactivate-admin-login @@ -376,7 +376,7 @@ inactive ### ghe-set-password -This utility allows you to set a new {% ifversion enterprise-management-console-multi-user-auth %}root site administrator {% endif %}password for authentication to the {% data variables.enterprise.management_console %}. For more information, see [AUTOTITLE](/admin/administering-your-instance/administering-your-instance-from-the-web-ui/managing-access-to-the-management-console). +This utility allows you to set a new root site administrator password for authentication to the {% data variables.enterprise.management_console %}. For more information, see [AUTOTITLE](/admin/administering-your-instance/administering-your-instance-from-the-web-ui/managing-access-to-the-management-console). ```shell ghe-set-password @@ -562,8 +562,6 @@ ghe-webhook-logs -g DELIVERY_GUID ## Clustering -{% ifversion cluster-rebalancing %} - ### ghe-cluster-balance This utility allows you to enforce an even distribution of allocations across your cluster nodes by checking the status of your cluster's allocations, then rebalancing problematic allocations. For more information, see [AUTOTITLE](/admin/enterprise-management/configuring-clustering/rebalancing-cluster-workloads). @@ -608,8 +606,6 @@ To display a short description of the utility and any valid subcommands: ghe-cluster-balance help ``` -{% endif %} - ### ghe-cluster-maintenance With the `ghe-cluster-maintenance` utility, you can set or unset maintenance mode for every node in a cluster. @@ -621,12 +617,10 @@ $ ghe-cluster-maintenance -q # Queries the current mode $ ghe-cluster-maintenance -s # Sets maintenance mode -{%- ifversion custom-maintenance-mode-message %} $ ghe-cluster-maintenance -s "MESSAGE" # Sets maintenance mode with a custom message $ ghe-cluster-maintenance -m "MESSAGE" # Updates the custom message -{%- endif %} $ ghe-cluster-maintenance -u # Unsets maintenance mode ``` @@ -674,7 +668,7 @@ ssh -p 122 admin@HOSTNAME -- 'ghe-cluster-support-bundle -o' > cluster-support-b To create a standard bundle including data from the last 2 days: ```shell -ssh -p 122 admin@HOSTNAME -- "ghe-cluster-support-bundle -p {% ifversion bundle-cli-syntax-no-quotes %}2days {% endif %} -o" > support-bundle.tgz +ssh -p 122 admin@HOSTNAME -- "ghe-cluster-support-bundle -p 2days -o" > support-bundle.tgz ``` To create an extended bundle including data from the last 8 days: @@ -1295,7 +1289,7 @@ ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -o' > support-bundle.tgz To create a standard bundle including data from the last 2 days: ```shell -ssh -p 122 admin@HOSTNAME -- "ghe-support-bundle -p {% ifversion bundle-cli-syntax-no-quotes %}2days {% endif %} -o" > support-bundle.tgz +ssh -p 122 admin@HOSTNAME -- "ghe-support-bundle -p 2days -o" > support-bundle.tgz ``` To create an extended bundle including data from the last 8 days: diff --git a/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/about-the-management-console.md b/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/about-the-management-console.md index 6e446b66e8cb..6726adc88574 100644 --- a/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/about-the-management-console.md +++ b/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/about-the-management-console.md @@ -20,7 +20,7 @@ The {% data variables.enterprise.management_console %} allows you to manage the You can always reach the {% data variables.enterprise.management_console %} using {% data variables.location.product_location %}'s IP address, even when the instance is in maintenance mode, or there is a critical application failure or hostname or SSL misconfiguration. -To access the {% data variables.enterprise.management_console %}, {% ifversion enterprise-management-console-multi-user-auth %}you can use the root site administrator password established during initial setup of {% data variables.location.product_location %} or log in as a {% data variables.enterprise.management_console %} user. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/accessing-the-management-console). {% else %}you must use the administrator password established during initial setup of {% data variables.location.product_location %}. {% endif %}You must also be able to connect to the virtual machine host on port 8443. If you're having trouble reaching the {% data variables.enterprise.management_console %}, please check intermediate firewall and security group configurations. +To access the {% data variables.enterprise.management_console %}, you can use the root site administrator password established during initial setup of {% data variables.location.product_location %} or log in as a {% data variables.enterprise.management_console %} user. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/accessing-the-management-console). You must also be able to connect to the virtual machine host on port 8443. If you're having trouble reaching the {% data variables.enterprise.management_console %}, please check intermediate firewall and security group configurations. The {% data variables.enterprise.management_console %} password hash is stored in `/data/user/common/secrets.conf`. If high availability or clustering is configured, the file is automatically synced from the primary node to any additional nodes. Any change to the primary's password will automatically be replicated to all of the instance's nodes. For more information about high availability, see [AUTOTITLE](/admin/enterprise-management/configuring-high-availability/about-high-availability-configuration). @@ -35,10 +35,10 @@ When someone performs an action in the {% data variables.enterprise.management_c In the {% data variables.enterprise.management_console %}, you can perform administrative tasks for {% data variables.location.product_location %}, including: * **Initial setup:** Walk through the initial setup process when first launching {% data variables.location.product_location %} by visiting {% data variables.location.product_location %}'s IP address in your browser. -{%- ifversion enterprise-management-console-multi-user-auth %} + * **Identity and access management:** Improve the security of {% data variables.location.product_location %} by creating dedicated user accounts for the {% data variables.enterprise.management_console %}. {% ifversion management-console-editor %}The root site administrator account can control these user accounts' access by assigning either the editor or operator role. {% endif %}For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console).{% ifversion management-console-editor %} {% data reusables.enterprise.editor-role-note %}{% endif %} -{%- endif %} + * **Configuring authentication policies for the {% data variables.enterprise.management_console %}:** Set rate limits for login attempts, and the lockout duration if someone exceeds the rate limit. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console#configuring-rate-limits-for-authentication-to-the-management-console). * **Configuring basic settings for your instance:** Configure DNS, hostname, SSL, user authentication, email, monitoring services, and log forwarding on the Settings page. * **Scheduling maintenance windows:** Take {% data variables.location.product_location %} offline while performing maintenance using the {% data variables.enterprise.management_console %} or administrative shell. diff --git a/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/managing-access-to-the-management-console.md b/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/managing-access-to-the-management-console.md index 605b41f3d099..a459e558a786 100644 --- a/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/managing-access-to-the-management-console.md +++ b/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/managing-access-to-the-management-console.md @@ -1,7 +1,7 @@ --- title: Managing access to the Management Console shortTitle: Manage Management Console access -intro: '{% ifversion enterprise-management-console-multi-user-auth %}You can increase the security of {% data variables.location.product_location %} by creating or deleting {% data variables.enterprise.management_console %} users. As the root site administrator, you {% else %}You {% endif %}can access the {% data variables.enterprise.management_console %} as well as configure {% data variables.enterprise.management_console %} authentication rate limits.' +intro: 'You can increase the security of {% data variables.location.product_location %} by creating or deleting {% data variables.enterprise.management_console %} users. As the root site administrator, you can access the {% data variables.enterprise.management_console %} as well as configure {% data variables.enterprise.management_console %} authentication rate limits.' redirect_from: - /admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console versions: @@ -18,8 +18,6 @@ topics: {% ifversion ghes-manage-api-cli-extension %}You can also use the `gh es` {% data variables.product.prodname_cli %} extension to manage the root site administrator password, which controls access to the Management Console. For more information, see the [GH ES CLI usage documentation](https://github.com/github/gh-es/blob/main/USAGE.md#gh-es-access-set-password) and [AUTOTITLE](/admin/administering-your-instance/administering-your-instance-from-the-command-line/administering-your-instance-using-the-github-cli).{% endif %} -{% ifversion enterprise-management-console-multi-user-auth %} - ## Types of {% data variables.enterprise.management_console %} accounts There are two types of user accounts for the {% data variables.enterprise.management_console %} on a {% data variables.product.product_name %} instance. The root site administrator account authenticates with a password established during the initial setup of {% data variables.location.product_location %}. @@ -72,10 +70,6 @@ If you have not configured email notifications for {% data variables.location.pr 1. To copy the invitation link, click {% octicon "link" aria-label="Copy invitation link" %} on any {% data variables.enterprise.management_console %} user account. 1. Send the invitation link to the {% data variables.enterprise.management_console %} user. The invitation link will lead the user through the final account setup steps. -{% endif %} - -{% ifversion enterprise-authentication-rate-limits %} - ## Configuring rate limits for authentication to the {% data variables.enterprise.management_console %} You can configure the lockout time and login attempt limits for the {% data variables.enterprise.management_console %}. @@ -87,5 +81,3 @@ After you configure rate limits and a {% data variables.enterprise.management_co 1. Optionally, under "Lockout time for Management Console users", type a number of minutes to lock the {% data variables.enterprise.management_console %} after too many failed login attempts. When locked out, the root site administrator must be manually unlocked. 1. Optionally, under "Login attempt limit for all users", type a maximum number of failed login attempts to allow before the {% data variables.enterprise.management_console %} is locked. {% data reusables.enterprise_management_console.save-settings %} - -{% endif %} diff --git a/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/troubleshooting-access-to-the-management-console.md b/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/troubleshooting-access-to-the-management-console.md index 037b2f72d61b..3465436aa712 100644 --- a/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/troubleshooting-access-to-the-management-console.md +++ b/content/admin/administering-your-instance/administering-your-instance-from-the-web-ui/troubleshooting-access-to-the-management-console.md @@ -20,18 +20,12 @@ If you experience problems accessing the Management Console, you can try the fol ## Unlocking the {% data variables.enterprise.management_console %} after failed login attempts -The {% data variables.enterprise.management_console %} locks after {% ifversion enterprise-authentication-rate-limits %}the number of failed login attempts configured by your authentication policies. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console#configuring-rate-limits-for-authentication-to-the-management-console).{% else %}ten failed login attempts are made in the span of ten minutes. You must wait for the login screen to automatically unlock before attempting to log in again. The login screen automatically unlocks as soon as the previous ten minute period contains fewer than ten failed login attempts. The counter resets after a successful login occurs.{% endif %} - -{% ifversion enterprise-management-console-multi-user-auth %} +The {% data variables.enterprise.management_console %} locks after the number of failed login attempts configured by your authentication policies. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console#configuring-rate-limits-for-authentication-to-the-management-console). ### Unlocking the root site administrator account -{% endif %} - {% data reusables.enterprise_management_console.unlocking-management-console-with-shell %} -{% ifversion enterprise-management-console-multi-user-auth %} - ### Unlocking a {% data variables.enterprise.management_console %} user account The root site administrator can unlock access to the {% data variables.enterprise.management_console %} for other user accounts. @@ -40,8 +34,6 @@ The root site administrator can unlock access to the {% data variables.enterpris {% data reusables.enterprise_site_admin_settings.click-user-management %} 1. Locked user accounts will appear as "State: blocked". To unblock the user and allow authentication, to the right of the user's details, click {% octicon "law" aria-label="Unblock user" %}. -{%- endif %} - ## Troubleshooting failed connections to the {% data variables.enterprise.management_console %} If you cannot connect to the {% data variables.enterprise.management_console %} on {% data variables.location.product_location %}, you can review the following information to troubleshoot the problem. diff --git a/content/admin/administering-your-instance/configuring-maintenance-mode/enabling-and-scheduling-maintenance-mode.md b/content/admin/administering-your-instance/configuring-maintenance-mode/enabling-and-scheduling-maintenance-mode.md index 932d3beabca4..5abb66194938 100644 --- a/content/admin/administering-your-instance/configuring-maintenance-mode/enabling-and-scheduling-maintenance-mode.md +++ b/content/admin/administering-your-instance/configuring-maintenance-mode/enabling-and-scheduling-maintenance-mode.md @@ -50,12 +50,11 @@ You can perform initial validation of your maintenance operation by configuring 1. In the top navigation bar, click **Maintenance**. ![Screenshot of the header of the {% data variables.enterprise.management_console %}. A tab, labeled "Maintenance", is highlighted with an orange outline.](/assets/images/enterprise/management-console/maintenance-tab.png) -1. Under "Enable and schedule", {% ifversion custom-maintenance-mode-message %}select **Enable maintenance mode**, then {% endif %}decide whether to enable maintenance mode immediately or to schedule a maintenance window for a future time. +1. Under "Enable and schedule", select **Enable maintenance mode**, then decide whether to enable maintenance mode immediately or to schedule a maintenance window for a future time. * To enable maintenance mode immediately, select the dropdown menu and click **now**. * To schedule a maintenance window for a future time, select the dropdown menu and click a start time. {% data reusables.enterprise_management_console.custom-maintenance-message %} -{% ifversion custom-maintenance-mode-message %}1. When you're satisfied with the timing of the window and the optional message, click **Save**. If you selected "now", your instance will be put into maintenance mode immediately. -{% else %}1. When you're satisfied with the timing of the window, select the checkbox next to "Enable maintenance mode". If you selected "now", your instance will be put into maintenance mode immediately.{% endif %} +1. When you're satisfied with the timing of the window and the optional message, click **Save**. If you selected "now", your instance will be put into maintenance mode immediately. {% ifversion ip-exception-list %} @@ -103,8 +102,6 @@ For more information, see [AUTOTITLE](/admin/administering-your-instance/adminis {% endif %} -{% ifversion custom-maintenance-mode-message %} - ## Managing maintenance mode using SSH If you have SSH access, you can use the `ghe-maintenance` command line utility to can set or unset maintenance mode for a {% data variables.product.product_name %} instance with one node, or multiple nodes in a high-availability configuration. For more information, see [AUTOTITLE](/admin/administering-your-instance/administering-your-instance-from-the-command-line/accessing-the-administrative-shell-ssh) and [AUTOTITLE](/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities#ghe-maintenance). @@ -120,14 +117,10 @@ $ ghe-cluster-maintenance -q # Queries the current mode $ ghe-cluster-maintenance -s # Sets maintenance mode -{%- ifversion custom-maintenance-mode-message %} $ ghe-cluster-maintenance -s "MESSAGE" # Sets maintenance mode with a custom message $ ghe-cluster-maintenance -m "MESSAGE" # Updates the custom message -{%- endif %} $ ghe-cluster-maintenance -u # Unsets maintenance mode ``` - -{% endif %} diff --git a/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md b/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md index 55b11c634f5c..0ee16464dd83 100644 --- a/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md +++ b/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md @@ -188,8 +188,6 @@ On an instance in a high-availability configuration, after you restore to new di To remediate after the restoration completes and before starting replication, you can tear down stale UUIDs using `ghe-repl-teardown`. If you need further assistance, visit {% data variables.contact.contact_ent_support %}. -{% ifversion backup-utilities-progress %} - ## Monitoring backup or restoration progress During a backup or restoration operation, you can use the `ghe-backup-progress` utility on your backup host to monitor the operation's progress. The utility prints the progress of each job sequentially. @@ -207,5 +205,3 @@ Optionally, you can run the following command to print the current progress, the ```shell copy bin/ghe-backup-progress --once ``` - -{% endif %} diff --git a/content/admin/configuring-packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md b/content/admin/configuring-packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md index c881ff868719..bafc6c793841 100644 --- a/content/admin/configuring-packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md +++ b/content/admin/configuring-packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md @@ -4,7 +4,7 @@ intro: 'You can migrate Docker images previously stored in the Docker registry o product: '{% data reusables.gated-features.packages %}' permissions: 'Enterprise owners can migrate Docker images to the {% data variables.product.prodname_container_registry %}.' versions: - feature: docker-ghcr-enterprise-migration + ghes: '*' shortTitle: Migrate to Container registry topics: - Containers diff --git a/content/admin/configuring-settings/configuring-github-connect/about-github-connect.md b/content/admin/configuring-settings/configuring-github-connect/about-github-connect.md index bef96dd61e2a..2cbf3c6dfdc3 100644 --- a/content/admin/configuring-settings/configuring-github-connect/about-github-connect.md +++ b/content/admin/configuring-settings/configuring-github-connect/about-github-connect.md @@ -105,9 +105,7 @@ Additional data is transmitted if you enable individual features of {% data vari | {% ifversion ghes %} | | {% data variables.product.prodname_dependabot_alerts %} | Vulnerability alerts | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %} | {% data variables.product.product_name %} | | {% endif %} | -| {% ifversion dependabot-updates-github-connect %} | | {% data variables.product.prodname_dependabot_updates %} | Dependencies and the metadata for each dependency's repository

If a dependency is stored in a private repository on {% data variables.product.prodname_dotcom_the_website %}, data will only be transmitted if {% data variables.product.prodname_dependabot %} is configured and authorized to access that repository. | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %} | {% data variables.product.product_name %} | -| {% endif %} | | {% data variables.product.prodname_dotcom_the_website %} actions | Name of action, action (YAML file from {% data variables.product.prodname_marketplace %}) | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %}

From {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %} | | {% ifversion server-statistics %} | | {% data variables.product.prodname_server_statistics %} | Aggregate metrics about your usage of {% data variables.product.prodname_ghe_server %}. For the complete list of metrics, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected). | From {% data variables.product.product_name %} to {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %} | diff --git a/content/admin/configuring-settings/configuring-github-connect/enabling-dependabot-for-your-enterprise.md b/content/admin/configuring-settings/configuring-github-connect/enabling-dependabot-for-your-enterprise.md index 964c5da6ceb6..6b4d16d51402 100644 --- a/content/admin/configuring-settings/configuring-github-connect/enabling-dependabot-for-your-enterprise.md +++ b/content/admin/configuring-settings/configuring-github-connect/enabling-dependabot-for-your-enterprise.md @@ -87,8 +87,6 @@ Before you can enable {% data variables.product.prodname_dependabot_alerts %}, y You can now enable {% data variables.product.prodname_dependabot_alerts %} for all existing or new private and internal repositories in the enterprise settings page for {% ifversion code-security-wording-only-enterprise %}"Code security."{% else %}"Code security and analysis."{% endif %} Alternatively, repository administrators and organization owners can enable {% data variables.product.prodname_dependabot_alerts %} for each repository and organization. Public repositories are always enabled by default. For more information, see [AUTOTITLE](/enterprise-server@latest/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts). -{% ifversion dependabot-updates-github-connect %} - ## Enabling {% data variables.product.prodname_dependabot_updates %} Before you can enable {% data variables.product.prodname_dependabot_updates %}: @@ -98,13 +96,9 @@ Before you can enable {% data variables.product.prodname_dependabot_updates %}: {% data variables.product.prodname_dependabot_updates %} are not supported on {% data variables.product.product_name %} if your enterprise uses clustering. -{% ifversion ghes %} - > [!NOTE] > After you enable the dependency graph, you can use the [{% data variables.product.prodname_dependabot %} action](https://github.com/github/dependabot-action). The action will raise an error if any vulnerabilities or invalid licenses are being introduced. {% data reusables.actions.action-bundled-actions %} -{% endif %} - {% data reusables.enterprise_site_admin_settings.sign-in %} {% data reusables.enterprise_site_admin_settings.access-settings %} {% data reusables.enterprise_site_admin_settings.management-console %} @@ -116,11 +110,7 @@ Before you can enable {% data variables.product.prodname_dependabot_updates %}: {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.github-connect-tab %} 1. Under "{% data variables.product.prodname_dependabot %}", to the right of "Users can easily upgrade to non-vulnerable open source code dependencies", click **Enable**. -{% endif %} -{% ifversion ghes %} When you enable {% data variables.product.prodname_dependabot_alerts %}, you should consider also setting up {% data variables.product.prodname_actions %} for {% data variables.product.prodname_dependabot_security_updates %}. This feature allows developers to fix vulnerabilities in their dependencies. For more information, see [AUTOTITLE](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates). If you need enhanced security, we recommend configuring {% data variables.product.prodname_dependabot %} to use private registries. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot#configuring-private-registries). - -{% endif %} diff --git a/content/admin/configuring-settings/configuring-github-connect/enabling-unified-search-for-your-enterprise.md b/content/admin/configuring-settings/configuring-github-connect/enabling-unified-search-for-your-enterprise.md index 54059d484930..fbe8dd199e39 100644 --- a/content/admin/configuring-settings/configuring-github-connect/enabling-unified-search-for-your-enterprise.md +++ b/content/admin/configuring-settings/configuring-github-connect/enabling-unified-search-for-your-enterprise.md @@ -44,7 +44,7 @@ Before you can enable {% data variables.enterprise.prodname_unified_search %}, y {% data reusables.enterprise-accounts.github-connect-tab %} 1. To the right of "Unified search", click **Enable**. - ![Screenshot of the "Unified search" option on the GitHub Connect page. The "Enable" button is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/github-dotcom-enable-search.png) + ![Screenshot of the "Unified search" for public repositories option. The "Enable" button is outlined in orange.](/assets/images/enterprise/site-admin-settings/github-dotcom-enable-search.png) 1. Optionally, to the right of "Users can search private repositories on ENTERPRISE ACCOUNT when searching from Enterprise Server", click **Enable**. - ![Screenshot of the "Unified search" option on the GitHub Connect page. To the right of the setting to allow search of private repositories, the "Enable" button is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/enable-private-search.png) + ![Screenshot of the "Unified search" option for private repositories. To the right of the setting, the "Enable" button is outlined in orange.](/assets/images/enterprise/site-admin-settings/enable-private-search.png) diff --git a/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-applications.md b/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-applications.md index 0b73fa7ecc0c..e7e6d3a45092 100644 --- a/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-applications.md +++ b/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-applications.md @@ -36,7 +36,6 @@ You can enable a retention policy for checks, actions, and associated data by se 1. Under "Delete threshold (days)", type the number of days for the deletion threshold. An archived check exists in an archived state for the number of days specified here. After this threshold, the check will be permanently deleted. {% data reusables.enterprise_management_console.save-settings %} -{% ifversion azure-maps %} {% ifversion ghes < 3.13 %} ## Enabling interactive maps @@ -44,4 +43,3 @@ You can enable a retention policy for checks, actions, and associated data by se You can enable the display of interactive maps in the web interface for users of {% data variables.location.product_location %}. For more information, see [AUTOTITLE](/admin/configuration/configuring-user-applications-for-your-enterprise/configuring-interactive-maps). {% endif %} -{% endif %} diff --git a/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-email-for-notifications.md b/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-email-for-notifications.md index d23c23ea1960..449b0bd6798d 100644 --- a/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-email-for-notifications.md +++ b/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-email-for-notifications.md @@ -25,8 +25,8 @@ shortTitle: Configure email notifications ## Configuring SMTP for your enterprise {% data reusables.enterprise_site_admin_settings.email-settings %} -1. Select **Enable email**. This will enable both outbound and inbound email. However, for inbound email to work you will also need to configure your DNS settings as described below in "[Configuring DNS and firewall -settings to allow incoming emails](#configuring-dns-and-firewall-settings-to-allow-incoming-emails)." +1. Select **Enable email**. This will enable both outbound and inbound email. However, for inbound email to work you will also need to configure your DNS settings as described below in [Configuring DNS and firewall +settings to allow incoming emails](#configuring-dns-and-firewall-settings-to-allow-incoming-emails). 1. Type the settings for your SMTP server. * In the **Server address** field, type the address of your SMTP server. * In the **Port** field, type the port that your SMTP server uses to send email. diff --git a/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-interactive-maps.md b/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-interactive-maps.md index 1e2c9986936c..02ee302ab2b2 100644 --- a/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-interactive-maps.md +++ b/content/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-interactive-maps.md @@ -4,7 +4,7 @@ intro: 'You can enable the display of interactive maps in the web interface for shortTitle: Configure interactive maps permissions: 'People with access to the {% data variables.enterprise.management_console %} can configure interactive maps.' versions: - feature: azure-maps + ghes: '*' type: how_to topics: - Enterprise @@ -18,33 +18,27 @@ You can allow users of {% data variables.location.product_location %} to create To enable interactive maps, you must provide authentication credentials for Azure Maps. -{% ifversion azure-maps-auth-2023 %} {% ifversion ghes < 3.13 %} > [!WARNING] > Authentication with Azure Maps using an API token is {% data variables.release-phases.retired %} in {% data variables.product.product_name %} {{ allVersions[currentVersion].currentRelease }}.{% ifversion ghes = 3.10 %}4{% elsif ghes = 3.11 %}1{% endif %} and later. If you upgrade to the latest release of {% data variables.product.product_name %} on an instance already configured to authenticate with an API token, interactive maps will be disabled. You must reconfigure authentication using role-based access control (RBAC) for an application on a Microsoft Entra ID (previously known as Azure AD) tenant. {% data reusables.enterprise.azure-maps-auth-deprecation-link %} -{% endif %} {% endif %} ## Prerequisites -{% ifversion azure-maps-auth-2023 %} - {% ifversion ghes < 3.12 %} The following prerequisites apply if your instance runs {% data variables.product.product_name %} {{ allVersions[currentVersion].currentRelease }}.{% ifversion ghes = 3.10 %}4{% elsif ghes = 3.11 %}1{% endif %} or later. {% endif %} -* To configure interactive maps for your instance, you must have {% ifversion azure-maps-auth-2023 %}administrative access to a tenant in Microsoft Entra ID. For more information, contact the administrator for Microsoft resources at your company, or see [Quickstart: Create a new tenant in Microsoft Entra ID](https://learn.microsoft.com/entra/fundamentals/create-new-tenant) on Microsoft Learn{% else %}an API token for Azure Maps{% endif %}. +* To configure interactive maps for your instance, you must have administrative access to a tenant in Microsoft Entra ID. For more information, contact the administrator for Microsoft resources at your company, or see [Quickstart: Create a new tenant in Microsoft Entra ID](https://learn.microsoft.com/entra/fundamentals/create-new-tenant) on Microsoft Learn. * You must know the tenant ID for your tenant in Entra ID. For more information, see [Get subscription and tenant IDs in the Azure portal](https://learn.microsoft.com/en-us/azure/azure-portal/get-subscription-tenant-id#find-your-microsoft-entra-tenant) on Microsoft Learn. * Your instance must be able to access https://login.microsoftonline.com. -{% endif %} - {% ifversion ghes < 3.12 %} If your instance runs {% ifversion ghes < 3.11 %}a release of {% data variables.product.product_name %} in the {{ allVersions[currentVersion].currentRelease }} series earlier than {% else %}{% data variables.product.product_name %} {% endif %}{{ allVersions[currentVersion].currentRelease }}.{% ifversion ghes = 3.10 %}3{% elsif ghes = 3.11 %}0{% endif %}, you must provide an API token for Azure Maps instead. @@ -53,8 +47,6 @@ If your instance runs {% ifversion ghes < 3.11 %}a release of {% data variables. {% endif %} -{% ifversion azure-maps-auth-2023 %} - ## Generating credentials for Azure Maps {% ifversion ghes < 3.12 %} @@ -83,16 +75,10 @@ To generate credentials for Azure Maps, you must create an application for your * On your Entra ID tenant, from **Access control (IAM)**, you must assign the role of "Azure Maps Data Reader" to "User, group, or service principal", select the application you created earlier in these instructions, and complete the form. -{% endif %} - ## Enabling interactive maps -{% ifversion azure-maps-auth-2023 %} - After you create an application on your Entra ID tenant and generate a secret for the use of Azure Maps, you can configure interactive maps on {% data variables.location.product_location %}. -{% endif %} - {% data reusables.enterprise_site_admin_settings.access-settings %} {% data reusables.enterprise_site_admin_settings.management-console %} {% data reusables.enterprise_management_console.privacy %} @@ -104,7 +90,6 @@ After you create an application on your Entra ID tenant and generate a secret fo ``` Store the string in a secure location that you can reference in the next step. -{%- ifversion azure-maps-auth-2023 %} 1. {% ifversion ghes > 3.11 %}Below the headings, type or paste{% else %}Enter{% endif %} your authentication details for Azure Maps. {%- ifversion ghes < 3.11 %} @@ -112,8 +97,8 @@ After you create an application on your Entra ID tenant and generate a secret fo {% data reusables.enterprise.azure-maps-auth-warning %} * If your instance runs {% data variables.product.product_name %} {{ allVersions[currentVersion].currentRelease }}.{% ifversion ghes = 3.10 %}4{% elsif ghes = 3.11 %}1{% endif %} or later, below the headings, type or paste the following information. + {%- endif %} - {%- endif %} * Optionally, to change the style of rendered maps, under "Basemap ID", type the ID for the style you'd like to use. * Under the headings, type or paste your authentication details. @@ -124,9 +109,6 @@ After you create an application on your Entra ID tenant and generate a secret fo | Azure Tenant ID | ID for your tenant on Entra ID | [Prerequisites](#prerequisites) | | Azure App Client Secret | Client secret that you generated for the application on your Entra ID tenant | [Generating credentials for Azure Maps](#generating-credentials-for-azure-maps) | CSRF Secret | 32-character string to prevent CSRF attacks | See previous step. | -{%- else %} -1. To configure authentication, under "Azure Maps API Token", paste your token. -{%- endif %} {% data reusables.enterprise_management_console.save-settings %} ## Disabling interactive maps diff --git a/content/admin/data-residency/about-github-enterprise-cloud-with-data-residency.md b/content/admin/data-residency/about-github-enterprise-cloud-with-data-residency.md index f888091172dc..1ad086136291 100644 --- a/content/admin/data-residency/about-github-enterprise-cloud-with-data-residency.md +++ b/content/admin/data-residency/about-github-enterprise-cloud-with-data-residency.md @@ -14,7 +14,7 @@ redirect_from: By default, {% data variables.product.company_short %} stores data for {% data variables.product.prodname_dotcom_the_website %} in the USA. {% data reusables.data-residency.when-you-adopt-data-residency %} To learn how {% data variables.product.company_short %} handles data storage, see [AUTOTITLE](/admin/data-residency/about-storage-of-your-data-with-data-residency). -Access to this feature is currently managed by {% data variables.contact.contact_enterprise_sales %}. +To get {% data variables.enterprise.data_residency_short %} for your enterprise, **contact {% data variables.contact.contact_sales_data_residency %}**. ## What is {% data variables.product.product_name %}? @@ -107,7 +107,7 @@ When reading the documentation, readers may need to substitute references to {% ## Getting started -When you have worked with your account team in {% data variables.contact.contact_enterprise_sales %} to create a new enterprise account and choose a subdomain on {% data variables.enterprise.data_residency_site %}, you can get started with your new enterprise. +When you have worked with your account team to create a new enterprise account and choose a subdomain on {% data variables.enterprise.data_residency_site %}, you can get started with your new enterprise. You will: diff --git a/content/admin/data-residency/about-storage-of-your-data-with-data-residency.md b/content/admin/data-residency/about-storage-of-your-data-with-data-residency.md index 55cabec355da..18fbea1006d2 100644 --- a/content/admin/data-residency/about-storage-of-your-data-with-data-residency.md +++ b/content/admin/data-residency/about-storage-of-your-data-with-data-residency.md @@ -16,7 +16,7 @@ redirect_from: Although your code and user data are stored within your chosen region, {% data variables.product.company_short %} may store certain types of data outside your region, and may need to transfer some data outside your region. -If you are in doubt about any aspect of {% data variables.enterprise.data_residency_short %}, contact your account manager in {% data variables.contact.contact_enterprise_sales %}. +If you are in doubt about any aspect of {% data variables.enterprise.data_residency_short %}, contact your account manager. ## Data stored in your region diff --git a/content/admin/data-residency/getting-started-with-data-residency-for-github-enterprise-cloud.md b/content/admin/data-residency/getting-started-with-data-residency-for-github-enterprise-cloud.md index 8378b7465145..f84cea879251 100644 --- a/content/admin/data-residency/getting-started-with-data-residency-for-github-enterprise-cloud.md +++ b/content/admin/data-residency/getting-started-with-data-residency-for-github-enterprise-cloud.md @@ -17,7 +17,7 @@ redirect_from: When you adopt {% data variables.enterprise.data_residency %}, you can choose where your company's code and data are stored. -After you have **worked with {% data variables.contact.contact_enterprise_sales %}** to create an enterprise account with a dedicated URL on {% data variables.enterprise.data_residency_site %}, you'll use this guide to set up your enterprise. You will: +After you have **worked with {% data variables.contact.contact_sales_data_residency %}** to create an enterprise account with a dedicated URL on {% data variables.enterprise.data_residency_site %}, you'll use this guide to set up your enterprise. You will: * Add users by configuring authentication and provisioning with an identity management system * Set up billing for your enterprise diff --git a/content/admin/data-residency/network-details-for-ghecom.md b/content/admin/data-residency/network-details-for-ghecom.md index 5e23538a79ba..09739b6c5b12 100644 --- a/content/admin/data-residency/network-details-for-ghecom.md +++ b/content/admin/data-residency/network-details-for-ghecom.md @@ -30,9 +30,13 @@ To access your enterprise on {% data variables.enterprise.data_residency_site %} ## {% data variables.product.github %}'s IP addresses -These are {% data variables.product.company_short %}'s IP address ranges for enterprises on {% data variables.enterprise.data_residency_site %}. +{% data variables.product.company_short %}'s IP address ranges for enterprises on {% data variables.enterprise.data_residency_site %} depend on your chosen region. -### Ranges for egress traffic +### The EU + +These are {% data variables.product.company_short %}'s IP address ranges for enterprises hosted in the EU. + +#### Ranges for egress traffic * 108.143.221.96/28 * 20.61.46.32/28 @@ -41,7 +45,7 @@ These are {% data variables.product.company_short %}'s IP address ranges for ent * 74.241.131.48/28 * 20.240.211.176/28 -### Ranges for ingress traffic +#### Ranges for ingress traffic * 108.143.197.176/28 * 20.123.213.96/28 @@ -50,12 +54,83 @@ These are {% data variables.product.company_short %}'s IP address ranges for ent * 20.240.220.192/28 * 20.240.211.208/28 +### Australia + +These are {% data variables.product.company_short %}'s IP address ranges for enterprises hosted in Australia. + +#### Ranges for egress traffic + +* 20.5.34.240/28 +* 20.5.146.128/28 +* 68.218.155.16/28 + +#### Ranges for ingress traffic + +* 4.237.73.192/28 +* 20.5.226.112/28 +* 20.248.163.176/28 + ## Supported regions for Azure private networking If you use Azure private networking for {% data variables.product.company_short %}-hosted runners, the supported Azure regions on {% data variables.enterprise.data_residency_site %} differ from those on {% data variables.product.prodname_dotcom_the_website %}. -The following regions are available: +### Supported regions in the EU + +| Runner type | Supported regions | +| ----------- | ----------------- | +| x64 | `francecentral`, `swedencentral` | +| arm64 | `francecentral`, `northeurope` | +| GPU | `italynorth`, `swedencentral` | + +### Supported regions in Australia + +| Runner type | Supported regions | +| ----------- | ----------------- | +| x64 | `australiaeast`, `australiacentral` | +| arm64 | `australiaeast`, `australiacentral` | +| GPU | N/A | + +## IP ranges for {% data variables.product.prodname_importer_proper_name %} + +If you're running a migration to your enterprise with {% data variables.product.prodname_importer_proper_name %}, you may need to add certain ranges to an IP allow list. See [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-between-github-products/managing-access-for-a-migration-between-github-products#configuring-ip-allow-lists-for-migrations). + +You must allow: + +* Ranges required for everyone +* Additional ranges that depend on your data residency region + +### Required for everyone + +* 192.30.252.0/22 +* 185.199.108.0/22 +* 140.82.112.0/20 +* 143.55.64.0/20 +* 2a0a:a440::/29 +* 2606:50c0::/32 + +### Required in the EU + +* 4.231.155.80/29 +* 4.225.9.96/29 +* 51.12.152.184/29 +* 20.199.6.80/29 +* 51.12.144.32/29 +* 20.199.1.232/29 +* 51.12.152.240/29 +* 20.19.101.136/29 +* 74.241.131.48/28 +* 51.12.252.16/28 +* 20.240.211.176/28 +* 108.143.221.96/28 +* 20.61.46.32/28 +* 20.224.62.160/28 + +### Required in Australia -* x64: `francecentral`, `swedencentral` -* arm64: `francecentral`, `northeurope` -* GPU: `italynorth`, `swedencentral` +* 20.213.236.72/29 +* 20.53.178.216/29 +* 20.213.241.72/29 +* 20.11.90.48/29 +* 20.5.34.240/28 +* 20.5.146.128/28 +* 68.218.155.16/28 diff --git a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-governance.md b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-governance.md new file mode 100644 index 000000000000..0de725a8aa1a --- /dev/null +++ b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-governance.md @@ -0,0 +1,149 @@ +--- +title: Enforcing code governance in your enterprise with rulesets +allowTitleToDifferFromFilename: true +intro: 'You can create a ruleset to target multiple repositories in your enterprise.' +versions: + feature: enterprise-code-rulesets +permissions: 'Enterprise owners' +shortTitle: Create rulesets +type: how_to +topics: + - Enterprise + - Policies + - Repositories + - Security +--- + +## Introduction + +>[!NOTE] Enterprise code rulesets are currently in public preview and subject to change. + +You can create rulesets to control how users can interact with code in repositories across your enterprise. You can: + +* Create a **branch or tag ruleset** to control things like who can push commits to a certain branch, how commits must be formatted, or who can delete or rename a tag. +* Create a **push ruleset** to block pushes to a private or internal repository and the repository's entire fork network. Push rulesets allow you to block pushes based on file extensions, file path lengths, file and folder paths, and file sizes. + +To learn more, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets). + +## Importing prebuilt rulesets + +To import a prebuilt ruleset created by {% data variables.product.company_short %}, see [`github/ruleset-recipes`](https://github.com/github/ruleset-recipes). + +{% ifversion repo-rules-management %} +{% data reusables.repositories.import-a-ruleset-conceptual %} For more information, see [AUTOTITLE](/organizations/managing-organization-settings/managing-rulesets-for-repositories-in-your-organization#using-ruleset-history). +{% endif %} + +## How will I define where my ruleset applies? + +Rulesets allow you to flexibly target the organizations, repositories, and branches where you want rules to apply. + +* To target **organizations**, you can select all, choose from a list, or define a dynamic pattern for organization names using `fnmatch` syntax. For syntax details, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#using-fnmatch-syntax). +* Within those organizations, you can target all **repositories**, or target a dynamic list by custom property. See [AUTOTITLE](/organizations/managing-organization-settings/managing-custom-properties-for-repositories-in-your-organization). +* Within the repositories, you can target certain **branches or tags**: all branches, the default branch, or a dynamic list using `fnmatch` syntax. + +When you create a ruleset that targets branches in a repository, repository administrators can no longer rename branches or change the default branch in the targeted repository. They can still create and delete branches if they have the appropriate permissions. + +## How can I control the format of commits? + +In branch or tag rulesets, you can add a rule that restricts the format of commit metadata such as commit message or author email. + +If you select **Must match a given regex pattern restriction**, you can use regular expression syntax to define patterns that the metadata must or must not match. For syntax details and examples, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#using-regular-expressions-for-commit-metadata). + +## Using ruleset enforcement statuses + +{% data reusables.repositories.rulesets-about-enforcement-statuses %} + +## Creating a branch or tag ruleset + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +1. Under "Policies", click **Code**. +{% data reusables.repositories.create-ruleset-step %} +{% data reusables.repositories.rulesets-general-step %} + +### Granting bypass permissions for your branch or tag ruleset + +You can grant certain roles, teams, or apps bypass permissions as well as the ability to approve bypass requests for your ruleset. + +The following are eligible for bypass access: +* Repository admins, organization owners, and enterprise owners +* The maintain or write role, or deploy keys. + +1. To grant bypass permissions for the ruleset, in the "Bypass list" section, click **Add bypass**. + +1. In the "Add bypass" modal dialog that appears, search for the role, team, or app you would like to grant bypass permissions, then select the role, team, or app from the "Suggestions" section and click Add Selected. + +{% data reusables.repositories.rulesets-branch-tag-bypass-optional-step %} + +### Choosing which organizations to target in your enterprise + +Select all organizations, choose a selection of existing organizations, or set a dynamic list by name. If you use {% data variables.product.prodname_emus %}, you can also choose to target all repositories owned by users in your enterprise. + +If you set a dynamic list, you'll add one or more naming patterns using `fnmatch` syntax. For example, the string `*open-source` would match any organization with a name that ends with `open-source`. For syntax details, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#using-fnmatch-syntax). + +### Choosing which repositories to target in your enterprise + +Within the selected organizations, you can target all repositories or target a dynamic list by custom property. See [AUTOTITLE](/organizations/managing-organization-settings/managing-custom-properties-for-repositories-in-your-organization). + +### Choosing which branches or tags to target + +{% data reusables.repositories.rulesets-target-branches %} + +### Selecting branch or tag protections + +In the "Branch protections" or "Tag protections" section, select the rules you want to include in the ruleset. When you select a rule, you may be able to enter additional settings for the rule. For more information on the rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets). + +### Adding metadata restrictions + +{% data reusables.repositories.rulesets-metadata-step %} + +### Finalizing your branch or tag ruleset and next steps + +{% data reusables.repositories.rulesets-create-and-insights-step %} + +{% ifversion push-rulesets %} + +## Creating a push ruleset + +{% data reusables.repositories.push-rules-fork-network-note %} + +You can create a push ruleset for private or internal repositories in your enterprise. + +{% data reusables.enterprise-accounts.access-enterprise %} +1. In the left sidebar, in the "Policies" section, click **Code**. +1. Click **New ruleset**. +1. Click **New push ruleset**. +1. Under "Ruleset name," type a name for the ruleset. +1. Optionally, to change the default enforcement status, click **Disabled** and select an enforcement status. For more information about enforcement statuses, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets) + +### Granting bypass permissions for your push ruleset + +>[!NOTE] Bypass permissions for push rulesets that target a repository will be inherited by the entire fork network for this repository. {% data reusables.repositories.rulesets-push-rulesets-bypass-permissions %} + +You can grant certain roles, teams, or apps bypass permissions as well as the ability to approve bypass requests for your ruleset. The following are eligible for bypass access: + +* Repository admins, organization owners, and enterprise owners +* The maintain or write role, or deploy keys + +1. To grant bypass permissions for the ruleset, in the "Bypass list" section, click **Add bypass**. +1. In the "Add bypass" modal dialog that appears, search for the role, team, or app you would like to grant bypass permissions, then select the role, team, or app from the "Suggestions" section and click Add Selected. + +### Choosing which organizations to target in your enterprise + +Select all organizations, choose a selection of existing organizations, or set a dynamic list by name. If you use {% data variables.product.prodname_emus %}, you can also choose to target all repositories owned by users in your enterprise. + +If you set a dynamic list, you'll add one or more naming patterns using `fnmatch` syntax. For example, the string `*open-source` would match any organization with a name that ends with `open-source`. For syntax details, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#using-fnmatch-syntax). + +### Choosing which repositories to target in your enterprise + +Within your chosen organizations, you can target all repositories, or target a dynamic list using custom properties. See [AUTOTITLE](/organizations/managing-organization-settings/managing-custom-properties-for-repositories-in-your-organization). + +### Selecting push protections + +{% data reusables.repositories.rulesets-push-rules-step %} + +### Finalizing your push ruleset and next steps + +{% data reusables.repositories.rulesets-create-and-insights-step %} + +{% endif %} diff --git a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise.md b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise.md index 1cbdf474d747..09e0d08a40cb 100644 --- a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise.md +++ b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise.md @@ -1,7 +1,7 @@ --- title: Enforcing policies for code security and analysis for your enterprise -intro: 'You can enforce policies to manage the use of {% ifversion security-feature-enablement-policies %}code security and analysis{% else %}{% data variables.product.prodname_GH_advanced_security %}{% endif %} features within your enterprise''s organizations.' -permissions: 'Enterprise owners can enforce {% ifversion security-feature-enablement-policies %}code security and analysis{% endif %} policies for {% data variables.product.prodname_GH_advanced_security %} in an enterprise.' +intro: 'You can enforce policies to manage the use of code security and analysis features within your enterprise''s organizations.' +permissions: 'Enterprise owners can enforce code security and analysis policies for {% data variables.product.prodname_GH_advanced_security %} in an enterprise.' product: '{% data reusables.gated-features.ghas %}' versions: ghec: '*' @@ -28,22 +28,12 @@ redirect_from: - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise shortTitle: Code security & analysis --- -{% ifversion security-feature-enablement-policies %} ## About policies for code security and analysis in your enterprise You can enforce policies to manage the use of code security and analysis features within organizations owned by your enterprise. You can allow or disallow people with admin access to a repository to enable or disable the security and analysis features. Additionally, you can enforce policies for the use of {% data variables.product.prodname_GH_advanced_security %} in your enterprise's organizations and repositories. -{% else %} - -## About policies for {% data variables.product.prodname_GH_advanced_security %} in your enterprise - -{% data reusables.advanced-security.ghas-helps-developers %} For more information, see [AUTOTITLE](/get-started/learning-about-github/about-github-advanced-security). - -{% ifversion ghes %}If you purchase a license for {% data variables.product.prodname_GH_advanced_security %}, any{% else %}Any{% endif %} organization on {% data variables.product.prodname_ghe_server %} can use {% data variables.product.prodname_advanced_security %} features. You can enforce policies to control how members of your enterprise on {% data variables.product.product_name %} use {% data variables.product.prodname_advanced_security %}. - -{% endif %} {% ifversion ghec %} @@ -84,16 +74,13 @@ Across all organizations owned by your enterprise, you can allow members with ad {% data reusables.enterprise.role-permission-hierarchy %} {% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %}{% ifversion security-feature-enablement-policies %} -{% data reusables.enterprise-accounts.code-security-and-analysis-policies %}{% else %} -{% data reusables.enterprise-accounts.advanced-security-policies %}{% endif %}{% ifversion security-feature-enablement-policies %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.code-security-and-analysis-policies %} 1. In the "{% data variables.product.prodname_GH_advanced_security %} policies" section, under "{% data variables.product.prodname_GH_advanced_security %} availability", select the dropdown menu and click a policy for the organizations owned by your enterprise. -{% data reusables.enterprise-accounts.advanced-security-organization-policy-drop-down %}{% endif %} +{% data reusables.enterprise-accounts.advanced-security-organization-policy-drop-down %} {% data reusables.enterprise-accounts.advanced-security-individual-organization-policy-drop-down %} -{% ifversion security-feature-enablement-policies %} - ## Enforcing a policy to manage the use of {% data variables.product.prodname_GH_advanced_security %} features in your enterprise's repositories Across all of your enterprise's organizations, you can allow or disallow people with admin access to repositories to manage the use of {% data variables.product.prodname_GH_advanced_security %} features in the repositories. {% data reusables.advanced-security.ghas-must-be-enabled %} @@ -114,8 +101,6 @@ Across all of your enterprise's organizations, you can allow or disallow people {% data reusables.enterprise-accounts.code-security-and-analysis-policies %} 1. In the "{% data variables.product.prodname_GH_advanced_security %} policies" section, under "Enable or disable {% data variables.product.prodname_secret_scanning %} by repository admins", select the dropdown menu and click a policy. -{% endif %} - {% ifversion secret-scanning-ai-generic-secret-detection %} ## Enforcing a policy to manage the use of {% data variables.secret-scanning.generic-secret-detection %} for {% data variables.product.prodname_secret_scanning %} in your enterprise's repositories @@ -128,3 +113,16 @@ Across all of your enterprise's organizations, you can allow or disallow people 1. In the "{% data variables.product.prodname_GH_advanced_security %} policies" section, under "AI detection in {% data variables.product.prodname_secret_scanning %}", select the dropdown menu and click a policy. {% endif %} + +{% ifversion code-scanning-autofix %} + +## Enforcing a policy to manage the use of {% data variables.product.prodname_copilot_autofix_short %} in your enterprise's repositories + +Across all of your enterprise's organizations, you can allow or disallow people with admin access to repositories to manage where {% data variables.product.prodname_copilot_autofix_short %} is enabled. {% data reusables.advanced-security.ghas-must-be-enabled %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.code-security-and-analysis-policies %} +1. In the "{% data variables.product.prodname_GH_advanced_security %} policies" section, under "{% data variables.product.prodname_copilot_autofix_short %}", select the dropdown menu and click a policy. + +{% endif %} diff --git a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md index 8a6b95eabf94..23b09fa55960 100644 --- a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md +++ b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md @@ -111,7 +111,7 @@ By default, artifacts and log files generated by workflows are retained for 90 d Changes only apply to new artifacts and log files. -{% ifversion actions-cache-policy-apis %} +{% ifversion ghes %} ### Maximum and default cache size limits @@ -124,7 +124,7 @@ By default: You can customize both the default total cache size for each repository and 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 administrators to configure a total cache size up to 15 GB for individual repositories. -{% 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. +Organization owners can set a lower total cache size that applies to each repository in their organization. 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 or organization policy setting. {% endif %} diff --git a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md index 12667169288d..ba12a103bc6f 100644 --- a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md +++ b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md @@ -238,7 +238,7 @@ Across all organizations owned by your enterprise, you can allow members to see 1. Under "Allow members to see the comment author's profile name in public and internal repositories", select the dropdown menu and click a policy. 1. Optionally, to enforce the display of profile names for all repositories in your enterprise, select **Enforce for all repositories on the instance**. - ![Screenshot of the "Allow members to see the comment author's profile name in public and internal repositories" policy section. The "Enforce on all repositories" checkbox is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/enforce-for-all-repositories-option.png) + ![Screenshot of the policy option for the display of member names in your repositories. The "Enforce on all repositories" checkbox is outlined.](/assets/images/enterprise/site-admin-settings/enforce-for-all-repositories-option.png) {% endif %} @@ -336,7 +336,7 @@ If necessary, you can prevent repository administrators from changing anonymous {% data reusables.enterprise_site_admin_settings.admin-top-tab %} 1. Under "Danger Zone", next to "Enable Anonymous Git read access", click **Enable**. - ![Screenshot of the "Danger Zone" section of a repository's site admin settings. To the right of "Enable anonymous Git read access", the "Enable" button is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/site-admin-enable-anonymous-git-read-access.png) + ![Screenshot of the "Enable anonymous Git read access" setting. The "Enable" button is outlined.](/assets/images/enterprise/site-admin-settings/site-admin-enable-anonymous-git-read-access.png) 1. Review the changes. To confirm, click **Yes, enable anonymous Git read access.** 1. Optionally, to prevent repository admins from changing this setting for this repository, select **Prevent repository admins from disabling anonymous Git read access**. {% endif %} diff --git a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/index.md b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/index.md index 6b8414d2ec58..4b6d5ea647a5 100644 --- a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/index.md +++ b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/index.md @@ -25,6 +25,8 @@ children: - /enforcing-policies-for-github-codespaces-in-your-enterprise - /enforcing-policies-for-code-security-and-analysis-for-your-enterprise - /enforcing-policies-for-personal-access-tokens-in-your-enterprise + - /enforcing-policies-for-code-governance + - /managing-policies-for-code-governance shortTitle: Enforce policies --- diff --git a/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/managing-policies-for-code-governance.md b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/managing-policies-for-code-governance.md new file mode 100644 index 000000000000..84b87f29c3b1 --- /dev/null +++ b/content/admin/enforcing-policies/enforcing-policies-for-your-enterprise/managing-policies-for-code-governance.md @@ -0,0 +1,83 @@ +--- +title: Managing code rulesets for repositories in your enterprise +intro: 'You can edit, monitor, and delete existing rulesets to alter how people can interact with repositories in your enterprise.' +allowTitleToDifferFromFilename: true +versions: + feature: enterprise-code-rulesets +permissions: 'Enterprise owners' +shortTitle: Manage rulesets +--- + +After creating a ruleset at the enterprise level, you can make changes to the ruleset to alter how people can interact with the targeted repositories. For example, you can: + +* Add rules to better protect the branches or tags in those repositories +* Switch your ruleset from "Evaluate" mode to "Active" after testing its effects on the contributor experience + +{% data reusables.repositories.rulesets-anyone-can-view %} + +{% ifversion push-rule-delegated-bypass %} + +## About delegated bypass + +{% data reusables.repositories.about-push-rule-delegated-bypass %} + +{% endif %} + +## Editing a ruleset + +You can edit a ruleset to change parts of the ruleset, such as the name, bypass permissions, or rules. You can also edit a ruleset to change its status, such as if you want to enable or temporarily disable a ruleset. + +{% data reusables.enterprise-accounts.access-enterprise %} +1. In the left sidebar, in the "Policies" section, click **Code**, then click **Rulesets**. +1. On the "Rulesets" page, click the name of the ruleset you want to edit. +1. Change the ruleset as required. + + For information on the available rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets) + +1. At the bottom of the page, click **Save changes**. + +## Deleting a ruleset + +{% data reusables.repositories.rulesets-anyone-can-view %} + +{% data reusables.enterprise-accounts.access-enterprise %} +1. In the left sidebar, in the "Policies" section, click **Code**, then click **Rulesets**. +1. To the right of the ruleset's name, select {% octicon "kebab-horizontal" aria-label="Open additional options" %}, then click **{% octicon "trash" aria-hidden="true" %} Delete ruleset**. + +## Using ruleset history + +{% data reusables.repositories.ruleset-beta-note %} + +{% data reusables.repositories.ruleset-history-conceptual %} + +{% data reusables.enterprise-accounts.access-enterprise %} +1. In the left sidebar, in the "Policies" section, click **Code**, then click **Rulesets**. +1. To view the history of changes to the ruleset, select {% octicon "kebab-horizontal" aria-label="Open additional options" %} to the right of the ruleset's name, then click **{% octicon "history" aria-hidden="true" %} History**. +1. To the right of the specific iteration, select {% octicon "kebab-horizontal" aria-label="Open additional options" %}, then click **Compare changes**, **Restore**, or **Download**. + +## Importing a ruleset + +You can import a ruleset from another repository, organization or enterprise using the exported JSON file from the previous section. This can be useful if you want to apply the same ruleset to multiple repositories, organizations or enterprises. + +{% data reusables.enterprise-accounts.access-enterprise %} +1. In the left sidebar, in the "Policies" section, click **Code**, then click **Rulesets**. +1. Select the **New ruleset** dropdown, then click **Import a ruleset**. +1. Open the exported JSON file. +1. Review the imported ruleset and click **Create**. + +## Viewing insights for rulesets + +You can view insights for rulesets to see how rulesets are affecting the repositories in your enterprise. {% data reusables.repositories.about-ruleset-insights %} + +If a ruleset is running in "Evaluate" mode, you can see actions that would have passed or failed if the ruleset had been active. + +{% data reusables.enterprise-accounts.access-enterprise %} +1. In the left sidebar, in the "Policies" section, click **Code**, then click **Rulesets**. +1. On the "Rule insights" page, use the dropdown menus at the top of the page to filter the actions by ruleset, repository, actor, and time period. +1. To see which specific rules failed or required a bypass, click {% octicon "kebab-horizontal" aria-label="View rule runs" %}, then expand the name of the ruleset. + +{% ifversion push-rule-delegated-bypass %} + +{% data reusables.repositories.managing-delegated-bypass %} + +{% endif %} diff --git a/content/admin/enforcing-policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md b/content/admin/enforcing-policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md index 4ec6c82120bb..2ad63fa8fe1b 100644 --- a/content/admin/enforcing-policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md +++ b/content/admin/enforcing-policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md @@ -55,7 +55,7 @@ The exit status of a pre-receive script determines if the push will be accepted. ### Environment variables -In addition to the standard input for your pre-receive hook script, `stdin`, {% data variables.product.prodname_ghe_server %} makes the following variables available in the Bash environment for your script's execution. For more information about `stdin` for your pre-receive hook script, see "[Input (`stdin`)](#input-stdin)." +In addition to the standard input for your pre-receive hook script, `stdin`, {% data variables.product.prodname_ghe_server %} makes the following variables available in the Bash environment for your script's execution. For more information about `stdin` for your pre-receive hook script, see [Input (`stdin`)](#input-stdin). Different environment variables are available to your pre-receive hook script depending on what triggers the script to run. diff --git a/content/admin/installing-your-enterprise-server/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md b/content/admin/installing-your-enterprise-server/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md index 2b8a43ab6054..c7fcdfe199fd 100644 --- a/content/admin/installing-your-enterprise-server/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md +++ b/content/admin/installing-your-enterprise-server/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md @@ -77,7 +77,7 @@ Before launching {% data variables.location.product_location %} on Azure, you'll ## Configuring the {% data variables.product.prodname_ghe_server %} virtual machine -To configure the instance, you must confirm the instance's status, upload a license file, set the {% ifversion enterprise-management-console-multi-user-auth %}root {% endif %} {% data variables.enterprise.management_console %} password, configure the instance's settings, and restart the instance. +To configure the instance, you must confirm the instance's status, upload a license file, set the root {% data variables.enterprise.management_console %} password, configure the instance's settings, and restart the instance. {% data reusables.enterprise_installation.new-instance-attack-vector-warning %} diff --git a/content/admin/managing-accounts-and-repositories/communicating-information-to-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md b/content/admin/managing-accounts-and-repositories/communicating-information-to-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md index 834f6c3a8222..8b83db5667b0 100644 --- a/content/admin/managing-accounts-and-repositories/communicating-information-to-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md +++ b/content/admin/managing-accounts-and-repositories/communicating-information-to-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md @@ -45,7 +45,7 @@ There are several types of user messages. {% data reusables.enterprise-accounts.messages-tab %} 1. To the right of "Sign in page", click **Add message** or **Edit message**. - ![Screenshot of the "Sign in page" section of the "Messages" settings. A button, labeled with a plus icon and "Add message", is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/edit-message.png) + ![Screenshot of the "Sign in page" section of the "Messages" settings. A button, labeled with a plus icon and "Add message", is outlined.](/assets/images/enterprise/site-admin-settings/edit-message.png) 1. Under **Sign in message**, type the message you'd like users to see. {% data reusables.enterprise_site_admin_settings.message-preview-save %} @@ -60,7 +60,7 @@ There are several types of user messages. {% data reusables.enterprise-accounts.messages-tab %} 1. {% ifversion ghes %}To the right of{% else %}Under{% endif %} "Sign out page", click **Add message** or **Edit message**. - ![Screenshot of the "Sign out page" section of the "Messages" settings. A button, labeled with a plus icon and "Add message," is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/sign-out-add-message-button.png) + ![Screenshot of the "Sign out page" section of the "Messages" settings. A button, labeled with a plus icon and "Add message," is outlined.](/assets/images/enterprise/site-admin-settings/sign-out-add-message-button.png) 1. Under **Sign out message**, type the message you'd like users to see. {% ifversion ghes %} {% data reusables.enterprise_site_admin_settings.message-preview-save %}{% else %} @@ -84,21 +84,12 @@ If you include Markdown checkboxes in the message, all checkboxes must be select Each time a user sees a mandatory message, an audit log event is created. The event includes the version of the message that the user saw. For more information see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise). -{% ifversion display-mandatory-message-again %} {% else %} - -> [!NOTE] -> If you change the mandatory message for {% data variables.location.product_location %}, users who have already acknowledged the message will not see the new message. - -{% endif %} - {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.messages-tab %} 1. To the right of "Mandatory message", click **Add mandatory message**. 1. Under "Mandatory message", in the text box, type your message. -{%- ifversion display-mandatory-message-again %} 1. Optionally, select **Show updated message to all users even if they dismissed the previous one**. - {% endif %} {% data reusables.enterprise_site_admin_settings.message-preview-save %} {% endif %} @@ -107,8 +98,7 @@ Each time a user sees a mandatory message, an audit log event is created. The ev You can set a global announcement banner to be displayed to all users at the top of every page{% ifversion ghec %} within your enterprise, including every page in every organization owned by the enterprise{% endif %}. -{% ifversion custom-banner-messages %} -You can also create announcement banners at the organization level. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/creating-an-announcement-banner-for-your-organization).{% endif %} +You can also create announcement banners at the organization level. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/creating-an-announcement-banner-for-your-organization). {% ifversion ghes %} You can also set an announcement banner{% ifversion ghes %} in the administrative shell using a command line utility or{% endif %} using the API. For more information, see {% ifversion ghes %}[AUTOTITLE](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-announce) and {% endif %}[AUTOTITLE](/rest/enterprise-admin#announcements). @@ -116,19 +106,9 @@ You can also set an announcement banner{% ifversion ghes %} in the administrativ {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} -{% data reusables.enterprise-accounts.messages-tab %}{% ifversion custom-banner-messages %}{% else %} -1. To the right of "Announcement", click **Add announcement**.{% endif %} -1. Under "Announcement", in the text field, type the announcement you want displayed in a banner. -1. Optionally, under "Expires on", select the calendar drop-down menu and click an expiration date. - {% ifversion ghe-announce-dismiss %} - - > [!NOTE] - > Announcements must either have an expiration date, be user dismissible, or both. - - {% endif %} +{% data reusables.enterprise-accounts.messages-tab %} {%- ifversion ghe-announce-dismiss %} 1. Optionally, to allow each user to dismiss the announcement, select **User dismissible**. -{%- endif %}{% ifversion custom-banner-messages %} -1. Optionally, to allow each user to dismiss the announcement, select **Allow users to dismiss the announcement**. {%- endif %} +1. Optionally, to allow each user to dismiss the announcement, select **Allow users to dismiss the announcement**. {% data reusables.enterprise_site_admin_settings.message-preview-save %} diff --git a/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md b/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md index 7b375a99a86f..947b0113f758 100644 --- a/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md +++ b/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md @@ -110,7 +110,7 @@ If the existing organization uses billed apps, make sure to remove the billed ap {%- endif %} 1. Next to the organization you want to transfer, select the {% octicon "kebab-horizontal" width="16" aria-label="Organization settings" %} dropdown menu, then click **Transfer organization**. - ![Screenshot of an organization in the organization list. A dropdown menu, labeled with the kebab icon, is expanded and the "Transfer organization" option is highlighted with an orange outline.](/assets/images/help/business-accounts/transfer-organization.png) + ![Screenshot of the expanded dropdown menu labeled with the kebab icon, for an organization. The "Transfer organization" option is outlined.](/assets/images/help/business-accounts/transfer-organization.png) 1. Select the **Select enterprise** dropdown menu, start typing the name of the destination enterprise, and click the enterprise you want to transfer the organization to. 1. Click **Review transfer**. diff --git a/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/configuring-visibility-for-organization-membership.md b/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/configuring-visibility-for-organization-membership.md index 7697796342ad..1c0b3d2738fe 100644 --- a/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/configuring-visibility-for-organization-membership.md +++ b/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/configuring-visibility-for-organization-membership.md @@ -27,5 +27,5 @@ You can also enforce your default setting on all current organization members in {% data reusables.enterprise-accounts.options-tab %} 1. Under "Default organization membership visibility", select the drop-down menu, and click **Private** or **Public**. 1. Optionally, to prevent members from changing their membership visibility from the default, select **Enforce for all enterprise members**. - ![Screenshot of the "Default organization membership visibility" section on the enterprise's policies page. The "Enforce for all enterprise members" checkbox is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/enforce-default-org-membership-visibility-setting.png){% ifversion ghes %} + ![Screenshot of the "Default organization membership visibility" section. The "Enforce for all enterprise members" checkbox is outlined.](/assets/images/enterprise/site-admin-settings/enforce-default-org-membership-visibility-setting.png){% ifversion ghes %} 1. If you'd like to enforce your new visibility setting on all existing members, use the `ghe-org-membership-update` command-line utility. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-org-membership-update).{% endif %} diff --git a/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/removing-organizations-from-your-enterprise.md b/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/removing-organizations-from-your-enterprise.md index 26ae4c6350a6..c0fd3c39f095 100644 --- a/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/removing-organizations-from-your-enterprise.md +++ b/content/admin/managing-accounts-and-repositories/managing-organizations-in-your-enterprise/removing-organizations-from-your-enterprise.md @@ -39,7 +39,7 @@ As part of the downgrade to the free plan: 1. In the search bar, begin typing the organization's name until the organization appears in the search results. 1. To the right of the organization's name, select the {% octicon "gear" aria-label="Organization settings" %} dropdown menu and click **Remove organization**. - ![Screenshot of a list of organizations in search results. To the right of the organization name, the dropdown menu labeled with a gear icon is expanded, and the "Remove organization" option is highlighted with an orange outline.](/assets/images/help/enterprises/remove-organization.png) + ![Screenshot of the expanded dropdown menu labeled with a gear icon, for an organization. The "Remove organization" option is outlined.](/assets/images/help/enterprises/remove-organization.png) 1. Review the warnings, then click **Remove organization**. ## Further reading diff --git a/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/disabling-git-ssh-access-on-your-enterprise.md b/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/disabling-git-ssh-access-on-your-enterprise.md index 0b05f567945a..9f08e566d114 100644 --- a/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/disabling-git-ssh-access-on-your-enterprise.md +++ b/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/disabling-git-ssh-access-on-your-enterprise.md @@ -47,7 +47,7 @@ shortTitle: Disable SSH for Git 1. Under "Git SSH access", select the drop-down menu, and click **Disabled**. 1. Select **Enforce on all repositories**. - ![Screenshot of the "Git SSH access" section of the site admin page for an organization. The "Enforce on all repositories" checkbox is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/git-ssh-access-organization-setting.png) + ![Screenshot of the "Git SSH access" section of the site admin page for an organization. The "Enforce on all repositories" checkbox is outlined.](/assets/images/enterprise/site-admin-settings/git-ssh-access-organization-setting.png) ## Disabling Git SSH access to all repositories in your enterprise @@ -61,4 +61,4 @@ shortTitle: Disable SSH for Git 1. Under "Git SSH access", select the drop-down menu, and click **Disabled**. 1. Select **Enforce on all repositories**. - ![Screenshot of the "Git SSH access" section on the enterprise's policies page. The "Enforce on all repositories" checkbox is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/git-ssh-access-appliance-setting.png) + ![Screenshot of the "Git SSH access" section on the enterprise's policies page. The "Enforce on all repositories" checkbox is outlined.](/assets/images/enterprise/site-admin-settings/git-ssh-access-appliance-setting.png) diff --git a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/impersonating-a-user.md b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/impersonating-a-user.md index a66e55273822..900147efc729 100644 --- a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/impersonating-a-user.md +++ b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/impersonating-a-user.md @@ -29,7 +29,7 @@ Actions you perform during an impersonation session are recorded as events in th {% data reusables.enterprise_site_admin_settings.click-user %} 1. In the top left of the page, click **User info**. - ![Screenshot of the "User info" section of the site admin page for a user. The "User info" heading is highlighted in dark orange. Under the heading, the user is marked as active.](/assets/images/enterprise/stafftools/user-info.png) + ![Screenshot of the "User info" section for a user. The "User info" heading is outlined. Under the heading, the user is marked as active.](/assets/images/enterprise/stafftools/user-info.png) 1. Under "Danger Zone", click **Sign in to GitHub as @username** 1. Select a reason from the dropdown list. If you select **Other** you will need to provide additional context in the text field below **Notes**. Click **Begin impersonation** to begin the session. 1. When you are ready to end the impersonation session, click **Return to your mundane life as username** in the banner at the top of the page. diff --git a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md index d4cb18590cfa..0dff916c0911 100644 --- a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md +++ b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md @@ -58,7 +58,7 @@ Dormant users are not automatically suspended. Consider suspending dormant users {% data reusables.enterprise_site_admin_settings.click-user %} 1. In the **User info** section, view the status of the user's account. Any users labeled with "{% octicon "hourglass" aria-hidden="true" %} Dormant" are dormant, and users labeled with "{% octicon "hourglass" aria-hidden="true" %} "Active" are not. - ![Screenshot of the "User info" section of the site admin page for a user. The "User info" heading is highlighted in dark orange. Under the heading, the user is marked as active.](/assets/images/enterprise/stafftools/active-user.png) + ![Screenshot of the "User info" section for a user. The "User info" heading is outlined. Under the heading, the user is marked as active.](/assets/images/enterprise/stafftools/active-user.png) ## Configuring the dormancy threshold diff --git a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-invitations-to-organizations-within-your-enterprise.md b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-invitations-to-organizations-within-your-enterprise.md index 07ff0aea98e3..1305c3baa424 100644 --- a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-invitations-to-organizations-within-your-enterprise.md +++ b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-invitations-to-organizations-within-your-enterprise.md @@ -30,11 +30,11 @@ Invitations expire after 7 days. You can retry or cancel expired invitations, ei 1. Optionally, retry or cancel a single invitation. * To the right of the invitation you want to cancel or retry, select the {% octicon "kebab-horizontal" aria-label="Show actions" %} dropdown menu and click **Retry invitation** or **Cancel invitation**. - ![Screenshot of a user in the list of failed invitations. A dropdown menu, labeled with a kebab icon, is highlighted with an orange outline.](/assets/images/help/business-accounts/enterprise-invitation-retry-or-cancel.png) + ![Screenshot of a user in the list of failed invitations. A dropdown menu labeled with a kebab icon, is outlined.](/assets/images/help/business-accounts/enterprise-invitation-retry-or-cancel.png) * To confirm, click **Yes, retry** or **Yes, cancel**. 1. Optionally, retry or cancel multiple invitations at the same time. * Select the checkboxes next to the invitations you want to retry or cancel. * At the top of the list, select the **X invitations selected** dropdown menu and click **Retry invitations** or **Cancel invitations**. - ![Screenshot of the list of failed invitations. The dropdown menu above the list, labeled "2 invitations selected" is highlighted with an orange outline.](/assets/images/help/enterprises/enterprise-invitations-multiple-selection.png) + ![Screenshot of the list of failed invitations. The dropdown menu above the list, labeled "2 invitations selected" is outlined.](/assets/images/help/enterprises/enterprise-invitations-multiple-selection.png) diff --git a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/suspending-and-unsuspending-users.md b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/suspending-and-unsuspending-users.md index edfb3fb66f2a..0987c49f615f 100644 --- a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/suspending-and-unsuspending-users.md +++ b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/suspending-and-unsuspending-users.md @@ -92,7 +92,7 @@ You can create a custom message that suspended users will see when attempting to {% data reusables.enterprise-accounts.messages-tab %} 1. To the right of "Suspended user page", click **Add message**. - ![Screenshot of the "Suspend user page" section of the "Messages" settings. A button, labeled with a plus icon and "Add message," is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/add-message.png) + ![Screenshot of the "Suspend user page" section of the "Messages" settings. A button, labeled with a plus icon and "Add message," is outlined.](/assets/images/enterprise/site-admin-settings/add-message.png) 1. In the "Suspend user message" field, type your message. You can type Markdown, or use the Markdown toolbar to style your message. 1. To see the rendered message, click **Preview**. {% data reusables.enterprise_site_admin_settings.save-changes %} diff --git a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md index 4f617cc1e5c5..4fb24d97ca19 100644 --- a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md +++ b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md @@ -196,7 +196,7 @@ You can view a list of all dormant users {% ifversion ghes %} who have not been ![Screenshot of the tabs above an organization name. The "People" tab is highlighted with an orange outline.](/assets/images/help/enterprises/emu-organization-people-tab.png) 1. Above the list of members, click **Type**, then select the type of members you want to view. - ![Screenshot of the list of members. A dropdown menu labeled "Type" is outlined in orange, and an expanded dropdown shows options for "All members," "Managed by IdP groups," and "Managed directly."](/assets/images/help/enterprises/filter-by-member-type.png) + ![Screenshot of the list of members. A dropdown menu labeled "Type" is outlined and expanded.](/assets/images/help/enterprises/filter-by-member-type.png) {% endif %} diff --git a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md index 6257f844d439..be455df7584a 100644 --- a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md +++ b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md @@ -64,12 +64,12 @@ You can configure {% data variables.product.prodname_code_scanning %} to run {% {% data variables.product.product_name %} can run {% data variables.product.prodname_code_scanning %} using a {% data variables.product.prodname_actions %} workflow. First, you need to provision one or more self-hosted {% data variables.product.prodname_actions %} runners in your environment. You can provision self-hosted runners at the repository, organization, or enterprise account level. See [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners) and [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners). -{% ifversion code-scanning-runner-label or default-setup-self-hosted-runners-GHEC %} +{% ifversion default-setup-self-hosted-runners-GHEC %} If you are provisioning a self-hosted runner for {% data variables.product.prodname_codeql %} analysis, your runner must use a {% data variables.product.prodname_codeql %}-supported operating system version and CPU architecture. See the [{% data variables.product.prodname_codeql %} system requirements](https://codeql.github.com/docs/codeql-overview/system-requirements/). If you are using default setup for {% data variables.product.prodname_code_scanning %}, you can assign self-hosted runners {% ifversion code-scanning-default-setup-customize-labels %}with the default `code-scanning` label, or you can optionally give them custom labels so that individual repositories can use different runners.{% else %}with the `code-scanning` label.{% endif %} See [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning#assigning-labels-to-runners). -{% ifversion code-scanning-default-setup-self-hosted-310 or default-setup-self-hosted-runners-GHEC %} For information about using default setup for code scanning analysis of compiled languages, see [AUTOTITLE](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/codeql-code-scanning-for-compiled-languages).{% endif %} +For information about using default setup for code scanning analysis of compiled languages, see [AUTOTITLE](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/codeql-code-scanning-for-compiled-languages). {% endif %} diff --git a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md index 745157448606..e3497f48f3d5 100644 --- a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md +++ b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md @@ -4,7 +4,7 @@ shortTitle: Configuring dependency review intro: 'To help users understand dependency changes when reviewing pull requests, you can enable, configure, and disable dependency review for {% data variables.product.prodname_ghe_server %}.' product: '{% data reusables.gated-features.dependency-review %}' versions: - feature: dependency-review-action-ghes + ghes: '*' type: how_to topics: - Advanced Security diff --git a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md index 1984a43fb08b..b4c4822723de 100644 --- a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md +++ b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md @@ -23,7 +23,7 @@ topics: When you enable {% data variables.product.prodname_GH_advanced_security %} for your enterprise, repository administrators in all organizations can enable the features unless you set up a policy to restrict access. See [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise). -{% ifversion secret-scanning-enterprise-level-api %}{% data reusables.secret-scanning.secret-scanning-enterprise-level-api %}{% endif %} +{% data reusables.secret-scanning.secret-scanning-enterprise-level-api %} For guidance on a phased deployment of GitHub Advanced Security, see [AUTOTITLE](/code-security/adopting-github-advanced-security-at-scale/introduction-to-adopting-github-advanced-security-at-scale). diff --git a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise.md b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise.md index dd0c21ddc699..1fd37a211f04 100644 --- a/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise.md +++ b/content/admin/managing-code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise.md @@ -3,7 +3,8 @@ title: Managing GitHub Advanced Security features for your enterprise intro: 'You can control {% data variables.product.prodname_GH_advanced_security %} features that secure and analyze code across all organizations owned by your enterprise.' permissions: 'Enterprise owners can manage {% data variables.product.prodname_advanced_security %} features for organizations in an enterprise.' versions: - feature: secret-scanning-enterprise-level + ghec: '*' + ghes: '*' type: how_to topics: - Alerts @@ -31,7 +32,7 @@ To manage individual {% data variables.product.prodname_GH_advanced_security %} {% endif %} -{% ifversion secret-scanning-enterprise-level-api %}{% data reusables.secret-scanning.secret-scanning-enterprise-level-api %}{% endif %} +{% data reusables.secret-scanning.secret-scanning-enterprise-level-api %} {% ifversion ghes %}For information about buying a license for {% data variables.product.prodname_GH_advanced_security %}, see [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security).{% elsif ghec %}For information about buying a license for {% data variables.product.prodname_GH_advanced_security %}, see [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/signing-up-for-github-advanced-security).{% endif %} @@ -60,4 +61,4 @@ When you enable one or more security and analysis features for existing reposito > [!NOTE] > When a custom link is configured for an organization, the organization-level value overrides the custom link set for the enterprise. See [AUTOTITLE](/code-security/secret-scanning/protecting-pushes-with-secret-scanning). - ![Screenshot of the "Push protection" section of the settings for security and analysis features. The checkbox and the text field used for enabling a custom link are outlined in dark orange.](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} + ![Screenshot of "Push protection" settings. The checkbox and text field used for enabling a custom link are outlined.](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} diff --git a/content/admin/managing-code-security/securing-your-enterprise/creating-a-custom-security-configuration-for-your-enterprise.md b/content/admin/managing-code-security/securing-your-enterprise/creating-a-custom-security-configuration-for-your-enterprise.md index 628c55033a88..b5f8554f3627 100644 --- a/content/admin/managing-code-security/securing-your-enterprise/creating-a-custom-security-configuration-for-your-enterprise.md +++ b/content/admin/managing-code-security/securing-your-enterprise/creating-a-custom-security-configuration-for-your-enterprise.md @@ -78,7 +78,7 @@ When creating a security configuration, keep in mind that: 1. To help identify your {% data variables.product.prodname_custom_security_configuration %} and clarify its purpose on the "Configurations" page, name your configuration and create a description. 1. In the "{% data variables.product.prodname_GH_advanced_security %} features" row, choose whether to include or exclude {% data variables.product.prodname_GH_advanced_security %} (GHAS) features. If you plan to apply a {% data variables.product.prodname_custom_security_configuration %} with GHAS features to private repositories, you must have available GHAS licenses for each active unique committer to those repositories, or the features will not be enabled. See [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security). 1. In the "Dependency graph and {% data variables.product.prodname_dependabot %}" section of the security settings table, choose whether you want to enable, disable, or keep the existing settings for the following security features: - * {% data variables.product.prodname_dependabot_alerts %}. To learn about {% data variables.product.prodname_dependabot %}, see "[AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)." + * {% data variables.product.prodname_dependabot_alerts %}. To learn about {% data variables.product.prodname_dependabot %}, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts). > [!NOTE] {% data variables.dependabot.auto_triage_rules %} are not available to set at enterprise level. If an enterprise-level security configuration is applied to a repository, it can still have {% data variables.dependabot.auto_triage_rules %} enabled, but you can't turn off these rules at the level of the enterprise. * Security updates. To learn about security updates, see [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates). > [!NOTE] diff --git a/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md b/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md index a21d5b251c5c..85a576560365 100644 --- a/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md +++ b/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md @@ -53,7 +53,7 @@ To configure {% data variables.product.prodname_ghe_server %} to use OIDC with a ![Screenshot of the "Overview" page in Entra ID. The first four items in the "Essentials" section are highlighted with an orange outline.](/assets/images/azure/azure-aad-app-storage-ids.png) 1. In your Entra ID application, under "Manage", click **Certificates & secrets**, select the **Federated credentials** tab, then click **Add credential**. - ![Screenshot of the "Federated credentials" page in Entra ID. The "Certificates & secrets" tab, the "Federated credentials" tab, and the "Add credential" button are highlighted with orange outlines.](/assets/images/azure/azure-federated-credential.png) + ![Screenshot of the page to manage "Certificates & secrets". The page link, "Federated credentials" tab, and "Add credential" button are outlined.](/assets/images/azure/azure-federated-credential.png) 1. Enter the following details for the credential: 1. For "Federated credential scenario", select **Other issuer**. 1. For "Issuer", enter `https://HOSTNAME/_services/token`, where `HOSTNAME` is the public hostname for {% data variables.location.product_location_enterprise %}. For example, `https://my-ghes-host.example.com/_services/token`. diff --git a/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-google-cloud-storage.md b/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-google-cloud-storage.md index 83baa2a51626..f5f216e5f733 100644 --- a/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-google-cloud-storage.md +++ b/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-google-cloud-storage.md @@ -3,7 +3,7 @@ title: Enabling GitHub Actions with Google Cloud Storage intro: 'You can enable {% data variables.product.prodname_actions %} on {% data variables.product.prodname_ghe_server %} and use Google Cloud Storage to store data generated by workflow runs.' permissions: 'Site administrators can enable {% data variables.product.prodname_actions %} and configure enterprise settings.' versions: - feature: actions-ghes-gcp-storage + ghes: '*' type: how_to topics: - Actions diff --git a/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md b/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md index b807c439e32a..fb160590be46 100644 --- a/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md +++ b/content/admin/managing-github-actions-for-your-enterprise/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md @@ -23,18 +23,11 @@ To use {% data variables.product.prodname_dependabot_updates %} on {% data varia ## Prerequisites -{% ifversion dependabot-updates-github-connect %} Configuring self-hosted runners is only one step in the middle of the process for enabling {% data variables.product.prodname_dependabot_updates %}. There are several steps you must follow before these steps, including configuring {% data variables.location.product_location %} to use {% data variables.product.prodname_actions %} with self-hosted runners. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise). -{% else %} -Before you configure self-hosted runners for {% data variables.product.prodname_dependabot_updates %}, you must: - -* Configure {% data variables.location.product_location %} to use {% data variables.product.prodname_actions %} with self-hosted runners. For more information, see [AUTOTITLE](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server). -* Enable {% data variables.product.prodname_dependabot_alerts %} for your enterprise. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise). -{% endif %} ## Configuring self-hosted runners for {% data variables.product.prodname_dependabot_updates %} -## # System requirements for {% data variables.product.prodname_dependabot %} runners +### System requirements for {% data variables.product.prodname_dependabot %} runners {% data reusables.dependabot.dependabot-runners-system-requirements %} diff --git a/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md b/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md index 8ed1ef4af57b..af706adcf3e7 100644 --- a/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md +++ b/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md @@ -79,9 +79,7 @@ All other {% data variables.product.prodname_actions %} data, such as the workfl * Azure Blob storage * Amazon S3 -{%- ifversion actions-ghes-gcp-storage %} * Google Cloud Storage -{%- endif %} * S3-compatible MinIO cluster > [!NOTE] @@ -101,9 +99,7 @@ Follow one of the procedures below to enable {% data variables.product.prodname_ * [Enabling GitHub Actions with Azure Blob storage](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage) * [Enabling GitHub Actions with Amazon S3 storage](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-amazon-s3-storage) -{%- ifversion actions-ghes-gcp-storage %} * [Enabling GitHub Actions with Google Cloud Storage](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-google-cloud-storage) -{%- endif %} * [Enabling GitHub Actions with MinIO storage](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-storage) ## Managing access permissions for {% data variables.product.prodname_actions %} in your enterprise diff --git a/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md b/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md index 88dedd6690aa..1fae152244f2 100644 --- a/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md +++ b/content/admin/managing-github-actions-for-your-enterprise/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md @@ -29,11 +29,9 @@ Then,{% else %}First,{% endif %} decide whether you'll allow third-party actions For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#managing-github-actions-permissions-for-your-repository), [AUTOTITLE](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#managing-github-actions-permissions-for-your-organization), and [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-to-restrict-the-use-of-github-actions-in-your-enterprise). -{% ifversion ghec or ghes %} Consider combining OpenID Connect (OIDC) with reusable workflows to enforce consistent deployments across your repository, organization, or enterprise. You can do this by defining trust conditions on cloud roles based on reusable workflows. For more information, see [AUTOTITLE](/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows). -{% endif %} -You can access information about activity related to {% data variables.product.prodname_actions %} in the audit logs for your enterprise. If your business needs require retaining this information longer than audit log data is retained, plan how you'll export and store this data outside of {% data variables.product.prodname_dotcom %}. For more information, see {% ifversion ghec %}[AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/exporting-audit-log-activity-for-your-enterprise) and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise).{% else %}{% ifversion audit-log-streaming %}[AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise) and {% endif %}[AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/exploring-user-activity/log-forwarding).{% endif %} +You can access information about activity related to {% data variables.product.prodname_actions %} in the audit logs for your enterprise. If your business needs require retaining this information longer than audit log data is retained, plan how you'll export and store this data outside of {% data variables.product.prodname_dotcom %}. For more information, see {% ifversion ghec %}[AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/exporting-audit-log-activity-for-your-enterprise) and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise).{% else %}[AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise) and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/exploring-user-activity/log-forwarding).{% endif %} {% ifversion custom-org-roles %}You can practice the principle of least privilege by administering custom organization roles for access to settings in your {% data variables.product.prodname_actions %} CI/CD pipeline. For more information about custom organization roles, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles).{% endif %} diff --git a/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md b/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md index 2a57a1614116..06084b3be460 100644 --- a/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md +++ b/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md @@ -45,7 +45,9 @@ Each action is a repository in the `actions` organization, and each action repos > [!NOTE] > * When using setup actions (such as `actions/setup-LANGUAGE`) on {% data variables.product.product_name %} with self-hosted runners, you might need to set up the tools cache on runners that do not have internet access. For more information, see [AUTOTITLE](/admin/github-actions/managing-access-to-actions-from-githubcom/setting-up-the-tool-cache-on-self-hosted-runners-without-internet-access). +> * All `actions/setup-LANGUAGE` action repositories currently support three platforms: macOS, Windows, and Ubuntu. > * When {% data variables.product.product_name %} is updated, bundled actions are automatically replaced with default versions in the upgrade package. +> * Being bundled with {% data variables.product.prodname_ghe_server %} means the action is available within that environment, but it doesn’t automatically guarantee compatibility with all platforms or self-hosted runners. ## Configuring access to actions on {% data variables.product.prodname_dotcom_the_website %} @@ -53,13 +55,9 @@ Each action is a repository in the `actions` organization, and each action repos The recommended approach is to enable automatic access to all actions from {% data variables.product.prodname_dotcom_the_website %}. You can do this by using {% data variables.product.prodname_github_connect %} to integrate {% data variables.product.product_name %} with {% data variables.product.prodname_ghe_cloud %}. For more information, see [AUTOTITLE](/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect). -{% ifversion ghes %} - > [!NOTE] > Before you can configure access to actions on {% data variables.product.prodname_dotcom_the_website %}, you must configure {% data variables.location.product_location %} to use {% data variables.product.prodname_actions %}. For more information, see [AUTOTITLE](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server). -{% endif %} - {% data reusables.actions.self-hosted-runner-networking-to-dotcom %} {% data reusables.actions.enterprise-limit-actions-use %} diff --git a/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md b/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md index 298ef473bd04..dc2ba6e8248e 100644 --- a/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md +++ b/content/admin/managing-github-actions-for-your-enterprise/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md @@ -38,7 +38,7 @@ Once {% data variables.product.prodname_github_connect %} is configured, you can 1. Under **Reason**, type a reason for unlocking the repository, then click **Unlock**. 1. Now that the repository is unlocked, you can leave the site admin pages and delete the repository within the `actions` organization. At the top of the page, click the repository name, in this example **checkout**, to return to the summary page. - ![Screenshot of the site admin details for the actions/checkout repository. The name of the repository, "checkout", is a link and is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/display-repository-admin-summary.png) + ![Screenshot of the site admin details for the actions/checkout repository. The name of the repository, "checkout", is a link and is outlined.](/assets/images/enterprise/site-admin-settings/display-repository-admin-summary.png) 1. Under "Repository info", click **View code** to leave the site admin pages and display the `checkout` repository. ![Screenshot of the site admin details for a repository. The "View code" link is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/exit-admin-page-for-repository.png) diff --git a/content/admin/managing-iam/iam-configuration-reference/saml-configuration-reference.md b/content/admin/managing-iam/iam-configuration-reference/saml-configuration-reference.md index da95aafe1d71..24a9d261b237 100644 --- a/content/admin/managing-iam/iam-configuration-reference/saml-configuration-reference.md +++ b/content/admin/managing-iam/iam-configuration-reference/saml-configuration-reference.md @@ -129,6 +129,36 @@ To specify more than one value for an attribute, use multiple ` ``` +{% ifversion ghes %} + +## SAML signing certificate for AuthnRequests + +When you first set up {% data variables.product.prodname_ghe_server %} and start the instance, a self-signed SAML signing certificate is generated, separate from the IdP's SAML certificate. This certificate is used to sign SAML `AuthnRequests` sent to the IdP and is valid for ten years. It is stored at `/data/user/common/saml-sp.p12` and you can view details in base64-encoded format at `http(s)://HOSTNAME/saml/metadata`. + +If your IdP validates the SAML signing certificate, or if SAML encrypted assertions are enabled, users may face authentication issues when the certificate expires. To check the expiration date, a {% data variables.product.prodname_ghe_server %} administrator can connect to the server via SSH and run the command below. See [Connecting to the administrative shell over SSH](/admin/administering-your-instance/administering-your-instance-from-the-command-line/accessing-the-administrative-shell-ssh#connecting-to-the-administrative-shell-over-ssh). + +`sudo openssl pkcs12 -in /data/user/common/saml-sp.p12 -clcerts -nokeys -password pass: | sudo openssl x509 -noout -enddate` + +To re-generate this SAML SP signing certificate if it has expired and it's required by the IdP or encrypted assertions, a {% data variables.product.prodname_ghe_server %} administrator can run the commands below in a {% data variables.product.prodname_ghe_server %} SSH session. + +>[!NOTE] +> The `nomad` commands will be briefly disruptive to users as the `github-unicorn` service restarts. + +``` shell +# Backup the old certificate +sudo cp /data/user/common/saml-sp.p12 /data/user/common/saml-sp.p12-$(date +%d%m%Y_%H%M%S) + +saml_tempdir=$(sudo mktemp -d) +sudo openssl req -new -newkey rsa:4096 -days 3650 -nodes -x509 -sha256 -subj "/CN=github_enterprise" -keyout $saml_tempdir/saml.key -out $saml_tempdir/saml.crt +sudo openssl pkcs12 -export -inkey $saml_tempdir/saml.key -in $saml_tempdir/saml.crt -nodes -password pass: -out /data/user/common/saml-sp.p12 +sudo rm -rf $saml_tempdir + +sudo nomad stop github-unicorn +sudo nomad run -hcl1 /etc/nomad-jobs/github/unicorn.hcl +``` + +{% endif %} + ## Session duration and timeout To prevent a person from authenticating with your IdP and staying authorized indefinitely, {% data variables.product.product_name %} periodically invalidates the session for each user account with access to {% ifversion ghec %}your enterprise's resources{% elsif ghes %}{% data variables.location.product_location %}{% endif %}. After invalidation, the person must authenticate with your IdP once again. diff --git a/content/admin/managing-iam/using-saml-for-enterprise-iam/enabling-encrypted-assertions.md b/content/admin/managing-iam/using-saml-for-enterprise-iam/enabling-encrypted-assertions.md index e160b0c3599e..e7233377e2ce 100644 --- a/content/admin/managing-iam/using-saml-for-enterprise-iam/enabling-encrypted-assertions.md +++ b/content/admin/managing-iam/using-saml-for-enterprise-iam/enabling-encrypted-assertions.md @@ -49,3 +49,9 @@ To enable encrypted assertions, you must provide {% data variables.location.prod {% data reusables.enterprise_site_admin_settings.wait-for-configuration-run %} If you enabled SAML debugging to test authentication with encrypted assertions, disable SAML debugging when you're done testing. For more information, see [AUTOTITLE](/admin/identity-and-access-management/using-saml-for-enterprise-iam/troubleshooting-saml-authentication#configuring-saml-debugging). + +## SAML signing certificate for AuthnRequests + +With encrypted assertions, {% data variables.product.prodname_ghe_server %} relies on the SAML signing certificate private key to decrypt assertions. This certificate is automatically generated when {% data variables.product.prodname_ghe_server %} is set up, and it is valid for 10 years. + +You can find more details about the SAML signing certificate, how long it is valid for, and how to regenerate it if needed in [AUTOTITLE](/admin/managing-iam/iam-configuration-reference/saml-configuration-reference#saml-signing-certificate-for-authnrequests). diff --git a/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md b/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md index a7dc76479802..d1eb5920d41c 100644 --- a/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md +++ b/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md @@ -96,7 +96,6 @@ The following aggregate metrics will be collected and transmitted on a daily bas | AN | `ghe_stats.users.total_users` | Number of user accounts | | AO | `ghe_stats.users.admin_users` | Number of user accounts that are site administrators | | AP | `ghe_stats.users.suspended_users` | Number of user accounts that are suspended | -| {% ifversion actions-server-statistics %} | | AQ | `actions_stats.number_of_repos_using_actions` | Number of repositories using {% data variables.product.prodname_actions %} | | AR | `actions_stats.percentage_of_repos_using_actions` | Percentage of repositories using {% data variables.product.prodname_actions %} | | AS | `packages_stats.registry_enabled` | Whether {% data variables.product.prodname_registry %} with repository-scoped packages is enabled for {% data variables.location.product_location %} | @@ -167,7 +166,6 @@ The following aggregate metrics will be collected and transmitted on a daily bas | DF |`packages_stats.ecosystems.containers.daily_update_count` | Number of container images updated | | DG |`packages_stats.ecosystems.containers.daily_delete_count` | Number of container images deleted | | DH | `packages_stats.ecosystems.containers.daily_create_count` | Number of container images created | -| {% endif %} | ## {% data variables.product.prodname_server_statistics %} data examples diff --git a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise.md b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise.md index 2016679a1073..0f48748aae96 100644 --- a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise.md +++ b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise.md @@ -43,14 +43,12 @@ In addition to viewing your audit log, you can monitor activity in your enterpri As an enterprise owner{% ifversion ghes %} or site administrator{% endif %}, you can interact with the audit log data for your enterprise in several ways: * You can view the audit log for your enterprise. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise). * You can search the audit log for specific events{% ifversion ghec %} and export audit log data{% endif %}. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/searching-the-audit-log-for-your-enterprise){% ifversion ghec %} and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/exporting-audit-log-activity-for-your-enterprise){% endif %}.{% ifversion token-audit-log %} -* You can identify all events that were performed by a specific access token. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/identifying-audit-log-events-performed-by-an-access-token).{% endif %}{% ifversion audit-data-retention-tab %} -* You can configure settings, such as the retention period for audit log events{% ifversion enable-git-events %} and whether Git events are included{% endif %}. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise).{% endif %} +* You can identify all events that were performed by a specific access token. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/identifying-audit-log-events-performed-by-an-access-token).{% endif %}{% ifversion ghes %} +* You can configure settings, such as the retention period for audit log events and whether Git events are included. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise).{% endif %} {%- ifversion enterprise-audit-log-ip-addresses %} * You can display the IP address associated with events in the audit log. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/displaying-ip-addresses-in-the-audit-log-for-your-enterprise). {%- endif %} -{%- ifversion audit-log-streaming %} * You can stream audit and Git events data from {% data variables.product.prodname_dotcom %} to an external data management system. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise). -{%- endif %} {%- ifversion ghes %} * You can forward audit and system logs, from your enterprise to an third-party hosted monitoring system. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/exploring-user-activity/log-forwarding). {%- endif %} diff --git a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise.md b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise.md index 348342a317c4..739c2241c71e 100644 --- a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise.md +++ b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise.md @@ -4,7 +4,7 @@ intro: You can configure settings for your enterprise's audit log. shortTitle: Configure audit logs permissions: Enterprise owners can configure the audit log. versions: - feature: audit-data-retention-tab + ghes: '*' type: how_to topics: - Auditing @@ -16,9 +16,7 @@ topics: You can configure a retention period for audit log data and see index storage details. -{% ifversion enable-git-events %} After you configure a retention period, you can enable or disable Git-related events from appearing in the audit log. -{% endif %} ## Configuring a retention period for audit log data @@ -31,15 +29,11 @@ You can configure a retention period for audit log data for {% data variables.lo 1. Under "Configure audit log retention settings", select the dropdown menu and click a retention period. 1. Click **Save**. -{% ifversion enable-git-events %} - ## Managing Git events in the audit log You can enable or disable Git-related events, such as `git.clone` and `git.push`, from appearing in your audit log. For a list of the Git events are logged, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise#git). -{% ifversion ghes %} If you do enable Git events, due to the large number of Git events that are logged, we recommend monitoring your instance's file storage and reviewing your related alert configurations. For more information, see [AUTOTITLE](/admin/enterprise-management/monitoring-your-appliance/recommended-alert-thresholds#monitoring-storage). -{% endif %} Before you can enable Git events in the audit log, you must configure a retention period for audit log data other than "infinite." For more information, see [Configuring a retention period for audit log data](#configuring-a-retention-period-for-audit-log-data). @@ -56,5 +50,3 @@ Before you can enable Git events in the audit log, you must configure a retentio ![Screenshot of the audit log. The checkbox to enable Git events in the audit log is highlighted with an orange outline.](/assets/images/help/enterprises/enable-git-events-checkbox.png) 1. Click **Save**. - -{% endif %} diff --git a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md index 7c39fd68276f..018a9f422a69 100644 --- a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md +++ b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md @@ -2,7 +2,7 @@ title: Streaming the audit log for your enterprise intro: 'Learn how to stream audit and Git events data from {% data variables.product.prodname_dotcom %} to an external data management system.' versions: - feature: audit-log-streaming + ghes: '*' ghec: '*' type: tutorial topics: @@ -319,8 +319,6 @@ To restart streaming, click **Resume stream**. ## Enabling audit log streaming of API requests ->[!NOTE] This feature is currently in {% data variables.release-phases.public_preview %} and subject to change. - {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.audit-log-tab %} diff --git a/content/admin/monitoring-and-managing-your-instance/configuring-clustering/rebalancing-cluster-workloads.md b/content/admin/monitoring-and-managing-your-instance/configuring-clustering/rebalancing-cluster-workloads.md index 985e4406f60d..5fab7cb4e550 100644 --- a/content/admin/monitoring-and-managing-your-instance/configuring-clustering/rebalancing-cluster-workloads.md +++ b/content/admin/monitoring-and-managing-your-instance/configuring-clustering/rebalancing-cluster-workloads.md @@ -5,7 +5,7 @@ intro: 'You can force your {% data variables.product.product_name %} cluster to product: '{% data reusables.gated-features.cluster %}' permissions: 'People with administrative SSH access to a {% data variables.product.product_name %} instance can rebalance cluster workloads on the instance.' versions: - feature: cluster-rebalancing + ghes: '*' type: how_to topics: - Clustering diff --git a/content/admin/monitoring-and-managing-your-instance/configuring-clustering/replacing-a-cluster-node.md b/content/admin/monitoring-and-managing-your-instance/configuring-clustering/replacing-a-cluster-node.md index 8257d7de4fa4..8b5c82e1ce94 100644 --- a/content/admin/monitoring-and-managing-your-instance/configuring-clustering/replacing-a-cluster-node.md +++ b/content/admin/monitoring-and-managing-your-instance/configuring-clustering/replacing-a-cluster-node.md @@ -21,9 +21,7 @@ topics: You can replace a functional node in a {% data variables.product.product_name %} cluster, or you can replace a node that has failed unexpectedly. -{% ifversion cluster-rebalancing %} After you replace a node, {% data variables.location.product_location %} does not automatically distribute jobs to the new node. You can force your instance to balance jobs across nodes. For more information, see [AUTOTITLE](/admin/enterprise-management/configuring-clustering/rebalancing-cluster-workloads). -{% endif %} > [!WARNING] > To avoid conflicts, do not reuse a hostname that was previously assigned to a node in the cluster. diff --git a/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/monitoring-using-snmp.md b/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/monitoring-using-snmp.md index 08ddcae531a4..91284d8316e9 100644 --- a/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/monitoring-using-snmp.md +++ b/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/monitoring-using-snmp.md @@ -20,7 +20,7 @@ topics: --- SNMP is a common standard for monitoring devices over a network. We strongly recommend enabling SNMP so you can monitor the health of {% data variables.location.product_location %} and know when to add more memory, storage, or processor power to the host machine. -{% data variables.product.prodname_enterprise %} has a standard SNMP installation, so you can take advantage of the [many plugins](https://www.monitoring-plugins.org/doc/man/check_snmp.html) available for Nagios or for any other monitoring system. +{% data variables.product.prodname_enterprise %} has a standard SNMP installation, so you can take advantage of the [many plugins](https://nagios-plugins.org/doc/man/check_snmp.html) available for Nagios or for any other monitoring system. ## Configuring SNMP v2c diff --git a/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/troubleshooting-resource-allocation-problems.md b/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/troubleshooting-resource-allocation-problems.md index fb7aa5366772..975f78c3b226 100644 --- a/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/troubleshooting-resource-allocation-problems.md +++ b/content/admin/monitoring-and-managing-your-instance/monitoring-your-instance/troubleshooting-resource-allocation-problems.md @@ -27,7 +27,7 @@ shortTitle: Troubleshooting resource allocation problems We recommend using the monitor dashboard to stay informed on your appliance's resource health and make decisions on how to fix high usage issues, such as the ones outlined on this page. -For system-critical issues, and prior to making modifications to your appliance, we highly recommend contacting us by visiting {% data variables.contact.contact_ent_support %} and including your support bundle. For more information, see "[Providing data to {% data variables.product.prodname_enterprise %} Support](/enterprise/{{ currentVersion}}/admin/guides/enterprise-support/providing-data-to-github-support#creating-and-sharing-support-bundles)." +For system-critical issues, and prior to making modifications to your appliance, we highly recommend contacting us by visiting {% data variables.contact.contact_ent_support %} and including your support bundle. For more information, see [Providing data to {% data variables.product.prodname_enterprise %} Support](/enterprise/{{ currentVersion}}/admin/guides/enterprise-support/providing-data-to-github-support#creating-and-sharing-support-bundles). ## High CPU usage diff --git a/content/admin/monitoring-and-managing-your-instance/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md b/content/admin/monitoring-and-managing-your-instance/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md index 6111cc25a88a..2aa361f5d3ed 100644 --- a/content/admin/monitoring-and-managing-your-instance/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md +++ b/content/admin/monitoring-and-managing-your-instance/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md @@ -69,15 +69,41 @@ Root storage refers to the total size of your instance's root disk. The availabl > Before increasing the root partition size, you must put your instance in maintenance mode. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode). 1. Attach a new disk to your {% data variables.product.prodname_ghe_server %} appliance. -1. Run the `lsblk` command to identify the new disk's device name. +1. Run the `lsblk` command to identify the new disk's device name.{% ifversion ghes > 3.13 %} +1. Back up your existing EFI boot partition: + + ```shell + sudo dd if=/dev/disk/by-label/EFIBOOT of=EFIBOOT.bak bs=1M + ``` + +{% endif %} + 1. Run the `parted` command to format the disk, substituting your device name for `/dev/xvdg`: +{% ifversion ghes < 3.14 %} + ```shell sudo parted /dev/xvdg mklabel msdos sudo parted /dev/xvdg mkpart primary ext4 0% 50% sudo parted /dev/xvdg mkpart primary ext4 50% 100% ``` +{% else %} + + ```shell + sudo parted /dev/xvdg mklabel gpt + sudo parted -a optimal /dev/xvdg mkpart bios fat32 1MiB 2MiB + sudo parted /dev/xvdg set 1 bios_grub on + sudo parted -a optimal /dev/xvdg mkpart efi fat32 2MiB 512MiB + sudo parted /dev/xvdg set 2 esp on + sudo parted -a optimal /dev/xvdg mkpart primary 512MiB 50% + sudo parted /dev/xvdg set 3 boot off + sudo parted /dev/xvdg set 3 esp off + sudo parted -a optimal /dev/xvdg mkpart primary 50% 100% + ``` + +{% endif %} + 1. If your appliance is configured for high-availability or geo-replication, to stop replication run the `ghe-repl-stop` command on each replica node: ```shell @@ -86,6 +112,8 @@ Root storage refers to the total size of your instance's root disk. The availabl 1. To install the {% data variables.product.prodname_ghe_server %} software on the newly partitioned disk, run the `ghe-upgrade` command. You must replace **PACKAGE-NAME.pkg** with the path to a platform-specific upgrade package that matches the version of {% data variables.product.prodname_ghe_server %} already running on the appliance. You cannot use a universal hotpatch upgrade package, such as `github-enterprise-2.11.9.hpkg`. After the `ghe-upgrade` command completes, application services will automatically terminate. +{% ifversion ghes < 3.14 %} + ```shell ghe-upgrade PACKAGE-NAME.pkg -s -t /dev/xvdg1 ``` @@ -96,6 +124,21 @@ Root storage refers to the total size of your instance's root disk. The availabl sudo mkfs.ext4 -L fallback /dev/xvdg2 ``` +{% else %} + + ```shell + ghe-upgrade PACKAGE-NAME.pkg -s -t /dev/xvdg3 + ``` + +1. Run these commands on the secondary partitions of the newly added disk: + + ```shell + sudo dd if=/dev/disk/by-label/EFIBOOT of=/dev/xvdg2 bs=1M + sudo mkfs.ext4 -L fallback /dev/xvdg4 + ``` + +{% endif %} + 1. Shut down the appliance: ```shell diff --git a/content/admin/overview/setting-up-a-trial-of-github-enterprise-cloud.md b/content/admin/overview/setting-up-a-trial-of-github-enterprise-cloud.md index c357b7736a1d..9f66fc3c9158 100644 --- a/content/admin/overview/setting-up-a-trial-of-github-enterprise-cloud.md +++ b/content/admin/overview/setting-up-a-trial-of-github-enterprise-cloud.md @@ -16,15 +16,15 @@ shortTitle: Enterprise Cloud trial {% data reusables.enterprise.about-ghec %} See [AUTOTITLE](/enterprise-cloud@latest/admin/overview/about-github-enterprise-cloud). -You can set up a trial to evaluate the additional features that come with {% data variables.product.prodname_ghe_cloud %}, such as SAML single sign-on (SSO), internal repositories, and audit log streaming. For a list of available features, see our [Pricing](https://github.com/pricing) page. +>You can set up a trial to evaluate features that require {% data variables.product.prodname_ghe_cloud %}, such as SAML single sign-on (SSO) and {% data variables.product.prodname_GH_advanced_security %}. For a full list of available features, see our [Pricing](https://github.com/pricing) page. Your trial **won't** include {% data variables.enterprise.data_residency_short %} on {% data variables.enterprise.data_residency_site %} or access to {% data variables.product.prodname_ghe_server %}. To test these features, contact {% data variables.contact.contact_enterprise_sales %}. Set up a trial of {% data variables.product.prodname_ghe_cloud %} {% octicon "link-external" height:16 %} -To set up a trial, you must be signed in to a personal account. If you don't have a personal account, see [AUTOTITLE](/free-pro-team@latest/get-started/start-your-journey/creating-an-account-on-github). +>[!IMPORTANT] Your trial enterprise will be hosted in the USA. If you require {% data variables.enterprise.data_residency_short %} outside the USA, contact {% data variables.contact.contact_sales_data_residency %}. -You do not need to provide a payment method during the trial. +To set up a trial, you must be signed in to a personal account. If you don't have a personal account, see [AUTOTITLE](/free-pro-team@latest/get-started/start-your-journey/creating-an-account-on-github). {% data reusables.enterprise.enterprise-types %} @@ -33,15 +33,16 @@ You do not need to provide a payment method during the trial. The trial lasts for **{% data reusables.enterprise.ghec-trial-length %} days** and includes the following features. * Access to **most** {% data variables.product.prodname_ghe_cloud %} features.{% ifversion metered-ghe-ghas %} +* {% data variables.product.prodname_copilot_for_business %} +* {% data variables.product.prodname_GH_advanced_security %} * Access to the **new billing platform**. See [AUTOTITLE](/billing/using-the-new-billing-platform/about-the-new-billing-platform-for-enterprises).{% endif %} * An **enterprise account**, which allows you to manage multiple organizations. See [AUTOTITLE](/enterprise-cloud@latest/get-started/learning-about-github/types-of-github-accounts). * Up to **50 seats** to grant access to users. -* The option to set up a free trial of **{% data variables.product.prodname_GH_advanced_security %}** to test features such as {% data variables.product.prodname_code_scanning %} and {% data variables.product.prodname_secret_scanning %}. See [AUTOTITLE](/enterprise-cloud@latest/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security). ## Features not included in the trial * {% data variables.product.prodname_github_codespaces %} -* {% data variables.product.prodname_copilot_for_business %} or {% data variables.product.prodname_copilot_enterprise %} +* {% data variables.product.prodname_copilot_enterprise %} * {% data variables.product.prodname_sponsors %} * Paid {% data variables.product.prodname_marketplace %} apps * {% data variables.product.prodname_github_connect %} @@ -50,6 +51,10 @@ The trial lasts for **{% data reusables.enterprise.ghec-trial-length %} days** a If you invite an existing organization into your trial enterprise, **all of these features will be disabled**. If you remove the organization from the enterprise, the features will be re-enabled. +## Do I need to provide a payment method? + +You do not need to provide a payment method to start a trial. If you want to use {% data variables.product.prodname_copilot_business_short %} during the trial, you need to provide a credit card. You **won't** be charged for using {% data variables.product.prodname_copilot_business_short %} during the trial. + ## During the trial After you set up your trial, you can explore {% data variables.product.prodname_ghe_cloud %} by following the suggested tasks on the "Getting started" tab of your enterprise account. @@ -60,6 +65,8 @@ You can create up to **three new organizations** in the trial enterprise, or tra * Billing for transferred organizations is paused during the trial and any coupons are removed. To reapply a coupon, contact {% data variables.contact.contact_support_page %}. * Organizations created during the trial cannot be removed from the enterprise account until you purchase {% data variables.product.prodname_enterprise %}. +For help setting up the included features, once you've started your trial, see [AUTOTITLE](/enterprise-cloud@latest/get-started/onboarding/getting-started-with-the-github-enterprise-cloud-trial). + ## What happens when the trial ends? You can end your trial at any time by purchasing {% data variables.product.prodname_enterprise %} or canceling the trial. Otherwise, after {% data reusables.enterprise.ghec-trial-length %} days, your trial will expire. diff --git a/content/apps/creating-github-apps/about-creating-github-apps/migrating-oauth-apps-to-github-apps.md b/content/apps/creating-github-apps/about-creating-github-apps/migrating-oauth-apps-to-github-apps.md index f2eaf543c0ef..b6e358ab8a4f 100644 --- a/content/apps/creating-github-apps/about-creating-github-apps/migrating-oauth-apps-to-github-apps.md +++ b/content/apps/creating-github-apps/about-creating-github-apps/migrating-oauth-apps-to-github-apps.md @@ -20,10 +20,10 @@ shortTitle: 'Migrate from {% data variables.product.prodname_oauth_apps %}' {% data variables.product.prodname_github_apps %} are the recommended way to integrate with {% data variables.product.company_short %}. {% data variables.product.prodname_github_apps %} offer many advantages over {% data variables.product.prodname_oauth_apps %}, including: -* enhanced security features, like fine-grained permissions, choice over repository access, and short lived tokens -* the ability to act independently of or on behalf of a user -* scalable rate limits -* built-in webhooks +* Enhanced security features, like fine-grained permissions, choice over repository access, and short lived tokens +* The ability to act independently of or on behalf of a user +* Scalable rate limits +* Built-in webhooks For more information, see [AUTOTITLE](/apps/creating-github-apps/setting-up-a-github-app/about-creating-github-apps#using-a-github-app-instead-of-an-oauth-app). diff --git a/content/apps/creating-github-apps/authenticating-with-a-github-app/making-authenticated-api-requests-with-a-github-app-in-a-github-actions-workflow.md b/content/apps/creating-github-apps/authenticating-with-a-github-app/making-authenticated-api-requests-with-a-github-app-in-a-github-actions-workflow.md index dafdc9e32f4e..951a7d88b9d6 100644 --- a/content/apps/creating-github-apps/authenticating-with-a-github-app/making-authenticated-api-requests-with-a-github-app-in-a-github-actions-workflow.md +++ b/content/apps/creating-github-apps/authenticating-with-a-github-app/making-authenticated-api-requests-with-a-github-app-in-a-github-actions-workflow.md @@ -28,7 +28,7 @@ In order to use a {% data variables.product.prodname_github_app %} to make authe 1. Install the {% data variables.product.prodname_github_app %} on your user account or organization and grant it access to any repositories that you want your workflow to access. For more information, see [AUTOTITLE](/apps/maintaining-github-apps/installing-github-apps#installing-your-private-github-app-on-your-repository). 1. In your {% data variables.product.prodname_actions %} workflow, create an installation access token, which you can use to make API requests. - {% ifversion ghes < 3.12 %}To do this, you can use a pre-made action as demonstrated in the following example. If you prefer to not use a third party action, you can fork and modify the `tibdex/github-app-token` action, or you can write a script to make your workflow create an installation token manually. For more information, see [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation).{% else %}To do this, you can use a {% data variables.product.company_short %}-owned action as demonstrated in the following example. If you prefer to not use this action, you can fork and modify the [`actions/create-github-app-token` action](https://github.com/actions/create-github-app-token), or you can write a script to make your workflow create an installation token manually. For more information, see "[AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation)."{% endif %} + {% ifversion ghes < 3.12 %}To do this, you can use a pre-made action as demonstrated in the following example. If you prefer to not use a third party action, you can fork and modify the `tibdex/github-app-token` action, or you can write a script to make your workflow create an installation token manually. For more information, see [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation).{% else %}To do this, you can use a {% data variables.product.company_short %}-owned action as demonstrated in the following example. If you prefer to not use this action, you can fork and modify the [`actions/create-github-app-token` action](https://github.com/actions/create-github-app-token), or you can write a script to make your workflow create an installation token manually. For more information, see [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation).{% endif %} The following example workflow uses the {% ifversion ghes < 3.12 %}`tibdex/github-app-token`{% else %}`actions/create-github-app-token`{% endif %} action to generate an installation access token. Then, the workflow uses the token to make an API request via the {% data variables.product.prodname_cli %}. diff --git a/content/apps/creating-github-apps/registering-a-github-app/choosing-permissions-for-a-github-app.md b/content/apps/creating-github-apps/registering-a-github-app/choosing-permissions-for-a-github-app.md index 4adb7ce854af..ca392afc73f6 100644 --- a/content/apps/creating-github-apps/registering-a-github-app/choosing-permissions-for-a-github-app.md +++ b/content/apps/creating-github-apps/registering-a-github-app/choosing-permissions-for-a-github-app.md @@ -23,7 +23,7 @@ topics: {% data variables.product.prodname_github_apps %} don't have any permissions by default. When you register a {% data variables.product.prodname_github_app %}, you can select permissions for the app. The permissions that you select determine what the app can do with {% data variables.product.company_short %}'s APIs and what webhooks the app can subscribe to. You should select the minimum permissions required for the app. -Although {% data variables.product.prodname_github_apps %} don't have any permissions by default, they do have implicit permissions to read public resources when acting on behalf of a user. When a user authorizes the app to act on their behalf, the {% data variables.product.prodname_github_app %} can use the resulting user access token to make requests to the REST API{% ifversion graphQL-for-fgpats-and-apps %} and the GraphQL API{% endif %} to read public resources. To learn more about acting on behalf of a user, see [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-with-a-github-app-on-behalf-of-a-user). +Although {% data variables.product.prodname_github_apps %} don't have any permissions by default, they do have implicit permissions to read public resources when acting on behalf of a user. When a user authorizes the app to act on their behalf, the {% data variables.product.prodname_github_app %} can use the resulting user access token to make requests to the REST API and the GraphQL API to read public resources. To learn more about acting on behalf of a user, see [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-with-a-github-app-on-behalf-of-a-user). App permissions are classified as repository, organization, or account permissions. Repository permissions allow your app to access resources related to repositories that are owned by the account where the app is installed. Organization permissions allow your app to access resources related to the organization where the app is installed, if it is installed on an organization account. Account permissions allow your app to access resources related to a user if the user has also authorized your app. For more information about user authorization of apps, see [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-with-a-github-app-on-behalf-of-a-user). diff --git a/content/apps/creating-github-apps/registering-a-github-app/making-a-github-app-public-or-private.md b/content/apps/creating-github-apps/registering-a-github-app/making-a-github-app-public-or-private.md index fe003e890faf..173d9f1c2b2c 100644 --- a/content/apps/creating-github-apps/registering-a-github-app/making-a-github-app-public-or-private.md +++ b/content/apps/creating-github-apps/registering-a-github-app/making-a-github-app-public-or-private.md @@ -38,7 +38,7 @@ Additionally, you can register a {% data variables.product.prodname_github_app % If you want your {% data variables.product.prodname_github_app %} to be available to organizations in a {% data variables.product.prodname_ghe_server %} instance that you are not part of, then you need to take additional steps. For more information, see [AUTOTITLE](/apps/sharing-github-apps/making-your-github-app-available-for-github-enterprise-server). -If it is important for {% ifversion ghes %}other {% endif %}{% data variables.product.prodname_ghe_server %} users to be able to use your tool, consider using {% data variables.product.prodname_actions %} instead of a {% data variables.product.prodname_github_app %}. Public actions are available on {% data variables.product.prodname_ghe_server %} instances with GitHub Connect. For more information, see "[AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect)" and "[AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises){% ifversion ghes %}."{% else %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% endif %} +If it is important for {% ifversion ghes %}other {% endif %}{% data variables.product.prodname_ghe_server %} users to be able to use your tool, consider using {% data variables.product.prodname_actions %} instead of a {% data variables.product.prodname_github_app %}. Public actions are available on {% data variables.product.prodname_ghe_server %} instances with GitHub Connect. For more information, see [AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect) and [AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises){% ifversion ghes %}.{% else %} in the {% data variables.product.prodname_ghe_server %} documentation.{% endif %} For information about changing the visibility of a {% data variables.product.prodname_github_app %} registration, see [AUTOTITLE](/apps/maintaining-github-apps/modifying-a-github-app). diff --git a/content/apps/creating-github-apps/writing-code-for-a-github-app/building-a-github-app-that-responds-to-webhook-events.md b/content/apps/creating-github-apps/writing-code-for-a-github-app/building-a-github-app-that-responds-to-webhook-events.md index 3adb6fbb2085..81436821cfdf 100644 --- a/content/apps/creating-github-apps/writing-code-for-a-github-app/building-a-github-app-that-responds-to-webhook-events.md +++ b/content/apps/creating-github-apps/writing-code-for-a-github-app/building-a-github-app-that-responds-to-webhook-events.md @@ -211,7 +211,7 @@ app.webhooks.onError((error) => { // This determines where your server will listen. // -// For local development, your server will listen to port 3000 on `localhost`. When you deploy your app, you will change these values. For more information, see "[Deploy your app](#deploy-your-app)." +// For local development, your server will listen to port 3000 on `localhost`. When you deploy your app, you will change these values. For more information, see [Deploy your app](#deploy-your-app). const port = 3000; const host = 'localhost'; const path = "/api/webhook"; diff --git a/content/apps/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md b/content/apps/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md index 6fac54b4d15b..b564bc74448c 100644 --- a/content/apps/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md +++ b/content/apps/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md @@ -35,7 +35,7 @@ You can view or download the transaction data to keep track of your subscription * **region:** The name of the region present in billing address. * **postal_code:** The postal code value present in billing address. -![Screenshot of the "Transactions" tab in the {% data variables.product.prodname_marketplace %} listing for an app. Transactions from the past week are listed in a table layout, with a search bar labeled "Search this file...".](/assets/images/marketplace/marketplace-transactions.png) +![Screenshot of the "Transactions" tab in an app listing. Transactions from the past week are listed in a table with a search field.](/assets/images/marketplace/marketplace-transactions.png) ## Accessing {% data variables.product.prodname_marketplace %} transactions diff --git a/content/apps/github-marketplace/github-marketplace-overview/about-marketplace-badges.md b/content/apps/github-marketplace/github-marketplace-overview/about-marketplace-badges.md index 6b7bb1ca959a..f27adf0e6b55 100644 --- a/content/apps/github-marketplace/github-marketplace-overview/about-marketplace-badges.md +++ b/content/apps/github-marketplace/github-marketplace-overview/about-marketplace-badges.md @@ -19,7 +19,7 @@ Certain apps on the {% data variables.product.prodname_marketplace %} have the { * Confirmed their email address so {% data variables.product.prodname_dotcom %} Support can reach the organization * Required two-factor authentication for their organization. For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/requiring-two-factor-authentication-in-your-organization). -![Screenshot of a marketplace badge for a {% data variables.product.prodname_github_app %}. The mouse pointer is hovering over an icon displaying the tooltip "Publisher domain and email verified."](/assets/images/marketplace/apps-with-verified-publisher-badge-tooltip.png) +![Screenshot of a marketplace badge for a {% data variables.product.prodname_github_app %}. The cursor hovers over an icon with the tooltip "Publisher domain and email verified."](/assets/images/marketplace/apps-with-verified-publisher-badge-tooltip.png) > [!WARNING] > {% data variables.product.prodname_dotcom %} does not analyze or inspect third party code. {% data variables.product.prodname_marketplace %} publishers are responsible for the upkeep and maintenance of any third-party apps. The marketplace badge {% octicon "verified" aria-label="The verified badge" %} only confirms that the publisher meets the requirements listed above. @@ -28,7 +28,7 @@ To learn how you can add this badge to your app, see [AUTOTITLE](/apps/github-ma Some apps on the {% data variables.product.prodname_marketplace %} have the {% octicon "verified" aria-label="The verified badge" %} badge and a tooltip that says "App meets the requirements for listing" instead of, "Publisher domain and email verified." This means that the app meets the listing requirements described in [AUTOTITLE](/apps/github-marketplace/creating-apps-for-github-marketplace/requirements-for-listing-an-app), but the publisher has not been verified, as described in [AUTOTITLE](/apps/github-marketplace/github-marketplace-overview/applying-for-publisher-verification-for-your-organization). Apps with this badge cannot change their pricing plan until the publisher successfully applies for verification. -![Screenshot of a marketplace badge for a {% data variables.product.prodname_github_app %}. The mouse pointer is hovering over an icon displaying the tooltip "App meets the requirements for listing."](/assets/images/marketplace/apps-with-unverified-publisher-badge-tooltip.png) +![Screenshot of a marketplace badge for a {% data variables.product.prodname_github_app %}. The cursor hovers over an icon with the tooltip "App meets the requirements for listing."](/assets/images/marketplace/apps-with-unverified-publisher-badge-tooltip.png) For more information about the requirements for listing an app on {% data variables.product.prodname_marketplace %}, see [AUTOTITLE](/apps/github-marketplace/creating-apps-for-github-marketplace/requirements-for-listing-an-app). diff --git a/content/apps/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md b/content/apps/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md index c2f6be058b9a..44f20c4d2fd6 100644 --- a/content/apps/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md +++ b/content/apps/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md @@ -48,7 +48,7 @@ To create a {% data variables.product.prodname_marketplace %} listing: {% data reusables.user-settings.edit_marketplace_listing %} 1. Once you've created a new draft listing, you'll see an overview of the sections that you'll need to visit before your {% data variables.product.prodname_marketplace %} listing will be complete. - ![Screenshot of a draft {% data variables.product.prodname_marketplace %} listing. In a section labeled "Publish your app to Marketplace," unfinished action items such as "Add your contact info" are marked with orange circles.](/assets/images/marketplace/marketplace-listing-overview.png) + ![Screenshot of a draft {% data variables.product.prodname_marketplace %} listing. Under "Publish your app to Marketplace," unfinished actions are marked with orange circles.](/assets/images/marketplace/marketplace-listing-overview.png) > [!NOTE] > In the "Contact info" section of your listing, we recommend using individual email addresses, rather than group emails addresses like support@domain.com. GitHub will use these email addresses to contact you about updates to {% data variables.product.prodname_marketplace %} that might affect your listing, new feature releases, marketing opportunities, payouts, and information on conferences and sponsorships. diff --git a/content/apps/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md b/content/apps/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md index 8fa588ba21d7..0265106644ca 100644 --- a/content/apps/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md +++ b/content/apps/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md @@ -111,7 +111,7 @@ If your app only works with specific languages, select up to 10 programming lang A feature card consists of your app's logo, name, and a custom background image that captures your brand personality. {% data variables.product.prodname_marketplace %} displays this card if your app is one of the four randomly featured apps at the top of the [homepage](https://github.com/marketplace). Each app's very short description is displayed below its feature card. -![Screenshot of a feature card for OctocatApp. The app's name and an icon of Mona are displayed on a pink background, above the description "United we code."](/assets/images/marketplace/marketplace-feature-card.png) +![Screenshot of a feature card for OctocatApp. The app's name and an icon of Mona are displayed on a pink background, above the text "United we code."](/assets/images/marketplace/marketplace-feature-card.png) As you upload images and select colors, your {% data variables.product.prodname_marketplace %} draft listing will display a preview of your logo and feature card. diff --git a/content/apps/maintaining-github-apps/managing-allowed-ip-addresses-for-a-github-app.md b/content/apps/maintaining-github-apps/managing-allowed-ip-addresses-for-a-github-app.md index 1fe6a4942f1a..2265f13240b8 100644 --- a/content/apps/maintaining-github-apps/managing-allowed-ip-addresses-for-a-github-app.md +++ b/content/apps/maintaining-github-apps/managing-allowed-ip-addresses-for-a-github-app.md @@ -18,11 +18,11 @@ Enterprise and organization owners can restrict access to assets by configuring When an organization has an allow list, third-party applications that connect via a {% data variables.product.prodname_github_app %} will be denied access unless either of the following condition sets are true: * The creator of the {% data variables.product.prodname_github_app %} has configured an allow list for the application that specifies the IP addresses at which their application runs. See below for details of how to do this, and -* The organization owner has chosen to permit the addresses in the {% data variables.product.prodname_github_app %}'s allow list to be added to their own allow list. For more information, see "[Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +* The organization owner has chosen to permit the addresses in the {% data variables.product.prodname_github_app %}'s allow list to be added to their own allow list. For more information, see [Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} or -* The organization owner has added an IP allow list entry for the IP addresses from which the application runs. See "[Adding an allowed IP address](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +* The organization owner has added an IP allow list entry for the IP addresses from which the application runs. See [Adding an allowed IP address](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} {% data reusables.apps.ip-allow-list-only-apps %} diff --git a/content/apps/oauth-apps/using-oauth-apps/internal-oauth-apps.md b/content/apps/oauth-apps/using-oauth-apps/internal-oauth-apps.md index f583a0b3bc91..f1fdae8e3b50 100644 --- a/content/apps/oauth-apps/using-oauth-apps/internal-oauth-apps.md +++ b/content/apps/oauth-apps/using-oauth-apps/internal-oauth-apps.md @@ -12,7 +12,7 @@ Some {% data variables.product.prodname_oauth_apps %} are internal apps. These a Some of these internal apps are automatically included with {% data variables.product.company_short %} and do not require user authorization. These apps will not appear in your list of authorized {% data variables.product.prodname_oauth_apps %}. -These internal apps will appear in the user security log, but will not appear in organization{% ifversion ghes or ghec %} or enterprise{% endif %} audit logs. {% ifversion ghes or ghec %}For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log), [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization), and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise).{% else %}For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log)" and "[AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization)."{% endif %} +These internal apps will appear in the user security log, but will not appear in organization{% ifversion ghes or ghec %} or enterprise{% endif %} audit logs. {% ifversion ghes or ghec %}For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log), [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization), and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise).{% else %}For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log) and [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization).{% endif %} These {% data variables.product.prodname_oauth_apps %} are : @@ -23,7 +23,7 @@ These {% data variables.product.prodname_oauth_apps %} are : * GitHub Codespaces for JetBrains * GitHub Desktop * GitHub Education -* github-importer-production +* github-importer-production * GitHub iOS * GitHub Support * JetBrains IDE Integration diff --git a/content/apps/using-github-apps/internal-github-apps.md b/content/apps/using-github-apps/internal-github-apps.md index 4874420e89cc..1128a73bb0a3 100644 --- a/content/apps/using-github-apps/internal-github-apps.md +++ b/content/apps/using-github-apps/internal-github-apps.md @@ -12,7 +12,7 @@ Some {% data variables.product.prodname_github_apps %} are internal apps. These Some of these internal apps are automatically included with {% data variables.product.company_short %} and do not require user authorization. These apps will not appear in your list of authorized {% data variables.product.prodname_github_apps %} or in your list of installed {% data variables.product.prodname_github_apps %}.{% ifversion ghec %}{% data variables.product.prodname_emus %} are allowed to install these internal apps on their user account, while standard, unprivileged apps cannot be installed on {% data variables.product.prodname_emus %} user accounts.{% endif %} -These internal apps will appear in the user security log, but will not appear in organization{% ifversion ghes or ghec %} or enterprise{% endif %} audit logs. {% ifversion ghes or ghec %}For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log), [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization), and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise).{% else %}For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log)" and "[AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization)."{% endif %} +These internal apps will appear in the user security log, but will not appear in organization{% ifversion ghes or ghec %} or enterprise{% endif %} audit logs. {% ifversion ghes or ghec %}For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log), [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization), and [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise).{% else %}For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log) and [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization).{% endif %} These {% data variables.product.prodname_github_apps %} are: diff --git a/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md b/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md index d008ecb45603..63e32f7fe85c 100644 --- a/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md +++ b/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md @@ -55,7 +55,7 @@ If you need to use multiple accounts on {% data variables.location.product_locat * If you enable 2FA, after you successfully enter your username and password, we'll also prompt you to provide a code that's generated by a time-based one time password (TOTP) application on your mobile device{% ifversion fpt or ghec %} or sent as a text message (SMS).{% endif %}{% ifversion 2fa-check-up-period %} * After you configure 2FA, your account enters a check up period for 28 days. You can leave the check up period by successfully performing 2FA within those 28 days. If you don't perform 2FA in that timespan, you'll then be asked to perform 2FA inside one of your existing {% data variables.product.prodname_dotcom %} sessions. * If you cannot perform 2FA to pass the 28th day checkup, you will be provided a shortcut that lets you reconfigure your 2FA settings. You must reconfigure your settings before you can access the rest of {% data variables.product.prodname_dotcom %}{% endif %}. For more information, see [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication#providing-a-2fa-code-when-signing-in-to-the-website){% ifversion 2fa-check-up-period %} and [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication){% endif %}. - * In addition to authentication with a TOTP application{% ifversion fpt or ghec %} or a text message{% endif %}, you can optionally add an alternative method of authentication with {% ifversion fpt or ghec %}{% data variables.product.prodname_mobile %} or{% endif %} a security key using WebAuthn. For more information, see {% ifversion fpt or ghec %}[AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-github-mobile) and {% endif %}[AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-a-security-key). + * In addition to authentication with a TOTP application{% ifversion fpt or ghec %} or a text message{% endif %}, you can optionally add an alternative method of authentication with {% ifversion fpt or ghec %}{% data variables.product.prodname_mobile %} or{% endif %} a security key using WebAuthn. See {% ifversion fpt or ghec %}[Configuring two-factor authentication using {% data variables.product.prodname_mobile %}](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-github-mobile) or {% endif %}[Configuring two-factor authentication using a security key](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-a-security-key). {% ifversion fpt or ghec %} diff --git a/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md b/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md index 30a16fc27d90..04065145f7d4 100644 --- a/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md +++ b/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md @@ -149,7 +149,7 @@ After using `git filter-repo` to remove the sensitive data and pushing your chan * Remove cached views. * If LFS Objects are involved, delete and/or purge the orphaned LFS objects. - {% ifversion ghes %}For more information about how site administrators can remove unreachable Git objects, see "[AUTOTITLE](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-repo-gc)." For more information about how site administrators can identify reachable commits, see "[Identifying reachable commits](#identifying-reachable-commits)."{% endif %}{% ifversion fpt or ghec %} + {% ifversion ghes %}For more information about how site administrators can remove unreachable Git objects, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-repo-gc). For more information about how site administrators can identify reachable commits, see [Identifying reachable commits](#identifying-reachable-commits).{% endif %}{% ifversion fpt or ghec %} >[!IMPORTANT] {% data variables.contact.github_support %} won't remove non-sensitive data, and will only assist in the removal of sensitive data in cases where we determine that the risk can't be mitigated by rotating affected credentials.{% endif %} 1. Collaborators must [rebase](https://git-scm.com/book/en/v2/Git-Branching-Rebasing), _not_ merge, any branches they created off of your old (tainted) repository history. One merge commit could reintroduce some or all of the tainted history that you just went to the trouble of purging. They may need to take additional steps as well; see [Make sure other copies are cleaned up: clones of colleagues](https://htmlpreview.github.io/?https://github.com/newren/git-filter-repo/blob/docs/html/git-filter-repo.html#_make_sure_other_copies_are_cleaned_up_clones_of_colleagues) in the `git filter-repo` manual. diff --git a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md index ad5724fbceb0..aaaa5f73eeb8 100644 --- a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md +++ b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md @@ -39,9 +39,7 @@ The events listed in your security log are triggered by your actions. Actions ar | `marketplace_agreement_signature` | Contains all activities related to signing the {% data variables.product.prodname_marketplace %} Developer Agreement. | | `marketplace_listing`| Contains all activities related to listing apps in {% data variables.product.prodname_marketplace %}. | | {% endif %} | -| {% ifversion security-log-oauth-access-tokens %} | | `oauth_access` | Contains all activities related to OAuth access tokens. | -| {% endif %} | | `oauth_authorization` | Contains all activities related to authorizing {% data variables.product.prodname_oauth_apps %}. For more information, see [AUTOTITLE](/apps/oauth-apps/using-oauth-apps/authorizing-oauth-apps). | | {% ifversion passkeys %} | | `passkey` | Contains activities related to your passkeys. See [AUTOTITLE](/authentication/authenticating-with-a-passkey/about-passkeys). | diff --git a/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md b/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md index 2828b5b6c762..39dc14cac93e 100644 --- a/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md +++ b/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md @@ -42,19 +42,17 @@ After you authenticate to perform a sensitive action, your session is temporaril ## Confirming access for sudo mode -To confirm access for sudo mode, you {% ifversion totp-and-mobile-sudo-challenge %}can{% else %}must{% endif %} authenticate with your password.{% ifversion totp-and-mobile-sudo-challenge %} Optionally, you can use a different authentication method, like {% ifversion passkeys %}a passkey, {% endif %}{% ifversion fpt or ghec %}a security key, {% data variables.product.prodname_mobile %}, or a 2FA code{% elsif ghes %}a security key or a 2FA code{% endif %}.{% endif %} +To confirm access for sudo mode, you can authenticate with your password. Optionally, you can use a different authentication method, like {% ifversion passkeys %}a passkey, {% endif %}{% ifversion fpt or ghec %}a security key, {% data variables.product.prodname_mobile %}, or a 2FA code{% elsif ghes %}a security key or a 2FA code{% endif %}. {%- ifversion passkeys %} * [Confirming access using a passkey key](#confirming-access-using-a-passkey) {%- endif %} -{%- ifversion totp-and-mobile-sudo-challenge %} * [Confirming access using a security key](#confirming-access-using-a-security-key) {%- ifversion fpt or ghec %} * [Confirming access using GitHub Mobile](#confirming-access-using-github-mobile) {%- endif %} * [Confirming access using a 2FA code](#confirming-access-using-a-2fa-code) * [Confirming access using your password](#confirming-access-using-your-password) -{%- endif %} {% ifversion passkeys %} @@ -63,8 +61,6 @@ To confirm access for sudo mode, you {% ifversion totp-and-mobile-sudo-challenge You must have a passkey registered to your account to confirm access to your account for sudo mode using a passkey. See [AUTOTITLE](/authentication/authenticating-with-a-passkey/about-passkeys). {% endif %} -{% ifversion totp-and-mobile-sudo-challenge %} - ### Confirming access using a security key You must configure two-factor authentication (2FA) for your account using a security key to confirm access to your account for sudo mode using the security key. For more information, see [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-a-security-key). @@ -94,6 +90,4 @@ When prompted to authenticate for sudo mode, type the authentication code from y ### Confirming access using your password -{% endif %} - When prompted to authenticate for sudo mode, type your password, then click **Confirm**. diff --git a/content/authentication/keeping-your-account-and-data-secure/viewing-and-managing-your-sessions.md b/content/authentication/keeping-your-account-and-data-secure/viewing-and-managing-your-sessions.md index b5e327fb7c3f..1eb4751abf6a 100644 --- a/content/authentication/keeping-your-account-and-data-secure/viewing-and-managing-your-sessions.md +++ b/content/authentication/keeping-your-account-and-data-secure/viewing-and-managing-your-sessions.md @@ -2,7 +2,10 @@ title: Viewing and managing your sessions intro: You can view and revoke your active sessions in your settings. versions: - feature: device-and-settings-management-page + fpt: '*' + ghec: '*' + ghes: '*' + type: how_to topics: - SSO diff --git a/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md b/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md index abc0a6941cee..e5e97d864646 100644 --- a/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md +++ b/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md @@ -26,10 +26,9 @@ To sign commits associated with your account on {% data variables.product.produc You can add multiple public keys to your account on {% data variables.product.product_name %}. Commits signed by any of the corresponding private keys will show as verified. {% ifversion persistent-commit-verification %}Once a commit has been verified, any commits signed by the corresponding private key will continue to show as verified, even if the public key is removed.{% else %}If you remove a public key, any commits signed by the corresponding private key will no longer show as verified.{% endif %} -![Screenshot of a list of commits. One commit is marked with a "Verified" label. Next to the label, a dropdown explains that the commit was signed and shows a timestamp of when it was signed.](/assets/images/help/settings/verified-persistent-commit.png) +![Screenshot of a list of commits. One commit is marked as "Verified." A dropdown shows the commit was signed and when it was signed.](/assets/images/help/settings/verified-persistent-commit.png) -{% ifversion upload-expired-or-revoked-gpg-key %} -To verify as many of your commits as possible, you can add expired and revoked keys. If the key meets all other verification requirements, commits that were previously signed by any of the corresponding private keys will show as verified and indicate that their signing key is expired or revoked.{% endif %} +To verify as many of your commits as possible, you can add expired and revoked keys. If the key meets all other verification requirements, commits that were previously signed by any of the corresponding private keys will show as verified and indicate that their signing key is expired or revoked. {% data reusables.gpg.supported-gpg-key-algorithms %} @@ -45,20 +44,6 @@ When verifying a signature, {% data variables.product.product_name %} extracts t 1. Click **Add GPG key**. 1. If prompted, authenticate to your {% data variables.product.prodname_dotcom %} account to confirm the action. -{% ifversion upload-expired-or-revoked-gpg-key %} -{% else %} - -## Updating an expired GPG key - -When verifying a signature, {% data variables.product.product_name %} checks that the key is not revoked or expired. If your signing key is revoked or expired, {% data variables.product.product_name %} cannot verify your signatures. - -If your key is expired, you must [update its expiration](https://www.gnupg.org/gph/en/manual.html#AEN329), export the new key, delete the expired key in your account on {% data variables.product.product_name %}, and add the new key to your account as described above. Your previous commits and tags will show as verified, as long as the key meets all other verification requirements. - -If your key is revoked, use the primary key or another key that is not revoked to sign your commits. - -If your key is invalid and you don't use another valid key in your key set, but instead generate a new GPG key with a new set of credentials, then your commits made with the revoked or expired key will continue to show as unverified. Also, your new credentials will not be able to re-sign or verify your old commits and tags. -{% endif %} - ## Further reading * [AUTOTITLE](/authentication/managing-commit-signature-verification/checking-for-existing-gpg-keys) diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md index e4de9af65db1..2d650852eac4 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md @@ -41,13 +41,9 @@ If you're a member of an {% data variables.enterprise.prodname_emu_enterprise %} > * If you're a member{% ifversion fpt or ghec %} or billing manager{% endif %} of an organization that requires 2FA, you will be unable to access that organization's resources while you have 2FA disabled. > * If you disable 2FA, you will automatically lose access to the organization. To regain access to the organization, if you're a member{% ifversion fpt or ghec %} or billing manager{% endif %}, you must re-enable 2FA. If you're an outside collaborator, you will also lose access to any private forks you have of the organization's private repositories after disabling 2FA, and must re-enable 2FA and contact an organization owner to have access restored. -{% ifversion 2fa-reconfiguration-inline-update %} - > [!NOTE] > You can reconfigure your 2FA settings without disabling 2FA entirely, allowing you to keep both your recovery codes and your membership in organizations that require 2FA. -{% endif %} - ## Configuring two-factor authentication using a TOTP app A time-based one-time password (TOTP) application automatically generates an authentication code that changes after a certain period of time. These apps can be downloaded to your phone or desktop. We recommend using cloud-based TOTP apps. {% data variables.product.prodname_dotcom %} is app-agnostic when it comes to TOTP apps, so you have the freedom to choose any TOTP app you prefer. Just search for `TOTP app` in your browser to find various options. You can also refine your search by adding keywords like `free` or `open source` to match your preferences. diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md index 2b8070616b99..cad349f09c26 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md @@ -14,9 +14,9 @@ shortTitle: Countries supporting SMS --- If we don't support two-factor authentication via text message for your country of residence, you can set up authentication via a TOTP mobile application. For more information, see [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication). -## Supported countries for SMS authentication +## Supported countries and regions for SMS authentication -If your country is not on this list, then we aren't currently able to reliably deliver text messages to your country. We update this list periodically. +If your country or region is not on this list, then we aren't currently able to reliably deliver text messages to your country. We update this list periodically.
  • Aland Islands
  • diff --git a/content/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions.md b/content/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions.md index 3bddadecd5eb..efcf84ed037b 100644 --- a/content/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions.md +++ b/content/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions.md @@ -5,6 +5,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-actions - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/about-billing-for-github-actions - /billing/managing-billing-for-github-actions/about-billing-for-github-actions + - /early-access/billing/actions-billing-update versions: fpt: '*' ghec: '*' diff --git a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md index 5cf2fb4b5596..e748d615d626 100644 --- a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md +++ b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md @@ -38,12 +38,12 @@ There are a few key differences between metered and volume billing for {% data v * **Volume billing:** - * Purchase a defined number of licenses (e.g. 100 licenses). + * Purchase a defined number of licenses (for example, 100 licenses). * If usage exceeds purchased licenses, you will need to purchase additional licenses to cover this overage usage. ### Managing committers and repositories -{% data variables.product.prodname_GH_advanced_security %} is billed per committer and enabled by repository. If a committer is removed from an organization or enterprise, they are no longer billable as of the removal day. However, if you disable {% data variables.product.prodname_GH_advanced_security %} on a repository, the committers tied to that repository will remain billable until the end of the current monthly billing cycle. Prorated billing applies if a committer starts partway through the month. For an example of how this works, see [Understanding usage](/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security#understanding-usage). +{% data variables.product.prodname_GH_advanced_security %} is billed per committer and enabled by repository. If you remove a committer from an organization or enterprise, or if you disable {% data variables.product.prodname_GH_advanced_security %} on a repository, the committers will remain billable until the end of the current monthly billing cycle. Prorated billing applies only when a committer starts partway through the month. For examples of how committers are tracked and billed, see [Understanding usage](/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security#understanding-usage). If you have further questions about using {% data variables.product.prodname_GH_advanced_security %}, you can contact your account manager in {% data variables.contact.contact_enterprise_sales %}. diff --git a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/managing-your-github-advanced-security-licensing.md b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/managing-your-github-advanced-security-licensing.md index 6f6baea2bfe4..d01ef0348193 100644 --- a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/managing-your-github-advanced-security-licensing.md +++ b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/managing-your-github-advanced-security-licensing.md @@ -34,7 +34,7 @@ Each license for {% data variables.product.prodname_GH_advanced_security %} spec 1. Under "Committers", click **Manage committers**. 1. Under "Total committers", click the plus or minus buttons to add or remove committers. - ![Screenshot of the {% data variables.product.prodname_GH_advanced_security %} committers screen. A text box with the number 5, a minus button on its left, and a plus button on its right, are highlighted in an orange outline.](/assets/images/help/enterprises/ghas-add-committers.png) + ![Screenshot of the {% data variables.product.prodname_GH_advanced_security %} committers screen. A text box with the number 5, with a minus and a plus button, are outlined in orange.](/assets/images/help/enterprises/ghas-add-committers.png) 1. Click **Update committers**. ## Canceling your {% data variables.product.prodname_GH_advanced_security %} subscription @@ -44,5 +44,5 @@ Each license for {% data variables.product.prodname_GH_advanced_security %} spec {% data reusables.enterprise-accounts.license-tab %} 1. To the right of "{% data variables.product.prodname_GH_advanced_security %}", click **Manage**, then click **Cancel Subscription**. - ![Screenshot of the "Manage" dropdown in the {% data variables.product.prodname_GH_advanced_security %} licensing screen. The "Cancel Subscription" button is highlighted with an orange outline.](/assets/images/help/enterprises/ghas-cancel-subscription.png) + ![Screenshot of the "Manage" dropdown in the {% data variables.product.prodname_GH_advanced_security %} licensing screen. The "Cancel Subscription" button is outlined in orange.](/assets/images/help/enterprises/ghas-cancel-subscription.png) 1. To confirm your cancellation, click **I understand, cancel Advanced Security**. diff --git a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security.md b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security.md index 3b3d970514b4..702b1d034d7d 100644 --- a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security.md +++ b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security.md @@ -25,11 +25,13 @@ shortTitle: Set up an Advanced Security trial ## About trials of {% data variables.product.prodname_GH_advanced_security %} -{% data reusables.advanced-security.ghas-trial-availability %} +There are a few ways to trial {% data variables.product.prodname_GH_advanced_security %}: -{% data reusables.advanced-security.ghas-trial-invoiced %} +* If you are **an existing {% data variables.product.prodname_ghe_cloud %} customer** paying by credit card or PayPal, and you have not yet purchased {% data variables.product.prodname_GH_advanced_security %} or participated in a trial, you can start a trial of {% data variables.product.prodname_GH_advanced_security %} at any time. For more information, see [Setting up your trial of {% data variables.product.prodname_GH_advanced_security %}](#setting-up-your-trial-of-github-advanced-security). +* If you are **a new {% data variables.product.prodname_ghe_cloud %} customer**, you can start a trial of {% data variables.product.prodname_ghe_cloud %}, which includes {% data variables.product.prodname_GH_advanced_security %}. For more information, see [AUTOTITLE](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud). +* {% ifversion ghec %}If you **pay by invoice**, contact {% data variables.contact.contact_enterprise_sales %} to discuss trialing {% data variables.product.prodname_GH_advanced_security %} for your enterprise.{% endif %} -During a trial, you can add any number of committers and enable {% data variables.product.prodname_GH_advanced_security %} for any number of organizations. The standard length of the trial is 30 days. If you're taking part in a free trial of {% data variables.product.prodname_ghe_cloud %}, the trial of {% data variables.product.prodname_GH_advanced_security %} will last for the time you have remaining on your trial of {% data variables.product.prodname_ghe_cloud %}. +During a trial of {% data variables.product.prodname_GH_advanced_security %} in a {% data variables.product.prodname_ghe_cloud %} account with a paid subscription, you can add any number of committers and enable {% data variables.product.prodname_GH_advanced_security %} for any number of organizations. During a trial of {% data variables.product.prodname_ghe_cloud %}, you can enable {% data variables.product.prodname_GH_advanced_security %} for your whole enterprise. ## Prerequisites diff --git a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md index dff77a72a22f..52fc30fbe39c 100644 --- a/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md +++ b/content/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md @@ -141,7 +141,7 @@ You can download the {% data variables.product.prodname_advanced_security %} lic {%- ifversion ghec %} 1. Under "{% data variables.product.prodname_GH_advanced_security %}," click the **Manage** dropdown and then click **Download report**. - ![Screenshot of the "Manage" dropdown in the {% data variables.product.prodname_GH_advanced_security %} licensing screen. The "Download Report" button is highlighted with an orange outline.](/assets/images/help/enterprises/ghas-download-report.png) + ![Screenshot of the "Manage" dropdown in the {% data variables.product.prodname_GH_advanced_security %} licensing screen. The "Download Report" button is outlined in orange.](/assets/images/help/enterprises/ghas-download-report.png) {%- elsif ghes %} 1. Under "{% data variables.product.prodname_GH_advanced_security %}," click **{% octicon "download" aria-hidden="true" %} CSV report** in the header of the "Committers" table. diff --git a/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md b/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md index 019cd3af4fa3..3ff6a735b197 100644 --- a/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md +++ b/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md @@ -112,9 +112,9 @@ If your enterprise does not use {% data variables.product.prodname_emus %}, you After a user successfully authenticates to a {% data variables.product.prodname_ghe_server %} instance for the first time, the user consumes a seat. -Suspended users are not counted when calculating the number of licensed users consuming seats. For more information, see "[Suspending and unsuspending users]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/suspending-and-unsuspending-users){% ifversion not ghes %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}."{% endif %} +Suspended users are not counted when calculating the number of licensed users consuming seats. For more information, see [Suspending and unsuspending users]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/suspending-and-unsuspending-users){% ifversion not ghes %} in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}.{% endif %} -Dormant users do occupy a seat license. Administrators can suspend dormant users to free licenses. For more information, see "[Managing dormant users]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users){% ifversion not ghes %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}."{% endif %} +Dormant users do occupy a seat license. Administrators can suspend dormant users to free licenses. For more information, see [Managing dormant users]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users){% ifversion not ghes %} in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}.{% endif %} {% endif %} diff --git a/content/billing/managing-the-plan-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md b/content/billing/managing-the-plan-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md index 963017894301..2bca2edbdd6a 100644 --- a/content/billing/managing-the-plan-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md +++ b/content/billing/managing-the-plan-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md @@ -26,7 +26,7 @@ shortTitle: View subscription & usage You can view an overview of {% ifversion ghec %}your subscription and paid{% elsif ghes %}the license{% endif %} usage for {% ifversion ghec %}your{% elsif ghes %}the{% endif %} enterprise account on {% ifversion ghec %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.location.product_location %}{% endif %}.{% ifversion ghec %} {% data reusables.enterprise.create-an-enterprise-account %} For more information, see [AUTOTITLE](/enterprise-cloud@latest/admin/managing-your-enterprise-account/creating-an-enterprise-account).{% endif %} -For invoiced {% data variables.product.prodname_enterprise %} customers{% ifversion ghes %} who use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}{% endif %}, each invoice includes details about billed services for all products. For example, in addition to your usage for {% ifversion ghec %}{% data variables.product.prodname_ghe_cloud %}{% elsif ghes %}{% data variables.product.product_name %}{% endif %}, you may have usage for {% data variables.product.prodname_GH_advanced_security %}{% ifversion ghec %}, {% elsif ghes %}. You may also have usage on {% data variables.product.prodname_dotcom_the_website %}, like {% endif %}paid licenses in organizations outside of your enterprise account, data packs for {% data variables.large_files.product_name_long %}, or subscriptions to apps in {% data variables.product.prodname_marketplace %}. For more information about invoices, see "[Managing invoices for your enterprise]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/managing-invoices-for-your-enterprise){% ifversion ghec %}."{% elsif ghes %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} +For invoiced {% data variables.product.prodname_enterprise %} customers{% ifversion ghes %} who use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}{% endif %}, each invoice includes details about billed services for all products. For example, in addition to your usage for {% ifversion ghec %}{% data variables.product.prodname_ghe_cloud %}{% elsif ghes %}{% data variables.product.product_name %}{% endif %}, you may have usage for {% data variables.product.prodname_GH_advanced_security %}{% ifversion ghec %}, {% elsif ghes %}. You may also have usage on {% data variables.product.prodname_dotcom_the_website %}, like {% endif %}paid licenses in organizations outside of your enterprise account, data packs for {% data variables.large_files.product_name_long %}, or subscriptions to apps in {% data variables.product.prodname_marketplace %}. For more information about invoices, see [Managing invoices for your enterprise]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/managing-invoices-for-your-enterprise){% ifversion ghec %}.{% elsif ghes %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} {% ifversion ghec %} diff --git a/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md b/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md index bca69cc07b7b..0feb5c32dd45 100644 --- a/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md +++ b/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md @@ -46,6 +46,6 @@ If you have any questions about renewing your license, contact {% data variables ## Further reading * [AUTOTITLE](/billing/managing-your-github-billing-settings/about-billing-for-your-enterprise) -* The [People that consume a license](/billing/managing-the-plan-for-your-github-account/about-per-user-pricing#people-that-consume-a-license)" section in "About per-user pricing" -* "[Setting up a {% data variables.product.prodname_ghe_server %} instance]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/installation/setting-up-a-github-enterprise-server-instance)" +* The [People that consume a license](/billing/managing-the-plan-for-your-github-account/about-per-user-pricing#people-that-consume-a-license) section in "About per-user pricing" +* [Setting up a {% data variables.product.prodname_ghe_server %} instance]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/installation/setting-up-a-github-enterprise-server-instance) * The [{% data variables.product.prodname_enterprise %} Releases](https://enterprise.github.com/releases/) website diff --git a/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md b/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md index 62f57ba35a6a..c973e125586c 100644 --- a/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md +++ b/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md @@ -18,7 +18,7 @@ shortTitle: Sync license usage {% data reusables.enterprise-licensing.about-license-sync %} -To ensure that you see up-to-date license details on {% data variables.product.prodname_ghe_cloud %}, you can sync license usage to {% data variables.product.prodname_dotcom_the_website %}{% ifversion ghecom-license-sync %} or {% data variables.enterprise.data_residency_site %}{% endif %} automatically, using {% data variables.product.prodname_github_connect %}. For more information about {% data variables.product.prodname_github_connect %}, see "[About {% data variables.product.prodname_github_connect %}]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-github-connect/about-github-connect){% ifversion ghec %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}."{% endif %} +To ensure that you see up-to-date license details on {% data variables.product.prodname_ghe_cloud %}, you can sync license usage to {% data variables.product.prodname_dotcom_the_website %}{% ifversion ghecom-license-sync %} or {% data variables.enterprise.data_residency_site %}{% endif %} automatically, using {% data variables.product.prodname_github_connect %}. For more information about {% data variables.product.prodname_github_connect %}, see [About {% data variables.product.prodname_github_connect %}]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-github-connect/about-github-connect){% ifversion ghec %} in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}.{% endif %} If you don't want to enable {% data variables.product.prodname_github_connect %}, you can manually sync license usage by uploading a file from {% data variables.product.prodname_ghe_server %} to {% data variables.product.prodname_dotcom_the_website %}. @@ -30,7 +30,7 @@ When you synchronize license usage, only the user ID and email addresses for eac ## Automatically syncing license usage -You can use {% data variables.product.prodname_github_connect %} to automatically synchronize user license count and usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %} weekly. For more information, see "[Enabling automatic user license sync for your enterprise]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise){% ifversion ghec %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}."{% endif %} +You can use {% data variables.product.prodname_github_connect %} to automatically synchronize user license count and usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %} weekly. For more information, see [Enabling automatic user license sync for your enterprise]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise){% ifversion ghec %} in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}.{% endif %} {% ifversion ghec or ghes %} After you enable {% data variables.product.prodname_github_connect %}, license data will be automatically synchronized weekly. You can also manually synchronize your license data at any time, by triggering a license sync job. diff --git a/content/billing/using-the-billing-platform/about-billing-for-your-enterprise.md b/content/billing/using-the-billing-platform/about-billing-for-your-enterprise.md index e07f8a7e94fa..2e14a802b6c3 100644 --- a/content/billing/using-the-billing-platform/about-billing-for-your-enterprise.md +++ b/content/billing/using-the-billing-platform/about-billing-for-your-enterprise.md @@ -8,6 +8,7 @@ redirect_from: - /admin/overview/managing-billing-for-github-enterprise - /billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise - /billing/managing-your-github-billing-settings/about-billing-for-your-enterprise + - /early-access/github/automatically-renew-the-billing-plan-for-your-enterprise versions: ghec: '*' ghes: '*' @@ -40,10 +41,10 @@ Each user on {% data variables.location.product_location %} consumes a seat on y {%- ifversion ghes %} * [AUTOTITLE](/enterprise-cloud@latest/billing/managing-the-plan-for-your-github-account/about-per-user-pricing) {%- endif %} -* "[Viewing the subscription and usage for your enterprise account]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)" -* "[Managing invoices for your enterprise]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/managing-invoices-for-your-enterprise)" +* [Viewing the subscription and usage for your enterprise account]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account) +* [Managing invoices for your enterprise]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/managing-invoices-for-your-enterprise) -Administrators for your enterprise account on {% data variables.product.prodname_dotcom_the_website %} can access and manage billing for the enterprise. For more information, see "[Roles in an enterprise]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise){% ifversion ghec %}."{% elsif ghes %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} +Administrators for your enterprise account on {% data variables.product.prodname_dotcom_the_website %} can access and manage billing for the enterprise. For more information, see [Roles in an enterprise]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise){% ifversion ghec %}.{% elsif ghes %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} {% ifversion ghec %} {% data reusables.enterprise-accounts.billing-azure-subscription-enterprise-only %} See [AUTOTITLE](/billing/managing-the-plan-for-your-github-account/connecting-an-azure-subscription). diff --git a/content/billing/using-the-billing-platform/about-billing-on-github.md b/content/billing/using-the-billing-platform/about-billing-on-github.md index 5697be2d5531..7b36458f7d64 100644 --- a/content/billing/using-the-billing-platform/about-billing-on-github.md +++ b/content/billing/using-the-billing-platform/about-billing-on-github.md @@ -139,6 +139,6 @@ If you're an organization or enterprise owner, you can switch between settings f {% data reusables.user-settings.access_settings %} 1. At the top of the page, to the right of your name, click **Switch settings context**. - ![Screenshot of the "Public profile" settings page for The Octocat. Next to the text "Your personal profile," a link, labeled "Switch settings context," is outlined in orange.](/assets/images/help/settings/context-switcher-button.png) + ![Screenshot of the "Public profile" settings for The Octocat. Next to "Your personal profile," a "Switch settings context" link is outlined in orange.](/assets/images/help/settings/context-switcher-button.png) 1. Start typing the name of the account you want to switch to, then click the name of the account. 1. In the left sidebar, click **{% octicon "credit-card" aria-hidden="true" %} Billing and plans**. diff --git a/content/billing/using-the-billing-platform/adding-or-editing-a-payment-method.md b/content/billing/using-the-billing-platform/adding-or-editing-a-payment-method.md index e28482f5b5bd..57a8f68dac73 100644 --- a/content/billing/using-the-billing-platform/adding-or-editing-a-payment-method.md +++ b/content/billing/using-the-billing-platform/adding-or-editing-a-payment-method.md @@ -91,7 +91,7 @@ You can update your enterprise account's credit card or PayPal details, or you c {% data reusables.enterprise-accounts.billing-tab %} 1. Under "Payment information", click **Switch to invoice**. - ![Screenshot of the billing page for an enterprise account. In the "Payment information" section, a link, labeled "Switch to invoice", is outlined in dark orange.](/assets/images/help/billing/switch-to-invoice.png) + ![Screenshot of the billing page for an enterprise account. In the "Payment information" section, a "Switch to invoice" link is outlined in orange.](/assets/images/help/billing/switch-to-invoice.png) 1. Complete the form, then click **Contact Sales**. {% endif %} diff --git a/content/billing/using-the-billing-platform/changing-the-duration-of-your-billing-cycle.md b/content/billing/using-the-billing-platform/changing-the-duration-of-your-billing-cycle.md index 1285a811986c..2a4326efa17c 100644 --- a/content/billing/using-the-billing-platform/changing-the-duration-of-your-billing-cycle.md +++ b/content/billing/using-the-billing-platform/changing-the-duration-of-your-billing-cycle.md @@ -63,7 +63,7 @@ When you change your billing cycle's duration, your {% data variables.product.pr {% data reusables.enterprise-accounts.billing-tab %} 1. Under "Payment information", click **Switch to yearly billing and save** or **Switch to monthly billing**. - ![Screenshot of the billing page for an enterprise account. In the "Payment information" section, a link, labeled "Switch to yearly billing and save", is outlined in dark orange.](/assets/images/help/billing/switch-to-yearly-billing.png) + ![Screenshot of the billing page for an enterprise account. In "Payment information", a "Switch to yearly billing and save" link is outlined in orange.](/assets/images/help/billing/switch-to-yearly-billing.png) 1. Under "How often do you want to be billed?", select a billing cycle. 1. Click **Change your account's billing cycle**. {% endif %} diff --git a/content/code-security/adopting-github-advanced-security-at-scale/phase-2-preparing-to-enable-at-scale.md b/content/code-security/adopting-github-advanced-security-at-scale/phase-2-preparing-to-enable-at-scale.md index 159ed7e8bcc3..e3836dd79696 100644 --- a/content/code-security/adopting-github-advanced-security-at-scale/phase-2-preparing-to-enable-at-scale.md +++ b/content/code-security/adopting-github-advanced-security-at-scale/phase-2-preparing-to-enable-at-scale.md @@ -37,7 +37,7 @@ Your core focus should be preparing as many teams to use {% data variables.produ ### Collecting information about your repositories -You can programmatically gather information about the different programming languages used in your repositories and use that data to enable {% data variables.product.prodname_code_scanning %} on all repositories that use the same language, using {% data variables.product.product_name %}'s GraphQL API. +You can programmatically gather information about the different programming languages used in your repositories and use that data to enable {% data variables.product.prodname_code_scanning %} on all repositories that use the same language, using {% data variables.product.github %}'s GraphQL API. > [!NOTE] > To gather this data without manually running the GraphQL queries described in this article, you can use our publicly available tool. For more information, see the [ghas-enablement tool](https://github.com/NickLiffen/ghas-enablement) repository. @@ -123,19 +123,19 @@ Before you can proceed with pilot programs and rolling out {% data variables.pro ## Preparing to enable {% data variables.product.prodname_secret_scanning %} > [!NOTE] -> When a secret is detected in a repository that has enabled {% data variables.product.prodname_secret_scanning %}, {% data variables.product.prodname_dotcom %} alerts all users with access to security alerts for the repository. {% ifversion ghec %} +> When a secret is detected in a repository that has enabled {% data variables.product.prodname_secret_scanning %}, {% data variables.product.github %} alerts all users with access to security alerts for the repository. {% ifversion ghec %} > -> Secrets found in public repositories using {% data variables.secret-scanning.partner_alerts %} are reported directly to the partner, without creating an alert on {% data variables.product.product_name %}. For details about the supported partner patterns, see [AUTOTITLE](/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).{% endif %} +> Secrets found in public repositories using {% data variables.secret-scanning.partner_alerts %} are reported directly to the partner, without creating an alert on {% data variables.product.github %}. For details about the supported partner patterns, see [AUTOTITLE](/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).{% endif %} -If a project communicates with an external service, it might use a token or private key for authentication. If you check a secret into a repository, anyone who has read access to the repository can use the secret to access the external service with your privileges. {% data variables.product.prodname_secret_scanning_caps %} will scan your entire Git history on all branches present in your {% data variables.product.prodname_dotcom %} repositories for secrets and alert you or block the push containing the secret. For more information, see [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning). +If a project communicates with an external service, it might use a token or private key for authentication. If you check a secret into a repository, anyone who has read access to the repository can use the secret to access the external service with your privileges. {% data variables.product.prodname_secret_scanning_caps %} will scan your entire Git history on all branches present in your {% data variables.product.github %} repositories for secrets and alert you or block the push containing the secret. For more information, see [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning). -{% ifversion ghec %}{% data variables.secret-scanning.partner_alerts_caps %} runs automatically on public repositories and public npm packages to notify service providers about leaked secrets on {% data variables.product.prodname_dotcom %}. +{% ifversion ghec %}{% data variables.secret-scanning.partner_alerts_caps %} runs automatically on public repositories and public npm packages to notify service providers about leaked secrets on {% data variables.product.github %}. {% data variables.secret-scanning.user_alerts_caps %} are available for free on all public repositories.{% endif %} ### Considerations when enabling {% data variables.product.prodname_secret_scanning %} -{% ifversion default-setup-ghas-enablement %}Enabling{% else %}{% data variables.product.product_name %}’s {% data variables.product.prodname_secret_scanning %} capability is slightly different from {% data variables.product.prodname_code_scanning %} since it requires no specific configuration per programming language or per repository and less configuration overall to get started. This means enabling{% endif %} {% data variables.product.prodname_secret_scanning %} at the organizational level can be easy, but clicking **Enable All** at the organization level and selecting the option **Automatically enable {% data variables.product.prodname_secret_scanning %} for every new repository** has some downstream effects that you should be aware of: +{% ifversion default-setup-ghas-enablement %}Enabling{% else %}{% data variables.product.github %}’s {% data variables.product.prodname_secret_scanning %} capability is slightly different from {% data variables.product.prodname_code_scanning %} since it requires no specific configuration per programming language or per repository and less configuration overall to get started. This means enabling{% endif %} {% data variables.product.prodname_secret_scanning %} at the organizational level can be easy, but clicking **Enable All** at the organization level and selecting the option **Automatically enable {% data variables.product.prodname_secret_scanning %} for every new repository** has some downstream effects that you should be aware of: #### License consumption @@ -149,7 +149,7 @@ If you are enabling {% data variables.product.prodname_secret_scanning %} on a l ### Custom patterns for {% data variables.product.prodname_secret_scanning %} -{% data variables.product.prodname_secret_scanning_caps %} detects a large number of default patterns but can also be configured to detect custom patterns, such as secret formats unique to your infrastructure or used by integrators that {% data variables.product.product_name %}'s {% data variables.product.prodname_secret_scanning %} does not currently detect. For more information about supported secrets for partner patterns, see [AUTOTITLE](/code-security/secret-scanning/introduction/supported-secret-scanning-patterns). +{% data variables.product.prodname_secret_scanning_caps %} detects a large number of default patterns but can also be configured to detect custom patterns, such as secret formats unique to your infrastructure or used by integrators that {% data variables.product.github %}'s {% data variables.product.prodname_secret_scanning %} does not currently detect. For more information about supported secrets for partner patterns, see [AUTOTITLE](/code-security/secret-scanning/introduction/supported-secret-scanning-patterns). As you audit your repositories and speak to security and developer teams, build a list of the secret types that you will later use to configure custom patterns for {% data variables.product.prodname_secret_scanning %}. For more information, see [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning). diff --git a/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages.md b/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages.md index 8c9a9e0d59e3..e0d90c0a16bc 100644 --- a/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages.md +++ b/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages.md @@ -295,7 +295,7 @@ If you added manual build steps for compiled languages and {% data variables.pro ## Autobuild steps for compiled languages -{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}-hosted runners are always run with the software required by `autobuild`.{% endif %} If you use self-hosted runners for {% data variables.product.prodname_actions %}, you may need to install additional software to use the `autobuild` process. Additionally, if your repository requires a specific version of a build tool, you may need to install it manually. {% ifversion code-scanning-default-setup-self-hosted-310 or default-setup-self-hosted-runners-GHEC %} For self-hosted runners, you should install dependencies directly in the runners themselves. We provide examples of common dependencies for C/C++, C#, and Java in each of the `autobuild` sections of this article for those languages. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners).{% endif %} +{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}-hosted runners are always run with the software required by `autobuild`.{% endif %} If you use self-hosted runners for {% data variables.product.prodname_actions %}, you may need to install additional software to use the `autobuild` process. Additionally, if your repository requires a specific version of a build tool, you may need to install it manually. {% ifversion ghes or default-setup-self-hosted-runners-GHEC %} For self-hosted runners, you should install dependencies directly in the runners themselves. We provide examples of common dependencies for C/C++, C#, and Java in each of the `autobuild` sections of this article for those languages. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners).{% endif %} * [Building C/C++](#building-cc) * [Building C#](#building-c) @@ -468,7 +468,7 @@ The `autobuild` process attempts to autodetect a suitable way to install the dep 1. Extract all Go code in the repository, similar to running `go build ./...`. > [!NOTE] -> If you use default setup, it will look for a `go.mod` file to automatically install a compatible version of the Go language.{% ifversion code-scanning-default-setup-self-hosted-310 %} If you're using a self-hosted runner with default setup that doesn't have internet access, you can manually install a compatible version of Go.{% endif %} +> If you use default setup, it will look for a `go.mod` file to automatically install a compatible version of the Go language.{% ifversion ghes %} If you're using a self-hosted runner with default setup that doesn't have internet access, you can manually install a compatible version of Go.{% endif %} ### Extractor options for Go diff --git a/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning.md b/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning.md index dc3557158859..9f7ea0b37f1b 100644 --- a/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning.md +++ b/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning.md @@ -97,7 +97,7 @@ For information on bulk enablement, see [AUTOTITLE](/code-security/code-scanning ## Configuring {% data variables.product.prodname_code_scanning %} using third-party actions -{% data variables.product.product_name %} includes workflow templates for third-party actions, as well as the {% data variables.product.prodname_codeql %} action. Using a workflow template is much easier than writing a workflow unaided. +{% data variables.product.github %} includes workflow templates for third-party actions, as well as the {% data variables.product.prodname_codeql %} action. Using a workflow template is much easier than writing a workflow unaided. {% data reusables.code-scanning.billing %} diff --git a/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.md b/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.md index 2d465593e3c7..76f87f8c35ab 100644 --- a/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.md +++ b/content/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.md @@ -34,7 +34,7 @@ make sure that you also update the MS short link: https://aka.ms/code-scanning-d ## About {% data variables.product.prodname_code_scanning %} configuration -You can run {% data variables.product.prodname_code_scanning %} on {% data variables.product.product_name %}, using {% data variables.product.prodname_actions %}, or from your continuous integration (CI) system. For more information, see [AUTOTITLE](/actions/learn-github-actions) or [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system). +You can run {% data variables.product.prodname_code_scanning %} on {% data variables.product.github %}, using {% data variables.product.prodname_actions %}, or from your continuous integration (CI) system. For more information, see [AUTOTITLE](/actions/learn-github-actions) or [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system). With advanced setup for {% data variables.product.prodname_code_scanning %}, you can customize a {% data variables.product.prodname_code_scanning %} workflow for granular control over your configuration. For more information, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning). @@ -241,7 +241,7 @@ This parameter is particularly useful if you work with monorepos and have multip category: "my_category" ``` -If you don't specify a `category` parameter in your workflow, {% data variables.product.product_name %} will generate a category name for you, based on the name of the workflow file triggering the action, the action name, and any matrix variables. For example: +If you don't specify a `category` parameter in your workflow, {% data variables.product.github %} will generate a category name for you, based on the name of the workflow file triggering the action, the action name, and any matrix variables. For example: * The `.github/workflows/codeql-analysis.yml` workflow and the `analyze` action will produce the category `.github/workflows/codeql.yml:analyze`. * The `.github/workflows/codeql-analysis.yml` workflow, the `analyze` action, and the `{language: {% ifversion codeql-language-identifiers-311 %}javascript-typescript{% else %}javascript{% endif %}, os: linux}` matrix variables will produce the category `.github/workflows/codeql-analysis.yml:analyze/language:{% ifversion codeql-language-identifiers-311 %}javascript-typescript{% else %}javascript{% endif %}/os:linux`. @@ -288,7 +288,7 @@ To add one or more {% data variables.product.prodname_codeql %} query packs, add > [!NOTE] > For workflows that generate {% data variables.product.prodname_codeql %} databases for multiple languages, you must instead specify the {% data variables.product.prodname_codeql %} query packs in a configuration file. For more information, see [Specifying {% data variables.product.prodname_codeql %} query packs](#specifying-codeql-query-packs) below. -In the example below, `scope` is the organization or personal account that published the package. When the workflow runs, the four {% data variables.product.prodname_codeql %} query packs are downloaded from {% data variables.product.product_name %} and the default queries or query suite for each pack run: +In the example below, `scope` is the organization or personal account that published the package. When the workflow runs, the four {% data variables.product.prodname_codeql %} query packs are downloaded from {% data variables.product.github %} and the default queries or query suite for each pack run: * The latest version of `pack1` is downloaded and all default queries are run. * Version 1.2.3 of `pack2` is downloaded and all default queries are run. * The latest version of `pack3` that is compatible with version 3.2.1 is downloaded and all queries are run. diff --git a/content/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning.md b/content/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning.md index ed9c87e385ec..b86d2c9ebfa7 100644 --- a/content/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning.md +++ b/content/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning.md @@ -50,7 +50,7 @@ If you need more granular control over your {% data variables.product.prodname_c Your repository is eligible for default setup for {% data variables.product.prodname_code_scanning %} if:{% ifversion default-setup-pre-enablement %} {% else %} -* It includes at least one {% data variables.product.prodname_codeql %}-supported language{% ifversion codeql-swift-advanced-setup %} aside from Swift{% endif %}.{% endif %} +* It includes at least one {% data variables.product.prodname_codeql %}-supported language{% ifversion ghes = 3.10 %} aside from Swift{% endif %}.{% endif %} * {% data variables.product.prodname_actions %} are enabled.{% ifversion fpt %} * It is publicly visible.{%- elsif ghec %} * It is publicly visible, or {% data variables.product.prodname_GH_advanced_security %} is enabled.{%- elsif ghes %} @@ -62,7 +62,7 @@ Your repository is eligible for default setup for {% data variables.product.prod If your repository includes at least one {% data variables.product.prodname_codeql %}-supported language, you can use default setup even if your repository also includes languages that aren't supported by {% data variables.product.prodname_codeql %}, such as R. Unsupported languages will not be scanned by default setup. For more information on {% data variables.product.prodname_codeql %}-supported languages, see [AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql#about-codeql). {% endif %} -You can use default setup for all {% data variables.product.prodname_codeql %}-supported languages{% ifversion codeql-swift-advanced-setup %} except Swift{% endif %} for self-hosted runners or {% data variables.product.prodname_dotcom %}-hosted runners. See [Assigning labels to runners](#assigning-labels-to-runners), later in this article. +You can use default setup for all {% data variables.product.prodname_codeql %}-supported languages{% ifversion ghes = 3.10 %} except Swift{% endif %} for self-hosted runners or {% data variables.product.prodname_dotcom %}-hosted runners. See [Assigning labels to runners](#assigning-labels-to-runners), later in this article. {% ifversion codeql-no-build %}Default setup uses the `none` build mode for {% data variables.code-scanning.no_build_support %} and uses the `autobuild` build mode for other compiled languages. You should configure your self-hosted runners to make sure they can run all the necessary commands for C/C++, C#, and Swift analysis. Analysis of JavaScript/TypeScript, Go, Ruby, Python, and Kotlin code does not currently require special configuration.{% else %}Default setup runs the `autobuild` action, so you should configure your self-hosted runners to make sure they can run all the necessary commands for {% data variables.code-scanning.compiled_languages %} analysis. Analysis of JavaScript/TypeScript, Go, Ruby, Python, and Kotlin code does not currently require special configuration.{% endif %} @@ -78,7 +78,7 @@ We recommend that you start using {% data variables.product.prodname_code_scanni If the code in a repository changes to include Go, JavaScript/TypeScript, Python, or Ruby, {% data variables.product.prodname_dotcom %} will automatically update the {% data variables.product.prodname_code_scanning %} configuration to include the new language. If {% data variables.product.prodname_code_scanning %} fails with the new configuration, {% data variables.product.prodname_dotcom %} will resume the previous configuration automatically so the repository does not lose {% data variables.product.prodname_code_scanning %} coverage. {% endif %} -Compiled languages are not automatically included in default setup configuration because they often require more advanced configuration, but you can manually select any {% data variables.product.prodname_codeql %}-supported compiled language{% ifversion codeql-swift-advanced-setup %} other than Swift{% endif %} for analysis. +Compiled languages are not automatically included in default setup configuration because they often require more advanced configuration, but you can manually select any {% data variables.product.prodname_codeql %}-supported compiled language{% ifversion ghes = 3.10 %} other than Swift{% endif %} for analysis. {% endif %} diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md b/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md index 3da0624ff067..9fa1ec6f9731 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md @@ -30,7 +30,7 @@ As an alternative to running {% data variables.product.prodname_code_scanning %} ## Integrations with webhooks -You can use {% data variables.product.prodname_code_scanning %} webhooks to build or configure integrations, such as [{% data variables.product.prodname_github_apps %}](/apps/creating-github-apps/setting-up-a-github-app) or [{% data variables.product.prodname_oauth_apps %}](/apps/oauth-apps/building-oauth-apps), that subscribe to {% data variables.product.prodname_code_scanning %} events in your repository. For example, you could build an integration that creates an issue on {% data variables.product.product_name %} or sends you a Slack notification when a new {% data variables.product.prodname_code_scanning %} alert is added in your repository. For more information, see [AUTOTITLE](/webhooks) and [AUTOTITLE](/webhooks-and-events/webhooks/webhook-events-and-payloads#code_scanning_alert). +You can use {% data variables.product.prodname_code_scanning %} webhooks to build or configure integrations, such as [{% data variables.product.prodname_github_apps %}](/apps/creating-github-apps/setting-up-a-github-app) or [{% data variables.product.prodname_oauth_apps %}](/apps/oauth-apps/building-oauth-apps), that subscribe to {% data variables.product.prodname_code_scanning %} events in your repository. For example, you could build an integration that creates an issue on {% data variables.product.github %} or sends you a Slack notification when a new {% data variables.product.prodname_code_scanning %} alert is added in your repository. For more information, see [AUTOTITLE](/webhooks) and [AUTOTITLE](/webhooks-and-events/webhooks/webhook-events-and-payloads#code_scanning_alert). ## Further reading diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system.md b/content/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system.md index a29f9a758162..6615e821fc37 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system.md @@ -27,13 +27,13 @@ topics: ## About using {% data variables.product.prodname_code_scanning %} with your existing CI system -As an alternative to running {% data variables.product.prodname_code_scanning %} within {% data variables.product.prodname_dotcom %} using {% data variables.product.prodname_actions %}, you can analyze code in an external continuous integration or continuous delivery/deployment (CI/CD) system, then upload the results to {% data variables.product.product_name %}. +As an alternative to running {% data variables.product.prodname_code_scanning %} within {% data variables.product.github %} using {% data variables.product.prodname_actions %}, you can analyze code in an external continuous integration or continuous delivery/deployment (CI/CD) system, then upload the results to {% data variables.product.github %}. You can add the {% data variables.product.prodname_codeql_cli %} to your third-party system, or use another third-party static analysis tool that can produce results as Static Analysis Results Interchange Format (SARIF) 2.1.0 data. For more information about the supported SARIF format, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning). The {% data variables.product.prodname_codeql_cli %} is a standalone, command-line tool that you can use to analyze code. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/about-the-codeql-cli). -Alerts for {% data variables.product.prodname_code_scanning %} that you generate externally are displayed in the same way as those for {% data variables.product.prodname_code_scanning %} that you generate within {% data variables.product.prodname_dotcom %}. {% data reusables.code-scanning.about-multiple-configurations-link %} +Alerts for {% data variables.product.prodname_code_scanning %} that you generate externally are displayed in the same way as those for {% data variables.product.prodname_code_scanning %} that you generate within {% data variables.product.github %}. {% data reusables.code-scanning.about-multiple-configurations-link %} {% data reusables.code-scanning.upload-sarif-ghas %} @@ -53,16 +53,16 @@ You can then complete the steps to analyze your codebase and produce results, wh If you are using the {% data variables.product.prodname_codeql_cli %}, you will first need to create a {% data variables.product.prodname_codeql %} database from your code, then analyze the database to produce SARIF results. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis) and [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries). -## Generating a token for authentication with {% data variables.product.product_name %} +## Generating a token for authentication with {% data variables.product.github %} -Each CI server needs a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} to use to upload results to {% data variables.product.product_name %}, whether you are using the {% data variables.product.prodname_codeql_cli %}, the REST API, or another method. You must use an access token or a {% data variables.product.prodname_github_app %} with the `security_events` write permission. If CI servers already use a token with this scope to checkout repositories from {% data variables.product.product_name %}, you could potentially use the same token. Otherwise, you should create a new token with the `security_events` write permission and add this to the CI system's secret store. For information, see [AUTOTITLE](/apps/creating-github-apps/about-creating-github-apps/about-creating-github-apps) and [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). +Each CI server needs a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} to use to upload results to {% data variables.product.github %}, whether you are using the {% data variables.product.prodname_codeql_cli %}, the REST API, or another method. You must use an access token or a {% data variables.product.prodname_github_app %} with the `security_events` write permission. If CI servers already use a token with this scope to checkout repositories from {% data variables.product.github %}, you could potentially use the same token. Otherwise, you should create a new token with the `security_events` write permission and add this to the CI system's secret store. For information, see [AUTOTITLE](/apps/creating-github-apps/about-creating-github-apps/about-creating-github-apps) and [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). -For more information on the different methods for uploading results to {% data variables.product.product_name %}, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github). +For more information on the different methods for uploading results to {% data variables.product.github %}, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github). -## Uploading your results to {% data variables.product.product_name %} +## Uploading your results to {% data variables.product.github %} -Once you have analyzed your code, produced SARIF results, and ensured you can authenticate with {% data variables.product.product_name %}, you can upload the results to {% data variables.product.product_name %}. For more information on the different methods you can use to upload your results, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github). +Once you have analyzed your code, produced SARIF results, and ensured you can authenticate with {% data variables.product.github %}, you can upload the results to {% data variables.product.github %}. For more information on the different methods you can use to upload your results, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github). -For specific details on uploading your results to {% data variables.product.product_name %} using the {% data variables.product.prodname_codeql_cli %}, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github). +For specific details on uploading your results to {% data variables.product.github %} using the {% data variables.product.prodname_codeql_cli %}, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github). By default, {% data variables.product.prodname_code_scanning %} expects one SARIF results file per analysis for a repository. Consequently, when you upload a second SARIF results file for a commit, it is treated as a replacement for the original set of data. You may want to upload two different SARIF files for one analysis if, for example, your analysis tool generates a different SARIF file for each language it analyzes or each set of rules it uses. If you want to upload more than one set of results for a commit in a repository, you must identify each set of results as a unique set. The way to specify a category for a SARIF upload varies according to the analysis method. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning#uploading-more-than-one-sarif-file-for-a-commit). diff --git a/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql.md b/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql.md index 91eaf0483d36..238de99fac4b 100644 --- a/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql.md +++ b/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql.md @@ -31,7 +31,7 @@ There are three main ways to use {% data variables.product.prodname_codeql %} an {% ifversion ghes %} > [!NOTE] -> On {% data variables.product.product_name %} {% ifversion ghes %}{{ allVersions[currentVersion].currentRelease }},{% endif %} the {% data variables.product.prodname_codeql %} action uses {% data variables.product.prodname_codeql_cli %} version {% data variables.product.codeql_cli_ghes_recommended_version %} by default. We recommend that you use the same version of the {% data variables.product.prodname_codeql_cli %} if you run analysis in an external CI system. +> On {% data variables.product.prodname_ghe_server %} {{ allVersions[currentVersion].currentRelease }}, the {% data variables.product.prodname_codeql %} action uses {% data variables.product.prodname_codeql_cli %} version {% data variables.product.codeql_cli_ghes_recommended_version %} by default. We recommend that you use the same version of the {% data variables.product.prodname_codeql_cli %} if you run analysis in an external CI system. {% endif %} @@ -43,7 +43,7 @@ For information about {% data variables.product.prodname_code_scanning %} alerts 1. You generate a {% data variables.product.prodname_codeql %} database to represent your codebase. 1. Then you run {% data variables.product.prodname_codeql %} queries on that database to identify problems in the codebase. -1. The query results are shown as {% data variables.product.prodname_code_scanning %} alerts in {% data variables.product.product_name %} when you use {% data variables.product.prodname_codeql %} with {% data variables.product.prodname_code_scanning %}. +1. The query results are shown as {% data variables.product.prodname_code_scanning %} alerts in {% data variables.product.github %} when you use {% data variables.product.prodname_codeql %} with {% data variables.product.prodname_code_scanning %}. {% data variables.product.prodname_codeql %} supports both compiled and interpreted languages, and can find vulnerabilities and errors in code that's written in the supported languages. diff --git a/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning.md b/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning.md index b9a7f0d3593f..5a0fa0dd4ddf 100644 --- a/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning.md +++ b/content/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning.md @@ -60,7 +60,7 @@ You can configure {% data variables.product.prodname_code_scanning %} to use the {% data reusables.code-scanning.interoperable-with-tools-that-output-sarif %} -You can run third-party analysis tools within {% data variables.product.product_name %} using actions or within an external CI system. For more information, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-code-scanning-using-third-party-actions) or [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github). +You can run third-party analysis tools within {% data variables.product.github %} using actions or within an external CI system. For more information, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-code-scanning-using-third-party-actions) or [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github). ## About the {% data variables.code-scanning.tool_status_page %} diff --git a/content/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts.md b/content/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts.md index 140e60d43a13..90bd9e82e365 100644 --- a/content/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts.md +++ b/content/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts.md @@ -50,7 +50,7 @@ Each alert highlights a problem with the code and the name of the tool that iden {% data reusables.code-scanning.alert-default-branch %} -![Screenshot showing the elements of a {% data variables.product.prodname_code_scanning %} alert, including the title of the alert and relevant lines of code at left and the severity level, affected branches, and weaknesses at right. ](/assets/images/help/repository/code-scanning-alert.png) +![Screenshot of a {% data variables.product.prodname_code_scanning %} alert, includes the alert title, relevant lines of code at the left, metadata at the right.](/assets/images/help/repository/code-scanning-alert.png) If you configure {% data variables.product.prodname_code_scanning %} using {% data variables.product.prodname_codeql %}, you can also find data-flow problems in your code. Data-flow analysis finds potential security issues in code, such as: using data insecurely, passing dangerous arguments to functions, and leaking sensitive information. @@ -66,7 +66,7 @@ An alert may display different statuses from different configurations. To update ### About labels for alerts that are not found in application code -{% data variables.product.product_name %} assigns a category label to alerts that are not found in application code. The label relates to the location of the alert. +{% data variables.product.github %} assigns a category label to alerts that are not found in application code. The label relates to the location of the alert. * Generated: Code generated by the build process * Test: Test code diff --git a/content/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository.md b/content/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository.md index 3fc21f3b2f2f..f9dddf94522e 100644 --- a/content/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository.md +++ b/content/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository.md @@ -79,7 +79,7 @@ You can use the "Only alerts in application code" filter or `autofilter:true` ke ## Searching {% data variables.product.prodname_code_scanning %} alerts -You can search the list of alerts. This is useful if there is a large number of alerts in your repository, or if you don't know the exact name for an alert for example. {% data variables.product.product_name %} performs the free text search across: +You can search the list of alerts. This is useful if there is a large number of alerts in your repository, or if you don't know the exact name for an alert for example. {% data variables.product.github %} performs the free text search across: * The name of the alert * The alert details (this also includes the information hidden from view by default in the **Show more** collapsible section) diff --git a/content/code-security/code-scanning/managing-code-scanning-alerts/responsible-use-autofix-code-scanning.md b/content/code-security/code-scanning/managing-code-scanning-alerts/responsible-use-autofix-code-scanning.md index 868a4b87e40c..71615a041417 100644 --- a/content/code-security/code-scanning/managing-code-scanning-alerts/responsible-use-autofix-code-scanning.md +++ b/content/code-security/code-scanning/managing-code-scanning-alerts/responsible-use-autofix-code-scanning.md @@ -54,7 +54,7 @@ When {% data variables.product.prodname_copilot_autofix_short %} is enabled for Any {% data variables.product.prodname_copilot_autofix_short %} suggestions are generated and stored within the {% data variables.product.prodname_code_scanning %} backend. They are displayed as suggestions. No user interaction is needed beyond enabling {% data variables.product.prodname_code_scanning %} on the codebase and creating a pull request. -The process of generating fixes does not gather or utilize any customer data beyond the scope outlined above. Therefore, the use of this feature is governed by the existing terms and conditions associated with {% data variables.product.prodname_GH_advanced_security %}. Moreover, data handled by {% data variables.product.prodname_copilot_autofix_short %} is strictly not employed for LLM training purposes. For more information on {% data variables.product.prodname_GH_advanced_security %} terms and conditions, see "[AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#advanced-security){% ifversion fpt %}."{% else %} in the Free, Pro, & Team documentation.{% endif %} +The process of generating fixes does not gather or utilize any customer data beyond the scope outlined above. Therefore, the use of this feature is governed by the existing terms and conditions associated with {% data variables.product.prodname_GH_advanced_security %}. Moreover, data handled by {% data variables.product.prodname_copilot_autofix_short %} is strictly not employed for LLM training purposes. For more information on {% data variables.product.prodname_GH_advanced_security %} terms and conditions, see [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#advanced-security){% ifversion fpt %}.{% else %} in the Free, Pro, & Team documentation.{% endif %} ## Quality of suggestions diff --git a/content/code-security/code-scanning/managing-code-scanning-alerts/tracking-code-scanning-alerts-in-issues-using-task-lists.md b/content/code-security/code-scanning/managing-code-scanning-alerts/tracking-code-scanning-alerts-in-issues-using-task-lists.md index 365e368c05b8..ea6a5fbd647c 100644 --- a/content/code-security/code-scanning/managing-code-scanning-alerts/tracking-code-scanning-alerts-in-issues-using-task-lists.md +++ b/content/code-security/code-scanning/managing-code-scanning-alerts/tracking-code-scanning-alerts-in-issues-using-task-lists.md @@ -28,11 +28,11 @@ You can also quickly create a new issue to track an alert: You can use more than one issue to track the same {% data variables.product.prodname_code_scanning %} alert, and issues can belong to different repositories from the repository where the {% data variables.product.prodname_code_scanning %} alert was found. -{% data variables.product.product_name %} provides visual cues in different locations of the user interface to indicate when you are tracking {% data variables.product.prodname_code_scanning %} alerts in issues. +{% data variables.product.github %} provides visual cues in different locations of the user interface to indicate when you are tracking {% data variables.product.prodname_code_scanning %} alerts in issues. * The {% data variables.product.prodname_code_scanning %} alerts list page will show which alerts are tracked in issues so that you can view at a glance which alerts still require processing and how many issues they are tracked in. - ![Screenshot of the {% data variables.product.prodname_code_scanning %} alerts view. The first entry includes the issue icon followed by the number 2. The third entry includes the issue icon followed by the number 1. Both are outlined in dark orange.](/assets/images/help/repository/code-scanning-alert-list-tracked-issues.png) + ![Screenshot of {% data variables.product.prodname_code_scanning %} alerts view. The first and third entries include the issue icon with the issue number.](/assets/images/help/repository/code-scanning-alert-list-tracked-issues.png) * A "tracked in" section will also show in the corresponding alert page. @@ -45,7 +45,7 @@ You can use more than one issue to track the same {% data variables.product.prod The color of the icon is grey because an alert has a status of "open" or "closed" on every branch. The issue tracks an alert, so the alert cannot have a single open/closed state in the issue. If the alert is closed on one branch, the icon color will not change. - ![Screenshot showing an issue that tracks a {% data variables.product.prodname_code_scanning %} alert. The hovercard for the alert is displayed, with a grey security badge icon preceding the title.](/assets/images/help/repository/code-scanning-tracking-issue-hovercard.png) + ![Screenshot of an issue that tracks a {% data variables.product.prodname_code_scanning %} alert. The hovercard is displayed, with a grey security badge icon.](/assets/images/help/repository/code-scanning-tracking-issue-hovercard.png) The status of the tracked alert won't change if you change the checkbox state of the corresponding task list item (checked/unchecked) in the issue. diff --git a/content/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests.md b/content/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests.md index 3b550147b5b0..9be43757978d 100644 --- a/content/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests.md +++ b/content/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests.md @@ -133,7 +133,7 @@ When {% data variables.product.prodname_copilot_autofix_short %} is enabled for Usually, when you suggest changes to a pull request, your comment contains changes for a single file that is changed in the pull request. The following screenshot shows an {% data variables.product.prodname_copilot_autofix_short %} comment that suggests changes to the `index.js` file where the alert is displayed. Since the potential fix requires a new dependency on `escape-html`, the comment also suggests adding this dependency to the `package.json` file, even though the original pull request makes no changes to this file. -![Screenshot of the {% data variables.product.prodname_copilot_autofix_short %} suggestion with explanation and change in the current file. A suggested change in "package.json" is outlined in dark orange.](/assets/images/help/code-scanning/autofix-example.png) +![Screenshot of {% data variables.product.prodname_copilot_autofix_short %} suggestion to edit the current file. A suggested change in "package.json" is outlined in dark orange.](/assets/images/help/code-scanning/autofix-example.png) ### Assessing and committing an {% data variables.product.prodname_copilot_autofix_short %} suggestion diff --git a/content/code-security/code-scanning/troubleshooting-code-scanning/advanced-security-must-be-enabled.md b/content/code-security/code-scanning/troubleshooting-code-scanning/advanced-security-must-be-enabled.md index dc78185375ed..e3741ba8de2c 100644 --- a/content/code-security/code-scanning/troubleshooting-code-scanning/advanced-security-must-be-enabled.md +++ b/content/code-security/code-scanning/troubleshooting-code-scanning/advanced-security-must-be-enabled.md @@ -39,7 +39,7 @@ If you are on a free, pro, or team plan, you can only use {% data variables.prod 1. If there is an associated and active **Enable** button, {% data variables.product.prodname_GH_advanced_security %} is available for this repository but not yet enabled. 1. If use of {% data variables.product.prodname_GH_advanced_security %} is blocked by a policy, the **Enable** button is inactive and the owner of the policy is listed. - ![Screenshot of the "{% data variables.product.prodname_GH_advanced_security %}" setting. The owner of the enterprise policy and the inactive "Enable" button are highlighted with a dark orange outline.](/assets/images/help/repository/ghas-enterprise-policy-block.png) + ![Screenshot of the "{% data variables.product.prodname_GH_advanced_security %}" setting. The owner of the enterprise policy and the inactive "Enable" button are outlined in orange.](/assets/images/help/repository/ghas-enterprise-policy-block.png) ## Fixing the problem diff --git a/content/code-security/code-scanning/troubleshooting-code-scanning/kotlin-detected-in-no-build.md b/content/code-security/code-scanning/troubleshooting-code-scanning/kotlin-detected-in-no-build.md index ca0c7c65b316..4c1caf0ec1db 100644 --- a/content/code-security/code-scanning/troubleshooting-code-scanning/kotlin-detected-in-no-build.md +++ b/content/code-security/code-scanning/troubleshooting-code-scanning/kotlin-detected-in-no-build.md @@ -55,6 +55,6 @@ Update your calls to run the {% data variables.product.prodname_codeql_cli %} fo ## Further reading * [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning) -* "[Building Java and Kotlin](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#building-java-and-kotlin){% ifversion codeql-no-build %} +* [Building Java and Kotlin](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#building-java-and-kotlin){% ifversion codeql-no-build %} * [CodeQL build modes](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#codeql-build-modes){% elsif ghes %} * [Adding build steps for a compiled language](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#adding-build-steps-for-a-compiled-language){% endif %} diff --git a/content/code-security/code-scanning/troubleshooting-code-scanning/resource-not-accessible.md b/content/code-security/code-scanning/troubleshooting-code-scanning/resource-not-accessible.md index 1be196225fe9..f01dfcb46087 100644 --- a/content/code-security/code-scanning/troubleshooting-code-scanning/resource-not-accessible.md +++ b/content/code-security/code-scanning/troubleshooting-code-scanning/resource-not-accessible.md @@ -57,7 +57,7 @@ For more information about editing the {% data variables.product.prodname_codeql If the {% data variables.code-scanning.codeql_workflow %} still fails on a commit made on the default branch, you need to check: -* whether {% data variables.product.prodname_dependabot %} authored the commit -* whether the pull request that includes the commit has been merged using `@dependabot squash and merge` +* Whether {% data variables.product.prodname_dependabot %} authored the commit +* Whether the pull request that includes the commit has been merged using `@dependabot squash and merge` This type of merge commit is authored by {% data variables.product.prodname_dependabot %} and therefore, any workflows running on the commit will have read-only permissions. If you enabled {% data variables.product.prodname_code_scanning %} and {% data variables.product.prodname_dependabot %} security updates or version updates on your repository, we recommend you avoid using the {% data variables.product.prodname_dependabot %} `@dependabot squash and merge` command. Instead, you can enable auto-merge for your repository. This means that pull requests will be automatically merged when all required reviews are met and status checks have passed. For more information about enabling auto-merge, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request#enabling-auto-merge). diff --git a/content/code-security/code-scanning/troubleshooting-sarif-uploads/file-too-large.md b/content/code-security/code-scanning/troubleshooting-sarif-uploads/file-too-large.md index aa5a6976dee0..a1854f8ebaf9 100644 --- a/content/code-security/code-scanning/troubleshooting-sarif-uploads/file-too-large.md +++ b/content/code-security/code-scanning/troubleshooting-sarif-uploads/file-too-large.md @@ -40,8 +40,8 @@ There are many potential causes of very large SARIF results files. Take a look at the results file that was rejected by {% data variables.product.prodname_code_scanning %} to see if: -* the SARIF file was compressed using gzip -* the compressed file is smaller than 10 MB +* The SARIF file was compressed using gzip +* The compressed file is smaller than 10 MB If the file wasn't compressed using gzip, try compressing the file before rerunning the upload process. If the compressed file is still too large, you need to configure the analysis to generate a smaller set of results. diff --git a/content/code-security/codeql-cli/codeql-cli-manual/database-analyze.md b/content/code-security/codeql-cli/codeql-cli-manual/database-analyze.md index b9c37ce4e5ed..bfb80d00348f 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/database-analyze.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/database-analyze.md @@ -50,7 +50,7 @@ being interpreted as source-code alerts, use \[Mandatory] Path to the CodeQL database to query. -#### `...` +#### `...` Queries to execute. Each argument is in the form `scope/name@range:path` where: diff --git a/content/code-security/codeql-cli/codeql-cli-manual/database-interpret-results.md b/content/code-security/codeql-cli/codeql-cli-manual/database-interpret-results.md index 7aa8c092d07f..585e149ab180 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/database-interpret-results.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/database-interpret-results.md @@ -45,7 +45,7 @@ directory using [codeql database run-queries](/code-security/codeql-cli/codeql-c \[Mandatory] Path to the CodeQL database that has been queried. -#### `...` +#### `...` Repeat the specification of which queries were executed here. diff --git a/content/code-security/codeql-cli/codeql-cli-manual/database-run-queries.md b/content/code-security/codeql-cli/codeql-cli-manual/database-run-queries.md index a93ec00f1b51..671abf70dae8 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/database-run-queries.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/database-run-queries.md @@ -50,7 +50,7 @@ Alternatively, if you have only a single query to run, you might prefer \[Mandatory] Path to the CodeQL database to query. -#### `...` +#### `...` Queries to execute. Each argument is in the form `scope/name@range:path` where: diff --git a/content/code-security/codeql-cli/codeql-cli-manual/execute-queries.md b/content/code-security/codeql-cli/codeql-cli-manual/execute-queries.md index d125d7541f5d..2dff4de6a2be 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/execute-queries.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/execute-queries.md @@ -42,7 +42,7 @@ This command should not normally be invoked directly. Instead use either \[Mandatory] Path to the raw QL dataset to query. -#### `...` +#### `...` \[Mandatory] Queries to execute. Each argument is in the form `scope/name@range:path` where: diff --git a/content/code-security/codeql-cli/codeql-cli-manual/generate-query-help.md b/content/code-security/codeql-cli/codeql-cli-manual/generate-query-help.md index 3ac61d92733f..1ffeffeada5f 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/generate-query-help.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/generate-query-help.md @@ -35,7 +35,7 @@ Generate end-user query help from .qhelp files. ### Primary Options -#### `...` +#### `...` \[Mandatory] Query help files to render. Each argument is one of: diff --git a/content/code-security/codeql-cli/codeql-cli-manual/resolve-extensions.md b/content/code-security/codeql-cli/codeql-cli-manual/resolve-extensions.md index a6affc2004b4..c374b9cf364d 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/resolve-extensions.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/resolve-extensions.md @@ -42,7 +42,7 @@ specifiers passed in as command line arguments. ### Primary Options -#### `...` +#### `...` \[Mandatory] Queries to execute. Each argument is in the form `scope/name@range:path` where: diff --git a/content/code-security/codeql-cli/codeql-cli-manual/resolve-ml-models.md b/content/code-security/codeql-cli/codeql-cli-manual/resolve-ml-models.md index 5e7566b6a2c3..ba06d1bb8d54 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/resolve-ml-models.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/resolve-ml-models.md @@ -44,7 +44,7 @@ It now returns an empty list of machine learning models. ### Primary Options -#### `...` +#### `...` \[Mandatory] Queries to execute. Each argument is in the form `scope/name@range:path` where: diff --git a/content/code-security/codeql-cli/codeql-cli-manual/resolve-queries.md b/content/code-security/codeql-cli/codeql-cli-manual/resolve-queries.md index c2d67fd46d47..e04cdcb92d3a 100644 --- a/content/code-security/codeql-cli/codeql-cli-manual/resolve-queries.md +++ b/content/code-security/codeql-cli/codeql-cli-manual/resolve-queries.md @@ -44,7 +44,7 @@ list of queries. ### Primary Options -#### `...` +#### `...` \[Mandatory] Queries to execute. Each argument is in the form `scope/name@range:path` where: diff --git a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/about-the-codeql-cli.md b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/about-the-codeql-cli.md index dc92537ce0e1..3a7a70482039 100644 --- a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/about-the-codeql-cli.md +++ b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/about-the-codeql-cli.md @@ -1,6 +1,6 @@ --- title: About the CodeQL CLI -intro: 'You can use the {% data variables.product.prodname_codeql_cli %} to run {% data variables.product.prodname_codeql %} processes locally on software projects or to generate {% data variables.product.prodname_code_scanning %} results for upload to {% data variables.product.product_name %}.' +intro: 'You can use the {% data variables.product.prodname_codeql_cli %} to run {% data variables.product.prodname_codeql %} processes locally on software projects or to generate {% data variables.product.prodname_code_scanning %} results for upload to {% data variables.product.github %}.' product: '{% data reusables.gated-features.codeql %}' versions: fpt: '*' @@ -32,7 +32,7 @@ using {% data variables.product.prodname_codeql %} analysis. For more informatio You can use the {% data variables.product.prodname_codeql_cli %} to: * Run {% data variables.product.prodname_codeql %} analyses using queries provided by {% data variables.product.prodname_dotcom %} engineers and the open source community -* Generate code scanning alerts that you can upload to display in {% data variables.product.product_name %} +* Generate code scanning alerts that you can upload to display in {% data variables.product.github %} * Create {% data variables.product.prodname_codeql %} databases to use in the {% data variables.product.prodname_codeql %} for {% data variables.product.prodname_vscode %} extension. * Develop and test custom {% data variables.product.prodname_codeql %} queries to use in your own analyses @@ -59,17 +59,17 @@ For an overview of all the options for using {% data variables.product.prodname_ If you choose to run the {% data variables.product.prodname_codeql_cli %} directly, you first have to install the {% data variables.product.prodname_codeql_cli %} locally. If you are planning to use the {% data variables.product.prodname_codeql_cli %} with an external CI system, you need to make the {% data variables.product.prodname_codeql_cli %} available to servers in your CI system. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/setting-up-the-codeql-cli). -Once the {% data variables.product.prodname_codeql_cli %} is set up, you can use three different commands to generate results and upload them to {% data variables.product.product_name %}: +Once the {% data variables.product.prodname_codeql_cli %} is set up, you can use three different commands to generate results and upload them to {% data variables.product.github %}: 1. `database create` to create a {% data variables.product.prodname_codeql %} database to represent the hierarchical structure of each supported programming language in the repository. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis). 1. `database analyze` to run queries to analyze each {% data variables.product.prodname_codeql %} database and summarize the results in a SARIF file. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries). -1. `github upload-results` to upload the resulting SARIF files to {% data variables.product.product_name %} where the results are matched to a branch or pull request and displayed as {% data variables.product.prodname_code_scanning %} alerts. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github). +1. `github upload-results` to upload the resulting SARIF files to {% data variables.product.github %} where the results are matched to a branch or pull request and displayed as {% data variables.product.prodname_code_scanning %} alerts. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github). {% data reusables.code-scanning.upload-sarif-ghas %} ### Example CI configuration for {% data variables.product.prodname_codeql %} analysis -This is an example of the full series of commands for the {% data variables.product.prodname_codeql_cli %} that you might use to analyze a codebase with two supported languages and then upload the results to {% data variables.product.product_name %}. +This is an example of the full series of commands for the {% data variables.product.prodname_codeql_cli %} that you might use to analyze a codebase with two supported languages and then upload the results to {% data variables.product.github %}. ```shell # Create CodeQL databases for Java and Python in the 'codeql-dbs' directory diff --git a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries.md b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries.md index 0ab008c51268..51938a664a8b 100644 --- a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries.md +++ b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries.md @@ -20,7 +20,7 @@ redirect_from: {% data reusables.code-scanning.codeql-cli-version-ghes %} -To analyze a codebase, you run queries against a {% data variables.product.prodname_codeql %} database extracted from the code. {% data variables.product.prodname_codeql %} analyses produce results that can be uploaded to {% data variables.product.product_name %} to generate code scanning alerts. +To analyze a codebase, you run queries against a {% data variables.product.prodname_codeql %} database extracted from the code. {% data variables.product.prodname_codeql %} analyses produce results that can be uploaded to {% data variables.product.github %} to generate code scanning alerts. ## Prerequisites @@ -48,7 +48,7 @@ codeql database analyze --format= --output= [!NOTE] -> If you analyze more than one {% data variables.product.prodname_codeql %} database for a single commit, you must specify a SARIF category for each set of results generated by this command. When you upload the results to {% data variables.product.product_name %}, {% data variables.product.prodname_code_scanning %} uses this category to store the results for each language separately. If you forget to do this, each upload overwrites the previous results. +> If you analyze more than one {% data variables.product.prodname_codeql %} database for a single commit, you must specify a SARIF category for each set of results generated by this command. When you upload the results to {% data variables.product.github %}, {% data variables.product.prodname_code_scanning %} uses this category to store the results for each language separately. If you forget to do this, each upload overwrites the previous results. > > ```shell > codeql database analyze --format= \ @@ -102,7 +102,7 @@ $ codeql database analyze /codeql-dbs/example-repo \ ### Adding file coverage information to your results for monitoring -You can optionally submit file coverage information to {% data variables.product.product_name %} for display on the {% data variables.code-scanning.tool_status_page %} for {% data variables.product.prodname_code_scanning %}. For more information about file coverage information, see [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/about-the-tool-status-page#how-codeql-defines-scanned-files). +You can optionally submit file coverage information to {% data variables.product.github %} for display on the {% data variables.code-scanning.tool_status_page %} for {% data variables.product.prodname_code_scanning %}. For more information about file coverage information, see [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/about-the-tool-status-page#how-codeql-defines-scanned-files). To include file coverage information with your {% data variables.product.prodname_code_scanning %} results, add the `--sarif-add-baseline-file-info` flag to the `codeql database analyze` invocation in your CI system, for example: @@ -294,8 +294,8 @@ When you analyze a {% data variables.product.prodname_codeql %} database using a For more information about the type of diagnostic information available, see [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/viewing-code-scanning-logs#about-analysis-and-diagnostic-information). -You can choose to export and upload diagnostic information to {% data variables.product.product_name %} even if a {% data variables.product.prodname_codeql %} analysis fails. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github#uploading-diagnostic-information-to-github-if-the-analysis-fails). +You can choose to export and upload diagnostic information to {% data variables.product.github %} even if a {% data variables.product.prodname_codeql %} analysis fails. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github#uploading-diagnostic-information-to-github-if-the-analysis-fails). ## Next steps -* To learn how to upload your {% data variables.product.prodname_codeql %} analysis results to {% data variables.product.product_name %}, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github). +* To learn how to upload your {% data variables.product.prodname_codeql %} analysis results to {% data variables.product.github %}, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github). diff --git a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis.md b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis.md index 09745f1b5325..3342966ef8aa 100644 --- a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis.md +++ b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis.md @@ -272,7 +272,7 @@ The following examples are designed to give you an idea of some of the build com * Swift project built from an Xcode project or workspace. By default, the largest Swift target is built: - It's a good idea to ensure that the project is in a clean state and that there are no build artefacts available. + It's a good idea to ensure that the project is in a clean state and that there are no build artifacts available. ```shell xcodebuild clean -all diff --git a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github.md b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github.md index 7645051a3870..cd6d53bb8148 100644 --- a/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github.md +++ b/content/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github.md @@ -1,7 +1,7 @@ --- title: Uploading CodeQL analysis results to GitHub shortTitle: Uploading results to GitHub -intro: 'You can use the {% data variables.product.prodname_codeql_cli %} to upload {% data variables.product.prodname_codeql %} analysis results to {% data variables.product.product_name %}.' +intro: 'You can use the {% data variables.product.prodname_codeql_cli %} to upload {% data variables.product.prodname_codeql %} analysis results to {% data variables.product.github %}.' permissions: '{% data reusables.permissions.code-scanning-all-alerts %}' product: '{% data reusables.gated-features.codeql %}' versions: @@ -16,30 +16,30 @@ topics: ## About SARIF output -{% data variables.product.prodname_dotcom %} creates {% data variables.product.prodname_code_scanning %} alerts in a repository using information from Static Analysis Results Interchange Format (SARIF) files. SARIF is designed to represent the output of a broad range of static analysis tools, and there are many features in the SARIF specification that are considered "optional". The results must use SARIF version 2.1.0. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning). +{% data variables.product.github %} creates {% data variables.product.prodname_code_scanning %} alerts in a repository using information from Static Analysis Results Interchange Format (SARIF) files. SARIF is designed to represent the output of a broad range of static analysis tools, and there are many features in the SARIF specification that are considered "optional". The results must use SARIF version 2.1.0. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning). -After analyzing a {% data variables.product.prodname_codeql %} database using the {% data variables.product.prodname_codeql_cli %}, you will have a SARIF file that contains the results. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries). You can then use the {% data variables.product.prodname_codeql_cli %} to upload results to {% data variables.product.prodname_dotcom %}. +After analyzing a {% data variables.product.prodname_codeql %} database using the {% data variables.product.prodname_codeql_cli %}, you will have a SARIF file that contains the results. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries). You can then use the {% data variables.product.prodname_codeql_cli %} to upload results to {% data variables.product.github %}. If you used a method other than the {% data variables.product.prodname_codeql_cli %} to generate results, you can use other upload methods. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github). {% data reusables.code-scanning.upload-sarif-ghas %} -## Generating a token for authentication with {% data variables.product.product_name %} +## Generating a token for authentication with {% data variables.product.github %} -Before you can upload your results to {% data variables.product.product_name %}, you will first need to generate a {% data variables.product.pat_generic %}. +Before you can upload your results to {% data variables.product.github %}, you will first need to generate a {% data variables.product.pat_generic %}. * **{% data variables.product.pat_v1_caps %}** requires "{% data variables.product.prodname_code_scanning_caps %} alerts" **Read and write** access for the required repositories. * **{% data variables.product.pat_v2_caps %}** requires "repo" **security_events** access. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). -If you have installed the {% data variables.product.prodname_codeql_cli %} in a third-party CI system to create results to display in {% data variables.product.prodname_dotcom %} as code scanning alerts, you can use a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} to upload results to {% data variables.product.product_name %}. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system#generating-a-token-for-authentication-with-github). +If you have installed the {% data variables.product.prodname_codeql_cli %} in a third-party CI system to create results to display in {% data variables.product.github %} as code scanning alerts, you can use a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} to upload results to {% data variables.product.github %}. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system#generating-a-token-for-authentication-with-github). -## Uploading results to {% data variables.product.product_name %} +## Uploading results to {% data variables.product.github %} {% data reusables.code-scanning.upload-sarif-alert-limit %} -Before you can upload results to {% data variables.product.product_name %}, you must determine the best way to pass the {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} you created in the previous section to the {% data variables.product.prodname_codeql_cli %}. We recommend that you review your CI system's guidance on the secure use of a secret store. The {% data variables.product.prodname_codeql_cli %} supports: +Before you can upload results to {% data variables.product.github %}, you must determine the best way to pass the {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} you created in the previous section to the {% data variables.product.prodname_codeql_cli %}. We recommend that you review your CI system's guidance on the secure use of a secret store. The {% data variables.product.prodname_codeql_cli %} supports: * Interfacing with a secret store using the `--github-auth-stdin` option (recommended). * Saving the secret in the environment variable `GITHUB_TOKEN` and running the CLI without including the `--github-auth-stdin` option. @@ -70,16 +70,16 @@ codeql github upload-results \ | --commit | {% octicon "check" aria-label="Required" %} | Specify the full SHA of the commit you analyzed. | | --sarif | {% octicon "check" aria-label="Required" %} | Specify the SARIF file to load. | | {% ifversion ghes %} | -| --github-url | {% octicon "check" aria-label="Required" %} | Specify the URL for {% data variables.product.product_name %}. | +| --github-url | {% octicon "check" aria-label="Required" %} | Specify the URL for {% data variables.location.product_location_enterprise %}. | | {% endif %} | | --github-auth-stdin | {% octicon "x" aria-label="Optional" %} | Pass the CLI the {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} created for authentication with {% data variables.product.company_short %}'s REST API from your secret store via standard input. This is not needed if the command has access to a `GITHUB_TOKEN` environment variable set with this token. | For more information, see [AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual/github-upload-results). > [!NOTE] -> If you analyzed more than one {% data variables.product.prodname_codeql %} database for a single commit, you must have specified a SARIF category for each set of results generated by this command. When you upload the results to {% data variables.product.product_name %}, {% data variables.product.prodname_code_scanning %} uses this category to store the results for each language separately. If you forget to do this, each upload overwrites the previous results. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries#running-codeql-database-analyze). +> If you analyzed more than one {% data variables.product.prodname_codeql %} database for a single commit, you must have specified a SARIF category for each set of results generated by this command. When you upload the results to {% data variables.product.github %}, {% data variables.product.prodname_code_scanning %} uses this category to store the results for each language separately. If you forget to do this, each upload overwrites the previous results. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/analyzing-your-code-with-codeql-queries#running-codeql-database-analyze). -### Basic example of uploading results to {% data variables.product.product_name %} +### Basic example of uploading results to {% data variables.product.github %} The following example uploads results from the SARIF file `temp/example-repo-js.sarif` to the repository `my-org/example-repo`. It tells the {% data variables.product.prodname_code_scanning %} API that the results are for the commit `deb275d2d5fe9a522a0b7bd8b6b6a1c939552718` on the `main` branch. The example assumes that the {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} created for authentication with {% data variables.product.company_short %}'s REST API uses the `GITHUB_TOKEN` environment variable. @@ -91,15 +91,15 @@ codeql github upload-results \ {% endif %} ``` -There is no output from this command unless the upload was unsuccessful. The command prompt returns when the upload is complete and data processing has begun. On smaller codebases, you should be able to explore the {% data variables.product.prodname_code_scanning %} alerts in {% data variables.product.product_name %} shortly afterward. You can see alerts directly in the pull request or on the **Security** tab for branches, depending on the code you checked out. For more information, see [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests) and [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository). +There is no output from this command unless the upload was unsuccessful. The command prompt returns when the upload is complete and data processing has begun. On smaller codebases, you should be able to explore the {% data variables.product.prodname_code_scanning %} alerts in {% data variables.product.github %} shortly afterward. You can see alerts directly in the pull request or on the **Security** tab for branches, depending on the code you checked out. For more information, see [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests) and [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository). -## Uploading diagnostic information to {% data variables.product.product_name %} if the analysis fails +## Uploading diagnostic information to {% data variables.product.github %} if the analysis fails When {% data variables.product.prodname_codeql_cli %} finishes analyzing a database successfully, it gathers diagnostic information such as file coverage, warnings, and errors, and includes it in the SARIF file with the results. When you upload the SARIF file to {% data variables.product.company_short %} the diagnostic information is displayed on the {% data variables.product.prodname_code_scanning %} {% data variables.code-scanning.tool_status_page %} for the repository to make it easy to see how well {% data variables.product.prodname_codeql %} is working and debug any problems. For more information, see [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/about-the-tool-status-page). However, if `codeql database analyze` fails for any reason there is no SARIF file to upload to {% data variables.product.company_short %} and no diagnostic information to show on the {% data variables.product.prodname_code_scanning %} {% data variables.code-scanning.tool_status_page %} for the repository. This makes it difficult for users to troubleshoot analysis unless they have access to log files in your CI system. -We recommend that you configure your CI workflow to export and upload diagnostic information to {% data variables.product.product_name %} when an analysis fails. You can do this using the following simple commands to export diagnostic information and upload it to {% data variables.product.company_short %}. +We recommend that you configure your CI workflow to export and upload diagnostic information to {% data variables.product.github %} when an analysis fails. You can do this using the following simple commands to export diagnostic information and upload it to {% data variables.product.company_short %}. ### Exporting diagnostic information if the analysis fails @@ -115,7 +115,7 @@ This SARIF file will contain diagnostic information for the failed analysis, inc ### Uploading diagnostic information if the analysis fails -You can make this diagnostic information available on the {% data variables.code-scanning.tool_status_page %} by uploading the SARIF file to {% data variables.product.product_name %} using [AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual/github-upload-results), for example: +You can make this diagnostic information available on the {% data variables.code-scanning.tool_status_page %} by uploading the SARIF file to {% data variables.product.github %} using [AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual/github-upload-results), for example: ```shell codeql github upload-results \ diff --git a/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/csv-output.md b/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/csv-output.md index 04e94114d7de..482e05a9dd9b 100644 --- a/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/csv-output.md +++ b/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/csv-output.md @@ -15,7 +15,7 @@ topics: ## About CSV output -You can save analysis results from the {% data variables.product.prodname_codeql_cli %} in a number of different formats, including SARIF and CSV. We do generally recommend SARIF because it is a standard output for static analysis tools and easier to parse. You can also upload SARIF files to {% data variables.product.product_name %}. However, CSV format may be useful if you need to further process the analysis results using your own tools. For more information on selecting a file format for your analysis results, see [AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual/database-analyze). +You can save analysis results from the {% data variables.product.prodname_codeql_cli %} in a number of different formats, including SARIF and CSV. We do generally recommend SARIF because it is a standard output for static analysis tools and easier to parse. You can also upload SARIF files to {% data variables.product.github %}. However, CSV format may be useful if you need to further process the analysis results using your own tools. For more information on selecting a file format for your analysis results, see [AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual/database-analyze). For more information about the SARIF format, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/sarif-output). diff --git a/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs.md b/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs.md index ceaad9b38c79..e4b4c1a4555d 100644 --- a/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs.md +++ b/content/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs.md @@ -138,8 +138,8 @@ query pack to download, keep in mind that when you update your version of also need to switch to a newer version of the query pack. Newer versions of {% data variables.product.prodname_codeql %} _may_ provide degraded performance when used with query packs that have been pinned -to a very old version. For more information, see "[About {% data variables.product.prodname_codeql %} -pack compatibility](#about-codeql-pack-compatibility)." +to a very old version. For more information, see [About {% data variables.product.prodname_codeql %} +pack compatibility](#about-codeql-pack-compatibility). ## Using a {% data variables.product.prodname_codeql %} pack to analyze a {% data variables.product.prodname_codeql %} database diff --git a/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/telemetry-in-codeql-for-visual-studio-code.md b/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/telemetry-in-codeql-for-visual-studio-code.md index 9dd459694a6f..cbbc3d4635d0 100644 --- a/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/telemetry-in-codeql-for-visual-studio-code.md +++ b/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/telemetry-in-codeql-for-visual-studio-code.md @@ -11,7 +11,7 @@ topics: - CodeQL type: reference allowTitleToDifferFromFilename: true -intro: 'If you specifically opt in to permit {% data variables.product.company_short %} to do so, {% data variables.product.company_short %} will collect usage data and metrics for the purposes of helping the core developers to improve the {% data variables.product.prodname_codeql %} extension for {% data variables.product.prodname_vscode_shortname %}.' +intro: 'If {% data variables.product.prodname_vscode_shortname %} telemetry is enabled, {% data variables.product.company_short %} will collect usage data and metrics for the purposes of helping the core developers to improve the {% data variables.product.prodname_codeql %} extension for {% data variables.product.prodname_vscode_shortname %}.' redirect_from: - /code-security/codeql-for-vs-code/about-telemetry-in-codeql-for-visual-studio-code --- @@ -19,7 +19,7 @@ redirect_from: This data will not be shared with any parties outside of {% data variables.product.company_short %}. IP addresses and installation IDs will be retained for a maximum of 30 days. Anonymous data will be retained for a maximum of 180 days. > [!NOTE] -> Telemetry collection is disabled by default in {% data variables.product.prodname_codeql %} for {% data variables.product.prodname_vscode %}. When telemetry collection is disabled, no data will be sent to {% data variables.product.company_short %} servers. +> Telemetry collection in {% data variables.product.prodname_codeql %} for {% data variables.product.prodname_vscode %} follows the {% data variables.product.prodname_vscode_shortname %} telemetry settings. When telemetry collection is disabled, no data will be sent to {% data variables.product.company_short %} servers. ## Why we collect data @@ -27,7 +27,7 @@ This data will not be shared with any parties outside of {% data variables.produ ## What data is collected -If you opt in, {% data variables.product.company_short %} collects the following information related to the usage of the extension. The data collected are: +If telemetry is enabled, {% data variables.product.company_short %} collects the following information related to the usage of the extension. The data collected are: * The identifiers of any {% data variables.product.prodname_codeql %}-related {% data variables.product.prodname_vscode_shortname %} commands that are run. For each command, these are: the timestamp, time taken, and whether or not the command completed successfully. @@ -69,9 +69,7 @@ We only collect the minimal amount of data we need to answer the questions about ## Disabling telemetry reporting -You can disable telemetry collection by setting `codeQL.telemetry.enableTelemetry` to `false` in your settings. For more information, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/customizing-settings). - -Additionally, telemetry collection will be disabled if the global `telemetry.telemetryLevel` setting is set to `off`. For more information about global telemetry collection, see [Visual Studio Code FAQ](https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting) in the {% data variables.product.prodname_vscode %} documentation. +You can disable telemetry collection by setting the global `telemetry.telemetryLevel` setting to `off`. For more information, see the [Visual Studio Code Telemetry page](https://code.visualstudio.com/docs/getstarted/telemetry) in the {% data variables.product.prodname_vscode %} documentation. ## Further reading diff --git a/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor.md b/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor.md index 05865988b319..5e4c9a818cce 100644 --- a/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor.md +++ b/content/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor.md @@ -61,11 +61,11 @@ This section uses an open source Java project called "sofa-jraft" as an example. 1. Display the {% data variables.product.prodname_codeql %} model editor. By default the editor runs in application mode, so the list of external APIs used by the selected codebase is shown. - ![Screenshot of the "Application mode" view of the CodeQL model pack editor in Visual Studio Code showing two of the external Java frameworks used by the "sofa-jraft" codebase.](/assets/images/help/security/codeql-for-vs-code-model-application-mode.png) + ![Screenshot of the "Application mode" view showing two of the external Java frameworks used by the "sofa-jraft" codebase.](/assets/images/help/security/codeql-for-vs-code-model-application-mode.png) 1. Click to expand an external API and view the list of calls from the codebase to the external dependency. - ![Screenshot of the "Application mode" view of the CodeQL model pack editor in Visual Studio Code showing the calls to the "rocksdbjni" framework ready for modeling. The "View" option for the first call is highlighted with a dark orange outline.](/assets/images/help/security/codeql-for-vs-code-model-application-mode-expanded.png) + ![Screenshot of "Application mode" showing the calls to the "rocksdbjni" framework. The "View" option for the first call is outlined in orange.](/assets/images/help/security/codeql-for-vs-code-model-application-mode-expanded.png) 1. Click **View** associated with an API call or method to show where it is used in your codebase. @@ -104,13 +104,13 @@ This section uses an open source Java project called "sofa-jraft" as an example. 1. Display the {% data variables.product.prodname_codeql %} model editor. By default the editor runs in application mode. Click **Model as dependency** to display dependency mode. The screen changes to show the public API of the framework or library. - ![Screenshot of the "Dependency mode" view of the CodeQL model pack editor in Visual Studio Code showing three of the packages published by the "sofa-jraft" codebase.](/assets/images/help/security/codeql-for-vs-code-model-dependency-mode.png) + ![Screenshot of the "Dependency mode" view showing three of the packages published by the "sofa-jraft" codebase.](/assets/images/help/security/codeql-for-vs-code-model-dependency-mode.png) 1. Click to expand a package and view the list of available methods. 1. Click **View** associated with a method to show its definition. - ![Screenshot of the "Dependency mode" view of the CodeQL model pack editor in Visual Studio Code showing one model for the "com.alipay.sofa.jraft.option.BallotBoxOptions.getClosureQueue()" method. The "+" button is outlined in dark orange. Click this button to create a second model for the method.](/assets/images/help/security/codeql-for-vs-code-model-dependency-mode-expanded.png) + ![Screenshot of "Dependency mode" with one model for "com.alipay.sofa.jraft.option.BallotBoxOptions.getClosureQueue()". The "+" button is outlined.](/assets/images/help/security/codeql-for-vs-code-model-dependency-mode-expanded.png) 1. When you have determined how to model the method, define the "Model type". @@ -141,7 +141,7 @@ The editor will create a separate model file for each package that you model. Some methods support more than one data flow. It is important to model all the data flows for a method, otherwise you cannot detect all the potential problems associated with using the method. First you model one data flow for the method, and then use the **+** button in the method row to specify a second data flow model. -![Screenshot of the "Dependency mode" view of the CodeQL model pack editor in Visual Studio Code showing the public methods available in the "com.alipay.soft.jraft.option" package ready for modeling. The "View" option for the first method is highlighted with a dark orange outline.](/assets/images/help/security/codeql-for-vs-code-model-dependency-mode-plus.png) +![Screenshot of the "Dependency mode" view with public methods available in "com.alipay.soft.jraft.option". A "View" option is outlined in orange.](/assets/images/help/security/codeql-for-vs-code-model-dependency-mode-plus.png) ## Testing {% data variables.product.prodname_codeql %} model packs in {% data variables.product.prodname_vscode_shortname %} diff --git a/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md b/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md index 9c88c9602ee8..9207a188d3c5 100644 --- a/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md +++ b/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md @@ -1,6 +1,6 @@ --- title: About Dependabot alerts -intro: '{% data variables.product.product_name %} sends {% data variables.product.prodname_dependabot_alerts %} when we detect that your repository uses a vulnerable dependency.' +intro: '{% data variables.product.github %} sends {% data variables.product.prodname_dependabot_alerts %} when we detect that your repository uses a vulnerable dependency.' product: '{% data reusables.gated-features.dependabot-alerts %}' redirect_from: - /articles/about-security-alerts-for-vulnerable-dependencies @@ -67,12 +67,12 @@ You can also enable or disable {% data variables.product.prodname_dependabot_ale For information about access requirements for actions related to {% data variables.product.prodname_dependabot_alerts %}, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization#access-requirements-for-security-features). -{% data variables.product.product_name %} starts generating the dependency graph immediately and generates alerts for any insecure dependencies as soon as they are identified. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#enabling-or-disabling-security-and-analysis-features-for-private-repositories). +{% data variables.product.github %} starts generating the dependency graph immediately and generates alerts for any insecure dependencies as soon as they are identified. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#enabling-or-disabling-security-and-analysis-features-for-private-repositories). {% endif %} -When {% data variables.product.product_name %} identifies a vulnerable dependency, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the **Security** tab for the repository and in the repository's dependency graph. The alert includes a link to the affected file in the project, and information about a fixed version. +When {% data variables.product.github %} identifies a vulnerable dependency, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the **Security** tab for the repository and in the repository's dependency graph. The alert includes a link to the affected file in the project, and information about a fixed version. -{% data variables.product.product_name %} may also notify the maintainers of affected repositories about new alerts according to their notification preferences.{% ifversion dependabot-suppressed-notifications %} When {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.product_name %} does not send notifications for all vulnerable dependencies found in your repository, only for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled.{% endif %} For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts). +{% data variables.product.github %} may also notify the maintainers of affected repositories about new alerts according to their notification preferences.{% ifversion dependabot-suppressed-notifications %} When {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.github %} does not send notifications for all vulnerable dependencies found in your repository, only for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled.{% endif %} For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts). {% data reusables.dependabot.dependabot-alert-create-PR %} @@ -83,13 +83,13 @@ When {% data variables.product.product_name %} identifies a vulnerable dependenc {% endif %} > [!WARNING] -> {% data variables.product.product_name %}'s security features do not claim to catch all vulnerabilities. We actively maintain {% data variables.product.prodname_advisory_database %} and generate alerts with the most up-to-date information. However, we cannot catch everything or tell you about known vulnerabilities within a guaranteed time frame. These features are not substitutes for human review of each dependency for potential vulnerabilities or any other issues, and we recommend consulting with a security service or conducting a thorough dependency review when necessary. +> {% data variables.product.github %}'s security features do not claim to catch all vulnerabilities. We actively maintain {% data variables.product.prodname_advisory_database %} and generate alerts with the most up-to-date information. However, we cannot catch everything or tell you about known vulnerabilities within a guaranteed time frame. These features are not substitutes for human review of each dependency for potential vulnerabilities or any other issues, and we recommend consulting with a security service or conducting a thorough dependency review when necessary. ## Access to {% data variables.product.prodname_dependabot_alerts %} You can see all of the alerts that affect a particular project{% ifversion fpt or ghec %} on the repository's **Security** tab or{% endif %} in the repository's dependency graph. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts). -By default, we notify people with write, maintain, or admin permissions in the affected repositories about new {% data variables.product.prodname_dependabot_alerts %}. {% ifversion fpt or ghec %}{% data variables.product.product_name %} never publicly discloses insecure dependencies for any repository. You can also make {% data variables.product.prodname_dependabot_alerts %} visible to additional people or teams working with repositories that you own or have admin permissions for. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts). +By default, we notify people with write, maintain, or admin permissions in the affected repositories about new {% data variables.product.prodname_dependabot_alerts %}. {% ifversion fpt or ghec %}{% data variables.product.github %} never publicly discloses insecure dependencies for any repository. You can also make {% data variables.product.prodname_dependabot_alerts %} visible to additional people or teams working with repositories that you own or have admin permissions for. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts). {% endif %} {% data reusables.notifications.vulnerable-dependency-notification-enable %} diff --git a/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md b/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md index fc2d3d4a710b..26a90e32575f 100644 --- a/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md +++ b/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md @@ -68,7 +68,7 @@ When you enable {% data variables.product.prodname_dependabot_alerts %} for exis You can manage {% data variables.product.prodname_dependabot_alerts %} for your public, private or internal repository. -By default, we notify people with write, maintain, or admin permissions in the affected repositories about new {% data variables.product.prodname_dependabot_alerts %}. {% data variables.product.product_name %} never publicly discloses insecure dependencies for any repository. You can also make {% data variables.product.prodname_dependabot_alerts %} visible to additional people or teams working on repositories that you own or have admin permissions for. +By default, we notify people with write, maintain, or admin permissions in the affected repositories about new {% data variables.product.prodname_dependabot_alerts %}. {% data variables.product.github %} never publicly discloses insecure dependencies for any repository. You can also make {% data variables.product.prodname_dependabot_alerts %} visible to additional people or teams working on repositories that you own or have admin permissions for. {% data reusables.security.security-and-analysis-features-enable-read-only %} diff --git a/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md b/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md index 485393720b1f..57ff634244f3 100644 --- a/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md +++ b/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md @@ -22,12 +22,12 @@ topics: ## About notifications for {% data variables.product.prodname_dependabot_alerts %} -When {% data variables.product.prodname_dependabot %} detects vulnerable dependencies in your repositories, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the **Security** tab for the repository. {% data variables.product.product_name %} notifies the maintainers of affected repositories about the new alert according to their notification preferences.{% ifversion fpt or ghec %} {% data variables.product.prodname_dependabot %} is enabled by default on all public repositories, and needs to be enabled on private repositories. By default, you will receive {% data variables.product.prodname_dependabot_alerts %} by email. You can override the default overall behavior by choosing the type of notifications you want to receive, or switching notifications off altogether in the settings page for your user notifications at [https://github.com/settings/notifications](https://github.com/settings/notifications). +When {% data variables.product.prodname_dependabot %} detects vulnerable dependencies in your repositories, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the **Security** tab for the repository. {% data variables.product.github %} notifies the maintainers of affected repositories about the new alert according to their notification preferences.{% ifversion fpt or ghec %} {% data variables.product.prodname_dependabot %} is enabled by default on all public repositories, and needs to be enabled on private repositories. By default, you will receive {% data variables.product.prodname_dependabot_alerts %} by email. You can override the default overall behavior by choosing the type of notifications you want to receive, or switching notifications off altogether in the settings page for your user notifications at [https://github.com/settings/notifications](https://github.com/settings/notifications). {% endif %} {% data reusables.dependabot.no-dependabot-alerts-for-malware %} -{% ifversion dependabot-suppressed-notifications %}Regardless of your notification preferences, when {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.product_name %} does not send notifications for all vulnerable dependencies found in your repository. Instead, you will receive notifications for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled, if your notification preferences allow it.{% endif %} +{% ifversion dependabot-suppressed-notifications %}Regardless of your notification preferences, when {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.github %} does not send notifications for all vulnerable dependencies found in your repository. Instead, you will receive notifications for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled, if your notification preferences allow it.{% endif %} {% ifversion fpt or ghec %}If you're an organization owner, you can enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories in your organization with one click. You can also set whether {% data variables.product.prodname_dependabot_alerts %} will be enabled or disabled for newly-created repositories. For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-new-repositories-when-they-are-added). {% endif %} @@ -40,7 +40,7 @@ Enterprise owners can also enable {% data variables.product.prodname_dependabot_ ## Configuring notifications for {% data variables.product.prodname_dependabot_alerts %} -When a new {% data variables.product.prodname_dependabot %} alert is detected, {% data variables.product.product_name %} notifies all users with access to {% data variables.product.prodname_dependabot_alerts %} for the repository according to their notification preferences. You will receive alerts if you are watching the repository, have enabled notifications for security alerts or for all the activity on the repository, and are not ignoring the repository. For more information, see [AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository). +When a new {% data variables.product.prodname_dependabot %} alert is detected, {% data variables.product.github %} notifies all users with access to {% data variables.product.prodname_dependabot_alerts %} for the repository according to their notification preferences. You will receive alerts if you are watching the repository, have enabled notifications for security alerts or for all the activity on the repository, and are not ignoring the repository. For more information, see [AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository). You can configure notification settings for yourself or your organization from the Manage notifications drop-down {% octicon "bell" aria-label="The notifications bell" %} shown at the top of each page. For more information, see [AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#choosing-your-notification-settings). @@ -48,7 +48,7 @@ You can configure notification settings for yourself or your organization from t {% data reusables.notifications.vulnerable-dependency-notification-options %} {% ifversion update-notification-settings-22 %} -![Screenshot of the notification options for {% data variables.product.prodname_dependabot_alerts %}. A dropdown menu, showing notification frequency options, is highlighted with an orange outline.](/assets/images/help/dependabot/dependabot-notification-frequency.png){% endif %}{% ifversion ghes %} +![Screenshot of the notification options for {% data variables.product.prodname_dependabot_alerts %}. A dropdown menu with frequency options is outlined in orange.](/assets/images/help/dependabot/dependabot-notification-frequency.png){% endif %}{% ifversion ghes %} ![Screenshot of the notification options for {% data variables.product.prodname_dependabot_alerts %}.](/assets/images/help/enterprises/dependabot-alerts-options-no-ui.png){% endif %} > [!NOTE] diff --git a/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md b/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md index 579756c2e78f..f9bfbd9c067b 100644 --- a/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md +++ b/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md @@ -1,6 +1,6 @@ --- title: Viewing and updating Dependabot alerts -intro: 'If {% data variables.product.product_name %} discovers insecure dependencies in your project, you can view details on the Dependabot alerts tab of your repository. Then, you can update your project to resolve or dismiss the alert.' +intro: 'If {% data variables.product.github %} discovers insecure dependencies in your project, you can view details on the Dependabot alerts tab of your repository. Then, you can update your project to resolve or dismiss the alert.' redirect_from: - /articles/viewing-and-updating-vulnerable-dependencies-in-your-repository - /github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository @@ -30,7 +30,7 @@ You can enable automatic security updates for any repository that uses {% data v ## About updates for vulnerable dependencies in your repository -{% data variables.product.product_name %} generates {% data variables.product.prodname_dependabot_alerts %} when we detect that the default branch of your codebase is using dependencies with known security risks. For repositories where {% data variables.product.prodname_dependabot_security_updates %} are enabled, when {% data variables.product.product_name %} detects a vulnerable dependency in the default branch, {% data variables.product.prodname_dependabot %} creates a pull request to fix it. The pull request will upgrade the dependency to the minimum possible secure version needed to avoid the vulnerability. +{% data variables.product.github %} generates {% data variables.product.prodname_dependabot_alerts %} when we detect that the default branch of your codebase is using dependencies with known security risks. For repositories where {% data variables.product.prodname_dependabot_security_updates %} are enabled, when {% data variables.product.github %} detects a vulnerable dependency in the default branch, {% data variables.product.prodname_dependabot %} creates a pull request to fix it. The pull request will upgrade the dependency to the minimum possible secure version needed to avoid the vulnerability. {% data reusables.dependabot.no-dependabot-alerts-for-malware %} diff --git a/content/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories.md b/content/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories.md index ea2e5e7e89ee..ce6920d47f02 100644 --- a/content/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories.md +++ b/content/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories.md @@ -34,7 +34,7 @@ You can configure updates for repositories that contain a dependency manifest or {% ifversion ghes %} > [!NOTE] -> To ensure that {% data variables.product.product_name %} supports {% data variables.product.prodname_dependabot_updates %} for the latest supported ecosystem versions, your enterprise owner must download the most recent version of the [{% data variables.product.prodname_dependabot %} action](https://github.com/github/dependabot-action). {% data reusables.actions.action-bundled-actions %} +> To ensure that {% data variables.product.prodname_ghe_server %} supports {% data variables.product.prodname_dependabot_updates %} for the latest supported ecosystem versions, your enterprise owner must download the most recent version of the [{% data variables.product.prodname_dependabot %} action](https://github.com/github/dependabot-action). {% data reusables.actions.action-bundled-actions %} {% endif %} > [!NOTE] diff --git a/content/code-security/dependabot/troubleshooting-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md b/content/code-security/dependabot/troubleshooting-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md index 2f50c05f190d..5073ffcfea98 100644 --- a/content/code-security/dependabot/troubleshooting-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md +++ b/content/code-security/dependabot/troubleshooting-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md @@ -1,6 +1,6 @@ --- title: Troubleshooting the detection of vulnerable dependencies -intro: 'If the dependency information reported by {% data variables.product.product_name %} is not what you expected, there are a number of points to consider, and various things you can check.' +intro: 'If the dependency information reported by {% data variables.product.github %} is not what you expected, there are a number of points to consider, and various things you can check.' shortTitle: Troubleshoot vulnerability detection redirect_from: - /github/managing-security-vulnerabilities/troubleshooting-the-detection-of-vulnerable-dependencies diff --git a/content/code-security/dependabot/troubleshooting-dependabot/viewing-dependabot-job-logs.md b/content/code-security/dependabot/troubleshooting-dependabot/viewing-dependabot-job-logs.md index 91efc7a59701..c43797d775f6 100644 --- a/content/code-security/dependabot/troubleshooting-dependabot/viewing-dependabot-job-logs.md +++ b/content/code-security/dependabot/troubleshooting-dependabot/viewing-dependabot-job-logs.md @@ -1,6 +1,6 @@ --- title: Viewing Dependabot job logs -intro: 'To support debugging of {% data variables.product.prodname_dependabot %} pull requests, {% data variables.product.product_name %} provides logs of all {% data variables.product.prodname_dependabot %} jobs.' +intro: 'To support debugging of {% data variables.product.prodname_dependabot %} pull requests, {% data variables.product.github %} provides logs of all {% data variables.product.prodname_dependabot %} jobs.' shortTitle: Viewing Dependabot logs permissions: '{% data reusables.permissions.dependabot-various-tasks %}' versions: diff --git a/content/code-security/dependabot/working-with-dependabot/about-dependabot-on-github-actions-runners.md b/content/code-security/dependabot/working-with-dependabot/about-dependabot-on-github-actions-runners.md index b77a81fc1ae5..dc71126c3736 100644 --- a/content/code-security/dependabot/working-with-dependabot/about-dependabot-on-github-actions-runners.md +++ b/content/code-security/dependabot/working-with-dependabot/about-dependabot-on-github-actions-runners.md @@ -39,9 +39,9 @@ If you are transitioning to using {% data variables.product.prodname_dependabot {% data reusables.dependabot.dependabot-on-actions-enterprise-policy-condition %} -## Enabling or disabling {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_dotcom %}-hosted runners +## Enabling or disabling {% data variables.product.prodname_dependabot %} on {% data variables.product.github %}-hosted runners -This section only applies to standard {% data variables.product.prodname_dotcom %}-hosted runners, not larger runners. +This section only applies to standard {% data variables.product.github %}-hosted runners, not larger runners. New repositories that you create in your user account or in your organization will automatically be configured to run {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_actions %} if any of the following is true: * {% data variables.product.prodname_dependabot %} is installed and enabled, and {% data variables.product.prodname_actions %} is enabled and in use. @@ -49,7 +49,7 @@ New repositories that you create in your user account or in your organization wi For existing repositories, you can opt in to run {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_actions %} as follows. -Future releases of {% data variables.product.product_name %} will remove the ability to disable running {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_actions %}. +Future releases of {% data variables.product.github %} will remove the ability to disable running {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_actions %}. If you restrict access to your organization's or repository's private resources, you may need to update your list of allowed IP addresses prior to enabling {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_actions %} runners. You can update your IP allow list to use the {% data variables.product.prodname_dotcom %}-hosted runners IP addresses (instead of the {% data variables.product.prodname_dependabot %} IP addresses), sourced from the [meta](/rest/meta) REST API endpoint. diff --git a/content/code-security/dependabot/working-with-dependabot/dependabot-options-reference.md b/content/code-security/dependabot/working-with-dependabot/dependabot-options-reference.md index 854d068e81aa..947a9018497f 100644 --- a/content/code-security/dependabot/working-with-dependabot/dependabot-options-reference.md +++ b/content/code-security/dependabot/working-with-dependabot/dependabot-options-reference.md @@ -267,7 +267,7 @@ When `ignore` is used {% data variables.product.prodname_dependabot %} uses the |------------|---------| | `dependency-name` | Ignore updates for dependencies with matching names, optionally using `*` to match zero or more characters. | | `versions` | Ignore specific versions or ranges of versions. | -| `update-types` | Ignore updates to one or more semantic versioning levels. Supported values: `sem-ver:minor`, `sem-ver:patch`, and `sem-ver:major`. | +| `update-types` | Ignore updates to one or more semantic versioning levels. Supported values: `version-update:semver-minor`, `version-update:semver-patch`, and `version-update:semver-major`. | ### `dependency-name` (`ignore`) @@ -282,7 +282,7 @@ For most package managers, you should define a value that will match the depende Use to ignore specific versions or ranges of versions. If you want to define a range, use the standard pattern for the package manager. For example: -* npm: use `^1.0.0` +* npm: use `^1.0.0` * Bundler: use `~> 2.0` * Docker: use Ruby version syntax * NuGet: use `7.*` diff --git a/content/code-security/getting-started/auditing-security-alerts.md b/content/code-security/getting-started/auditing-security-alerts.md index 2fe202bc8a4d..d10e64e0ee5c 100644 --- a/content/code-security/getting-started/auditing-security-alerts.md +++ b/content/code-security/getting-started/auditing-security-alerts.md @@ -31,7 +31,7 @@ Many of the events in the timeline also create an event in the audit log, which Security overview consolidates information about security alerts and provides high-level summaries of the security status of your enterprise or organization. -In security overview you can see repositories with open security alerts{% ifversion security-overview-org-risk-coverage %}, as well as which repositories have enabled specific security features{% endif %}. You can also use security overview to filter and sort security alerts using interactive views. +In security overview you can see repositories with open security alerts{% ifversion ghec or ghes %}, as well as which repositories have enabled specific security features{% endif %}. You can also use security overview to filter and sort security alerts using interactive views. For more information, see [AUTOTITLE](/code-security/security-overview/about-security-overview). @@ -47,7 +47,7 @@ For a list of audit log events, see [AUTOTITLE](/admin/monitoring-activity-in-yo For information on how to access the audit log for your enterprise or organization, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise) and [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization). -{% ifversion audit-log-streaming %} +{% ifversion ghec or ghes %} You can also stream audit data from {% data variables.product.prodname_dotcom %} to an external data management system, which enables you to analyze and collect data for internal charts. Enterprise owners can configure audit log streaming. For more information, see [Streaming the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise). diff --git a/content/code-security/getting-started/dependabot-quickstart-guide.md b/content/code-security/getting-started/dependabot-quickstart-guide.md index 38980312f5c9..c632838310de 100644 --- a/content/code-security/getting-started/dependabot-quickstart-guide.md +++ b/content/code-security/getting-started/dependabot-quickstart-guide.md @@ -25,7 +25,7 @@ This quickstart guide walks you through setting up and enabling {% data variable ## Prerequisites {% ifversion ghes %} -Before you can use the {% data variables.product.prodname_dependabot_alerts %} feature in {% data variables.product.product_name %}, you must ensure that your enterprise administrator enables {% data variables.product.prodname_dependabot %} for the instance. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise#enabling-dependabot-alerts). +Before you can use the {% data variables.product.prodname_dependabot_alerts %} feature in {% data variables.product.github %}, you must ensure that your enterprise administrator enables {% data variables.product.prodname_dependabot %} for the instance. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise#enabling-dependabot-alerts). {% endif %} For the purpose of this guide, we're going to use a demo repository to illustrate how {% data variables.product.prodname_dependabot %} finds vulnerabilities in dependencies, where you can see {% data variables.product.prodname_dependabot_alerts %} on {% data variables.product.prodname_dotcom %}, and how you can explore, fix, or dismiss these alerts. diff --git a/content/code-security/getting-started/index.md b/content/code-security/getting-started/index.md index 452a2f662413..22210533273c 100644 --- a/content/code-security/getting-started/index.md +++ b/content/code-security/getting-started/index.md @@ -2,7 +2,7 @@ title: Getting started with code security shortTitle: Getting started allowTitleToDifferFromFilename: true -intro: 'Introduction to code security with {% data variables.product.product_name %}.' +intro: 'Introduction to code security with {% data variables.product.github %}.' versions: fpt: '*' ghes: '*' diff --git a/content/code-security/getting-started/quickstart-for-securing-your-organization.md b/content/code-security/getting-started/quickstart-for-securing-your-organization.md index 50465394f0e9..1c5279b5a8a3 100644 --- a/content/code-security/getting-started/quickstart-for-securing-your-organization.md +++ b/content/code-security/getting-started/quickstart-for-securing-your-organization.md @@ -104,7 +104,7 @@ You can choose to enable a security feature automatically in all new repositorie 1. In the left sidebar, click **{% octicon "codescan" aria-hidden="true" %} Code security and analysis**. 1. Below the name of the feature, select the option for automatically enabling the feature in applicable future repositories. - ![Screenshot of "Code security and analysis" page. Below "Dependabot alerts", a checkbox to enable the feature in future repositories is highlighted in orange.](/assets/images/help/security/enable-for-new-repos.png) + ![Screenshot of "Code security and analysis" page. Below "Dependabot alerts", the checkbox to enable alerts in new repositories is outlined in orange.](/assets/images/help/security/enable-for-new-repos.png) ## Monitoring the impact of security features diff --git a/content/code-security/index.md b/content/code-security/index.md index 7484549c0087..a5b708081888 100644 --- a/content/code-security/index.md +++ b/content/code-security/index.md @@ -41,6 +41,7 @@ topics: - Vulnerabilities children: - /getting-started + - /trialing-github-advanced-security - /adopting-github-advanced-security-at-scale - /securing-your-organization - /secret-scanning diff --git a/content/code-security/secret-scanning/enabling-secret-scanning-features/enabling-push-protection-for-your-repository.md b/content/code-security/secret-scanning/enabling-secret-scanning-features/enabling-push-protection-for-your-repository.md index 812e4af72c17..5f7369ba9134 100644 --- a/content/code-security/secret-scanning/enabling-secret-scanning-features/enabling-push-protection-for-your-repository.md +++ b/content/code-security/secret-scanning/enabling-secret-scanning-features/enabling-push-protection-for-your-repository.md @@ -36,7 +36,7 @@ If you're an organization owner, you can enable push protection for multiple rep Organization owners, security managers, and repository administrators can also enable push protection for {% data variables.product.prodname_secret_scanning %} via the API. For more information, see [AUTOTITLE](/rest/repos#update-a-repository) and expand the "Properties of the `security_and_analysis` object" section. -{% ifversion secret-scanning-enterprise-level %} +{% ifversion ghec or ghes %} If your organization is owned by an enterprise account, an enterprise owner can also enable push protection at the enterprise level. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise). diff --git a/content/code-security/secret-scanning/introduction/about-secret-scanning-for-partners.md b/content/code-security/secret-scanning/introduction/about-secret-scanning-for-partners.md index 8271671fc816..37ba00c73e4c 100644 --- a/content/code-security/secret-scanning/introduction/about-secret-scanning-for-partners.md +++ b/content/code-security/secret-scanning/introduction/about-secret-scanning-for-partners.md @@ -14,7 +14,7 @@ shortTitle: Secret scanning for partners ## About {% data variables.secret-scanning.partner_alerts %} -{% data variables.product.product_name %} scans public repositories and public npm packages for secrets issued by specific service providers who joined our partnership program, and alerts the relevant service provider whenever a secret is detected in a commit. The service provider validates the string and then decides whether they should revoke the secret, issue a new secret, or contact you directly. Their action will depend on the associated risks to you or them. {% data reusables.secret-scanning.partner-program-link %} +{% data variables.product.github %} scans public repositories and public npm packages for secrets issued by specific service providers who joined our partnership program, and alerts the relevant service provider whenever a secret is detected in a commit. The service provider validates the string and then decides whether they should revoke the secret, issue a new secret, or contact you directly. Their action will depend on the associated risks to you or them. {% data reusables.secret-scanning.partner-program-link %} > [!NOTE]You cannot change the configuration of {% data variables.product.prodname_secret_scanning %} for partner patterns on public repositories. diff --git a/content/code-security/secret-scanning/introduction/about-secret-scanning.md b/content/code-security/secret-scanning/introduction/about-secret-scanning.md index 81c8845c2ef4..c5a60db5f6b8 100644 --- a/content/code-security/secret-scanning/introduction/about-secret-scanning.md +++ b/content/code-security/secret-scanning/introduction/about-secret-scanning.md @@ -1,6 +1,6 @@ --- title: About secret scanning -intro: '{% data variables.product.product_name %} scans repositories for known types of secrets, to prevent fraudulent use of secrets that were committed accidentally.' +intro: '{% data variables.product.github %} scans repositories for known types of secrets, to prevent fraudulent use of secrets that were committed accidentally.' product: '{% data reusables.gated-features.secret-scanning %}' redirect_from: - /github/administering-a-repository/about-token-scanning @@ -28,7 +28,7 @@ shortTitle: Secret scanning {% data reusables.secret-scanning.what-is-scanned %} -When a supported secret is leaked, {% data variables.product.product_name %} generates a {% data variables.product.prodname_secret_scanning %} alert. Alerts are reported on the **Security** tab of repositories on {% data variables.product.product_name %}, where you can view, evaluate, and resolve them. For more information, see [AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning). +When a supported secret is leaked, {% data variables.product.github %} generates a {% data variables.product.prodname_secret_scanning %} alert. Alerts are reported on the **Security** tab of repositories on {% data variables.product.github %}, where you can view, evaluate, and resolve them. For more information, see [AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning). {% ifversion fpt or ghec %}Service providers can partner with {% data variables.product.company_short %} to provide their secret formats for scanning. We automatically run {% data variables.product.prodname_secret_scanning %} for partner patterns on all public repositories and public npm packages.{% data reusables.secret-scanning.partner-program-link %} diff --git a/content/code-security/secret-scanning/managing-alerts-from-secret-scanning/monitoring-alerts.md b/content/code-security/secret-scanning/managing-alerts-from-secret-scanning/monitoring-alerts.md index e3127cbdcef7..8e5b67b17933 100644 --- a/content/code-security/secret-scanning/managing-alerts-from-secret-scanning/monitoring-alerts.md +++ b/content/code-security/secret-scanning/managing-alerts-from-secret-scanning/monitoring-alerts.md @@ -1,6 +1,6 @@ --- title: Monitoring alerts from secret scanning -intro: 'Learn how and when {% data variables.product.product_name %} will notify you about a secret scanning alert.' +intro: 'Learn how and when {% data variables.product.github %} will notify you about a secret scanning alert.' permissions: '{% data reusables.permissions.secret-scanning-alerts %}' versions: fpt: '*' @@ -18,7 +18,7 @@ allowTitleToDifferFromFilename: true ## Configuring notifications for {% data variables.secret-scanning.alerts %} -In addition to displaying an alert in the **Security** tab of the repository, {% data variables.product.product_name %} can also send email notifications for alerts. These notifications are different for incremental scans and historical scans. +In addition to displaying an alert in the **Security** tab of the repository, {% data variables.product.github %} can also send email notifications for alerts. These notifications are different for incremental scans and historical scans. ### Incremental scans @@ -34,13 +34,13 @@ In addition to displaying an alert in the **Security** tab of the repository, {% 1. On your notification settings page, under "Subscriptions", then under "Watching", select the **Notify me** dropdown. 1. Select "Email" as a notification option, then click **Save**. - ![Screenshot of the notification settings for a user account. An element header, titled "Subscriptions", and a sub-header, titled "Watching", are shown. A checkbox, titled "Email", is highlighted with an orange outline.](/assets/images/help/notifications/repository-watching-notification-options.png) + ![Screenshot of the notification settings for a user account. Under "Subscriptions" and "Watching" a checkbox, titled "Email", is outlined in orange.](/assets/images/help/notifications/repository-watching-notification-options.png) {% data reusables.notifications.watch-settings %} ### Historical scans -For historical scans, {% data variables.product.product_name %} notifies the following users: +For historical scans, {% data variables.product.github %} notifies the following users: * Organization owners, enterprise owners, and security managers—whenever a historical scan is complete, even if no secrets are found. * Repository administrators, security managers, and users with custom roles with read/write access—whenever a historical scan detects a secret, and according to their notification preferences. diff --git a/content/code-security/secret-scanning/secret-scanning-partnership-program/secret-scanning-partner-program.md b/content/code-security/secret-scanning/secret-scanning-partnership-program/secret-scanning-partner-program.md index bc3c3897c756..6933f6e551f4 100644 --- a/content/code-security/secret-scanning/secret-scanning-partnership-program/secret-scanning-partner-program.md +++ b/content/code-security/secret-scanning/secret-scanning-partnership-program/secret-scanning-partner-program.md @@ -56,7 +56,7 @@ To scan for your secrets, {% data variables.product.prodname_dotcom %} needs the * High entropy random strings * A 32-bit checksum - ![Screenshot showing the breakdown of a secret into details to be considered when submitting to GitHub a regular expression to find high quality secrets.](/assets/images/help/security/regular-expression-guidance.png) + ![Screenshot showing the breakdown of a secret into a prefix and a 32-bit checksum.](/assets/images/help/security/regular-expression-guidance.png) * A test account for your service. This will allow us to generate and analyze examples of the secrets, further reducing false positives. * The URL of the endpoint that receives messages from {% data variables.product.prodname_dotcom %}. The URL doesn't have to be unique for each secret type. diff --git a/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning.md b/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning.md index e9754d5cf903..afe695d59e5c 100644 --- a/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning.md +++ b/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning.md @@ -60,10 +60,9 @@ Before defining a custom pattern, you must ensure that {% data variables.product {% data reusables.repositories.navigate-to-code-security-and-analysis %} {% data reusables.repositories.navigate-to-ghas-settings %} {% data reusables.advanced-security.secret-scanning-new-custom-pattern %} -{% data reusables.advanced-security.secret-scanning-add-custom-pattern-details %}{% ifversion custom-pattern-dry-run-ga %} +{% data reusables.advanced-security.secret-scanning-add-custom-pattern-details %} 1. When you're ready to test your new custom pattern, to identify matches in the repository without creating alerts, click **Save and dry run**. {% data reusables.advanced-security.secret-scanning-dry-run-results %} -{% endif %} {% data reusables.advanced-security.secret-scanning-create-custom-pattern %}{% ifversion secret-scanning-push-protection-custom-patterns %} 1. Optionally, to enable push protection for your custom pattern, click **Enable**. @@ -121,11 +120,9 @@ To enable {% data variables.product.prodname_secret_scanning %} on all repositor {% endif %} {% data reusables.advanced-security.secret-scanning-new-custom-pattern-org %} {% data reusables.advanced-security.secret-scanning-add-custom-pattern-details %} -{%- ifversion custom-pattern-dry-run-ga %} 1. When you're ready to test your new custom pattern, to identify matches in select repositories without creating alerts, click **Save and dry run**. {% data reusables.advanced-security.secret-scanning-dry-run-select-repos %} {% data reusables.advanced-security.secret-scanning-dry-run-results %} -{%- endif %} {% data reusables.advanced-security.secret-scanning-create-custom-pattern %}{% ifversion secret-scanning-push-protection-custom-patterns %} 1. Optionally, to enable push protection for your custom pattern, click **Enable**. For more information, see [AUTOTITLE](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#enabling-secret-scanning-as-a-push-protection-in-an-organization-for-a-custom-pattern). @@ -135,25 +132,21 @@ After your pattern is created, {% data variables.product.prodname_secret_scannin ## Defining a custom pattern for an enterprise account -Before defining a custom pattern, you must ensure that you enable secret scanning for your enterprise account. For more information, see "[Enabling {% data variables.product.prodname_GH_advanced_security %} for your enterprise]({% ifversion fpt or ghec %}/enterprise-server@latest/{% endif %}/admin/advanced-security/enabling-github-advanced-security-for-your-enterprise)." +Before defining a custom pattern, you must ensure that you enable secret scanning for your enterprise account. For more information, see [AUTOTITLE]({% ifversion fpt or ghec %}/enterprise-server@latest/{% endif %}/admin/advanced-security/enabling-github-advanced-security-for-your-enterprise). > [!NOTE] > * At the enterprise level, only the creator of a custom pattern can edit the pattern, and use it in a dry run. > * {% data reusables.secret-scanning.dry-runs-enterprise-permissions %} {% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %}{% ifversion security-feature-enablement-policies %} +{% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.code-security-and-analysis-policies %} -1. Under "{% ifversion code-security-wording-only-enterprise %}Code security{% else %}Code security and analysis{% endif %}", click **Security features**.{% else %} -{% data reusables.enterprise-accounts.advanced-security-policies %} -{% data reusables.enterprise-accounts.advanced-security-security-features %}{% endif %} +1. Under "{% ifversion code-security-wording-only-enterprise %}Code security{% else %}Code security and analysis{% endif %}", click **Security features**. 1. Under "Secret scanning custom patterns", click **New pattern**. {% data reusables.advanced-security.secret-scanning-add-custom-pattern-details %} -{%- ifversion custom-pattern-dry-run-ga %} 1. When you're ready to test your new custom pattern, to identify matches in the enterprise without creating alerts, click **Save and dry run**. {% data reusables.advanced-security.secret-scanning-dry-run-select-enterprise-repos %} {% data reusables.advanced-security.secret-scanning-dry-run-results %} -{%- endif %} {% data reusables.advanced-security.secret-scanning-create-custom-pattern %}{% ifversion secret-scanning-push-protection-custom-patterns %} 1. Optionally, to enable push protection for your custom pattern, click **Enable**. For more information, see [AUTOTITLE](/code-security/secret-scanning/protecting-pushes-with-secret-scanning). {% indented_data_reference reusables.secret-scanning.push-protection-enterprise-note spaces=3 %}{% endif %} diff --git a/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/managing-custom-patterns.md b/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/managing-custom-patterns.md index cc38eabaaa26..78aff4306bc2 100644 --- a/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/managing-custom-patterns.md +++ b/content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/managing-custom-patterns.md @@ -22,9 +22,7 @@ When you save a change to a custom pattern, this closes all the {% data variable {% data reusables.secret-scanning.view-custom-pattern %} 1. Under "{% data variables.product.prodname_secret_scanning_caps %}", to the right of the custom pattern you want to edit, click {% octicon "pencil" aria-label="Edit pattern" %}. -{%- ifversion custom-pattern-dry-run-ga %} 1. When you're ready to test your edited custom pattern, to identify matches without creating alerts, click **Save and dry run**. -{%- endif %} 1. When you have reviewed and tested your changes, click **Publish changes**.{% ifversion secret-scanning-push-protection-custom-patterns %} {% data reusables.advanced-security.secret-scanning-enable-push-protection-custom-pattern %} 1. Optionally, to disable push protection for your custom pattern, click **Disable**. @@ -52,19 +50,15 @@ You can enable {% data variables.product.prodname_secret_scanning %} as a push p {% data reusables.secret-scanning.push-protection-enterprise-note %} -Before enabling push protection for a custom pattern at enterprise level, you must also{% ifversion custom-pattern-dry-run-ga %} test your custom patterns using dry runs. {% data reusables.secret-scanning.dry-runs-enterprise-permissions %}{% else %} test your custom patterns in a repository before defining them for your entire enterprise, as there is no dry-run functionality. That way, you can avoid creating excess false-positive {% data variables.secret-scanning.alerts %}.{% endif %} +Before enabling push protection for a custom pattern at enterprise level, you must also test your custom patterns using dry runs. {% data reusables.secret-scanning.dry-runs-enterprise-permissions %} {% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %}{% ifversion security-feature-enablement-policies %} +{% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.code-security-and-analysis-policies %} -1. Under "{% ifversion code-security-wording-only-enterprise %}Code security{% else %}Code security and analysis{% endif %}", click **Security features**.{% else %} -{% data reusables.enterprise-accounts.advanced-security-policies %} -{% data reusables.enterprise-accounts.advanced-security-security-features %}{% endif %} +1. Under "{% ifversion code-security-wording-only-enterprise %}Code security{% else %}Code security and analysis{% endif %}", click **Security features**. {% data reusables.advanced-security.secret-scanning-edit-custom-pattern %} - {% ifversion custom-pattern-dry-run-ga %} >[!NOTE] At the enterprise level, you can only edit and enable push protection for custom patterns that you created. - {%- endif %} 1. To enable push protection for your custom pattern, scroll down to "Push Protection", and click **Enable**. diff --git a/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/push-protection-for-users.md b/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/push-protection-for-users.md index fc1e8b6f18ad..d7c939c5ce9a 100644 --- a/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/push-protection-for-users.md +++ b/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/push-protection-for-users.md @@ -1,6 +1,6 @@ --- title: Push protection for users -intro: 'With push protection for users, you are automatically protected on all pushes to public repositories across {% data variables.product.product_name %}.' +intro: 'With push protection for users, you are automatically protected on all pushes to public repositories across {% data variables.product.github %}.' versions: feature: secret-scanning-push-protection-for-users product: '{% data reusables.gated-features.push-protection-for-users %}' @@ -16,15 +16,15 @@ redirect_from: ## About push protection for users -Push protection for users automatically protects you from accidentally committing secrets to public repositories across {% data variables.product.product_name %}. +Push protection for users automatically protects you from accidentally committing secrets to public repositories across {% data variables.product.github %}. -When you try to push a secret to a public repository, {% data variables.product.prodname_dotcom %} blocks the push. If you believe it's safe to allow the secret, you have the option to bypass the block. Otherwise, you must remove the secret from the commit before pushing again. For more information on how to resolve a blocked push, see [AUTOTITLE](/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-in-the-github-ui) or [AUTOTITLE](/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-from-the-command-line), depending on whether you use the {% data variables.product.product_name %} UI or the command line. +When you try to push a secret to a public repository, {% data variables.product.github %} blocks the push. If you believe it's safe to allow the secret, you have the option to bypass the block. Otherwise, you must remove the secret from the commit before pushing again. For more information on how to resolve a blocked push, see [AUTOTITLE](/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-in-the-github-ui) or [AUTOTITLE](/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-from-the-command-line), depending on whether you use the {% data variables.product.github %} UI or the command line. Push protection for users is always on by default. You can disable the feature at any time through your personal account settings. This may cause secrets to be accidentally leaked. For more information, see [Disabling push protection for users](#disabling-push-protection-for-users). Push protection for users is different from _push protection for repositories and organizations_, which is a {% data variables.product.prodname_secret_scanning %} feature that must be enabled by a repository administrator or organization owner. With push protection for repositories and organizations, {% data variables.product.prodname_secret_scanning %} blocks contributors from pushing secrets to a repository and generates an alert whenever a contributor bypasses the protection. For more information, see [AUTOTITLE](/code-security/secret-scanning/introduction/about-push-protection). -With push protection for users, {% data variables.product.prodname_dotcom %} won't create an alert when you bypass the protection and push a secret to a public repository, unless the repository itself has {% data variables.product.prodname_secret_scanning %} enabled. However, if the bypassed secret is a {% data variables.product.prodname_dotcom %} token, the token will be revoked and you will be notified by email. +With push protection for users, {% data variables.product.github %} won't create an alert when you bypass the protection and push a secret to a public repository, unless the repository itself has {% data variables.product.prodname_secret_scanning %} enabled. However, if the bypassed secret is a {% data variables.product.github %} token, the token will be revoked and you will be notified by email. For information on the secrets and service providers supported for push protection, see [AUTOTITLE](/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets). diff --git a/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-from-the-command-line.md b/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-from-the-command-line.md index 263613fa7d8b..f883766e2a46 100644 --- a/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-from-the-command-line.md +++ b/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-from-the-command-line.md @@ -24,7 +24,7 @@ When you attempt to push a supported secret from the command line to a repositor You should either: * **Remove** the secret from your branch. For more information, see [Resolving a blocked push](#resolving-a-blocked-push). -* **Follow a provided URL** {% ifversion push-protection-delegated-bypass %}to see what options are available to you{% endif %} to allow the push. For more information, see "[Bypassing push protection](#bypassing-push-protection){% ifversion push-protection-delegated-bypass %}" and [Requesting bypass privileges](#requesting-bypass-privileges){% endif %}. +* **Follow a provided URL** {% ifversion push-protection-delegated-bypass %}to see what options are available to you{% endif %} to allow the push. For more information, see [Bypassing push protection](#bypassing-push-protection){% ifversion push-protection-delegated-bypass %} and [Requesting bypass privileges](#requesting-bypass-privileges){% endif %}. 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. diff --git a/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-in-the-github-ui.md b/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-in-the-github-ui.md index 8e5800ccc6e7..fccb30f49359 100644 --- a/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-in-the-github-ui.md +++ b/content/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-in-the-github-ui.md @@ -30,7 +30,7 @@ When you {% ifversion push-protection-delegated-bypass-file-upload-support %}upl You should either: * **Remove** the secret from the commit. For more information, see [Resolving a blocked commit](#resolving-a-blocked-commit). -* **Review** the instructions in the dialog box {% ifversion push-protection-delegated-bypass %}to see what options are available to you{% endif %} to allow the push. For more information, see "[Bypassing push protection](#bypassing-push-protection){% ifversion push-protection-delegated-bypass %}" and [Requesting bypass privileges](#requesting-bypass-privileges){% endif %}. +* **Review** the instructions in the dialog box {% ifversion push-protection-delegated-bypass %}to see what options are available to you{% endif %} to allow the push. For more information, see [Bypassing push protection](#bypassing-push-protection){% ifversion push-protection-delegated-bypass %} and [Requesting bypass privileges](#requesting-bypass-privileges){% endif %}. {% 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. diff --git a/content/code-security/securing-your-organization/enabling-security-features-in-your-organization/giving-org-access-private-registries.md b/content/code-security/securing-your-organization/enabling-security-features-in-your-organization/giving-org-access-private-registries.md index 06b84837ada6..085b33414bdb 100644 --- a/content/code-security/securing-your-organization/enabling-security-features-in-your-organization/giving-org-access-private-registries.md +++ b/content/code-security/securing-your-organization/enabling-security-features-in-your-organization/giving-org-access-private-registries.md @@ -49,7 +49,7 @@ When you enable {% data variables.product.prodname_code_scanning %} default setu When configuring private registries for the first time, you need to disable and re-enable {% data variables.product.prodname_code_scanning %} default setup for any repositories that you want to use the new definition. New or modified configurations will be automatically picked up on subsequent runs. -You can confirm whether private registries were used successfully by {% data variables.product.prodname_code_scanning %} analysis by looking in the Actions log files, see "[Determining whether code scanning default setup used any private registries](/code-security/code-scanning/managing-your-code-scanning-configuration/viewing-code-scanning-logs#determining-whether-code-scanning-default-setup-used-any-private-registries)." +You can confirm whether private registries were used successfully by {% data variables.product.prodname_code_scanning %} analysis by looking in the Actions log files, see [Determining whether code scanning default setup used any private registries](/code-security/code-scanning/managing-your-code-scanning-configuration/viewing-code-scanning-logs#determining-whether-code-scanning-default-setup-used-any-private-registries). ## {% data variables.product.prodname_code_scanning_caps %} advanced setup access to private registries diff --git a/content/code-security/securing-your-organization/managing-the-security-of-your-organization/interpreting-security-findings.md b/content/code-security/securing-your-organization/managing-the-security-of-your-organization/interpreting-security-findings.md index 802e26d13f1f..517d97791f6b 100644 --- a/content/code-security/securing-your-organization/managing-the-security-of-your-organization/interpreting-security-findings.md +++ b/content/code-security/securing-your-organization/managing-the-security-of-your-organization/interpreting-security-findings.md @@ -43,7 +43,7 @@ To best secure your organization, you should encourage contributors to review an {% data reusables.security-configurations.secret-scanning-security-configs-summary %} {% ifversion fpt or ghec %}There are two types of {% data variables.product.prodname_secret_scanning %} alerts: * {% data variables.secret-scanning.partner_alerts_caps %}, which are sent to the provider who issued the secret -* {% data variables.secret-scanning.user_alerts_caps %}, which appear on {% data variables.product.product_name %} and can be resolved +* {% data variables.secret-scanning.user_alerts_caps %}, which appear on {% data variables.product.github %} and can be resolved {% endif %} You can view {% data variables.product.prodname_secret_scanning %} alerts for an organization by navigating to the main page of that organization, clicking the **{% octicon "shield" aria-hidden="true" %} Security** tab, then clicking **{% octicon "key" aria-hidden="true" %} {% data variables.product.prodname_secret_scanning_caps %}**. diff --git a/content/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities/best-practices-for-writing-repository-security-advisories.md b/content/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities/best-practices-for-writing-repository-security-advisories.md index 07b7ede2b10f..2a954fc9a5e5 100644 --- a/content/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities/best-practices-for-writing-repository-security-advisories.md +++ b/content/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities/best-practices-for-writing-repository-security-advisories.md @@ -105,7 +105,7 @@ For examples showing how affected versions are defined in some existing advisori * You cannot specify multiple affected version ranges in the same field, such as `> 2.0, < 2.3, > 3.0, < 3.2`.To specify more than one range, you must create a new **Affected products** section for each range, by clicking the **+ Add another affected product** button. - ![Screenshot of the "Affected products" area of the security advisory form. A link, labeled "Add another affected product", is highlighted with a dark orange outline.](/assets/images/help/security/security-advisory-add-another-affected-product.png) + ![Screenshot of the "Affected products" area of the security advisory form. The "Add another affected product" link is outlined in dark orange.](/assets/images/help/security/security-advisory-add-another-affected-product.png) * If the affected version range includes only a single upper or lower bound: * The implicit value is always `> 0` if the lower bound is not explicitly specified. * The implicit value is always infinity if the upper bound is not explicitly specified. diff --git a/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/browsing-security-advisories-in-the-github-advisory-database.md b/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/browsing-security-advisories-in-the-github-advisory-database.md index c885dec67558..a210700e6267 100644 --- a/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/browsing-security-advisories-in-the-github-advisory-database.md +++ b/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/browsing-security-advisories-in-the-github-advisory-database.md @@ -85,7 +85,7 @@ For any {% data variables.product.company_short %}-reviewed advisory in the {% d 1. Optionally, to filter the list, use the search bar or the drop-down menus. The "Organization" drop-down menu allows you to filter the {% data variables.product.prodname_dependabot_alerts %} per owner (organization or user). 1. For more details about the advisory, and for advice on how to fix the vulnerable repository, click the repository name. -{% ifversion security-advisories-ghes %} +{% ifversion ghes %} ## Accessing the local advisory database on {% data variables.product.prodname_ghe_server %} diff --git a/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/editing-security-advisories-in-the-github-advisory-database.md b/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/editing-security-advisories-in-the-github-advisory-database.md index d69f059b8582..61c83d54c8a8 100644 --- a/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/editing-security-advisories-in-the-github-advisory-database.md +++ b/content/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/editing-security-advisories-in-the-github-advisory-database.md @@ -42,7 +42,7 @@ Only repository owners and administrators can edit repository-level security adv You can also open a pull request directly on an advisory file in the [github/advisory-database](https://github.com/github/advisory-database) repository. For more information, see the [contribution guidelines](https://github.com/github/advisory-database/blob/main/CONTRIBUTING.md). -{% ifversion security-advisories-ghes %} +{% ifversion ghes %} ## Editing advisories from {% data variables.product.prodname_ghe_server %} diff --git a/content/code-security/security-advisories/working-with-repository-security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-repository-security-vulnerability.md b/content/code-security/security-advisories/working-with-repository-security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-repository-security-vulnerability.md index 73209edaab0e..346e0f8d1503 100644 --- a/content/code-security/security-advisories/working-with-repository-security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-repository-security-vulnerability.md +++ b/content/code-security/security-advisories/working-with-repository-security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-repository-security-vulnerability.md @@ -37,7 +37,7 @@ To keep information about vulnerabilities secure, integrations, including CI, ca 1. In the "Security Advisories" list, click the name of the security advisory you'd like to create a temporary private fork in. 1. Scroll to the bottom of the advisory form and click **Start a temporary private fork**. - ![Screenshot of the "Collaborate on a patch in private" area of the form. A button, labeled "Start a temporary private fork", is outlined in dark orange.](/assets/images/help/security/new-temporary-private-fork-button.png) + ![Screenshot of the "Collaborate on a patch in private" area of the form. The "Start a temporary private fork" button is outlined in dark orange.](/assets/images/help/security/new-temporary-private-fork-button.png) A private fork of the repository is created and shown on the advisory page. @@ -64,8 +64,8 @@ Anyone with write permissions to a security advisory can collaborate on a patch {% data reusables.repositories.sidebar-security %} {% data reusables.repositories.sidebar-advisories %} 1. In the "Security Advisories" list, click the name of the security advisory you'd like to work on. -1. You can make your changes on {% data variables.product.product_name %} or locally: - * To make your changes on {% data variables.product.product_name %}, under "Collaborate on a patch", click **the temporary private fork**. Then, create a new branch and edit files. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository) and [AUTOTITLE](/repositories/working-with-files/managing-files/editing-files). +1. You can make your changes on {% data variables.product.github %} or locally: + * To make your changes on {% data variables.product.github %}, under "Collaborate on a patch", click **the temporary private fork**. Then, create a new branch and edit files. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository) and [AUTOTITLE](/repositories/working-with-files/managing-files/editing-files). * To add changes locally, follow the instructions under "Clone and create a new branch" and "Make your changes, then push." ![Screenshot of the "Collaborate on a patch" area of a draft security advisory. The "the temporary private fork" link is outlined in dark orange.](/assets/images/help/security/add-changes-to-this-advisory-box.png) diff --git a/content/code-security/security-advisories/working-with-repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository.md b/content/code-security/security-advisories/working-with-repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository.md index 2efc801f8346..9ca8aa908e23 100644 --- a/content/code-security/security-advisories/working-with-repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository.md +++ b/content/code-security/security-advisories/working-with-repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository.md @@ -31,7 +31,7 @@ The instructions in this article refer to enablement at repository level. For in {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-code-security-and-analysis %} 1. Under "Code security and analysis", to the right of "Private vulnerability reporting", click **Enable** or **Disable**, to enable or disable the feature, respectively. - ![Screenshot of the "Code security and analysis" page, showing the "Private vulnerability reporting" setting. The "Enable" button is outlined in dark orange.](/assets/images/help/security/private-vulnerability-reporting-enable-or-disable-repo.png) + ![Screenshot of the "Code security and analysis" page, showing the "Private vulnerability reporting" setting. The "Enable" button is outlined in orange.](/assets/images/help/security/private-vulnerability-reporting-enable-or-disable-repo.png) {% data reusables.security-advisory.private-vulnerability-reporting-security-researcher %} @@ -56,6 +56,6 @@ Notifications depend on the user's notification preferences. You will receive an 1. On your notification settings page, under "Subscriptions," then under "Watching," select the **Notify me** dropdown. 1. Select "Email" as a notification option, then click **Save**. - ![Screenshot of the notification settings for a user account. An element header, titled "Subscriptions", and a sub-header, titled "Watching", are shown. A checkbox, titled "Email", is highlighted with an orange outline.](/assets/images/help/notifications/repository-watching-notification-options.png) + ![Screenshot of the notification settings for a user account. Under "Subscriptions" and "Watching" a checkbox, titled "Email", is outlined in orange.](/assets/images/help/notifications/repository-watching-notification-options.png) {% data reusables.notifications.watch-settings %} diff --git a/content/code-security/security-advisories/working-with-repository-security-advisories/publishing-a-repository-security-advisory.md b/content/code-security/security-advisories/working-with-repository-security-advisories/publishing-a-repository-security-advisory.md index 85cb3644b3ee..caf4726b7ea6 100644 --- a/content/code-security/security-advisories/working-with-repository-security-advisories/publishing-a-repository-security-advisory.md +++ b/content/code-security/security-advisories/working-with-repository-security-advisories/publishing-a-repository-security-advisory.md @@ -70,7 +70,7 @@ Publishing a security advisory deletes the temporary private fork for the securi 1. In the "Security Advisories" list, click the name of the security advisory you'd like to publish. 1. Scroll to the bottom of the advisory form and click **Publish advisory**. - ![Screenshot of the "Required advisory information has been provided" area of a draft security advisory. The "Publish advisory" button is outlined in dark orange.](/assets/images/help/security/publish-advisory-button.png) + ![Screenshot of the "Required advisory information has been provided" area of the page. The "Publish advisory" button is outlined in orange.](/assets/images/help/security/publish-advisory-button.png) > [!NOTE] > If you selected "Request CVE ID later", you will see a **Request CVE** button in place of the **Publish advisory** button. For more information, see [Requesting a CVE identification number (Optional)](#requesting-a-cve-identification-number-optional) below. @@ -89,7 +89,7 @@ Publishing a security advisory deletes the temporary private fork for the securi 1. In the "Security Advisories" list, click the name of the security advisory you'd like to request a CVE identification number for. 1. Scroll to the bottom of the advisory form and click **Request CVE**. - ![Screenshot of the "Required advisory information has been provided" area of a draft security advisory. The "Request CVE" button is outlined in dark orange.](/assets/images/help/security/security-advisory-request-cve-button.png) + ![Screenshot of the "Required advisory information has been provided" area of the page. The "Request CVE" button is outlined in dark orange.](/assets/images/help/security/security-advisory-request-cve-button.png) ## Further reading diff --git a/content/code-security/security-overview/assessing-adoption-code-security.md b/content/code-security/security-overview/assessing-adoption-code-security.md index 108479724e07..6a181e20a5b0 100644 --- a/content/code-security/security-overview/assessing-adoption-code-security.md +++ b/content/code-security/security-overview/assessing-adoption-code-security.md @@ -12,7 +12,8 @@ topics: - Organizations - Teams versions: - feature: security-overview-org-risk-coverage + ghes: '*' + ghec: '*' --- {% data reusables.security-overview.beta-org-risk-coverage %} @@ -31,7 +32,7 @@ You can download a CSV file of the data displayed on the "Security coverage" pag {% ifversion security-overview-tool-adoption %} -You can use the "Enablement trends" view to see enablement status and enablement status trends over time for {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_code_scanning %}, or {% data variables.product.prodname_secret_scanning %} for repositories in an organization{% ifversion security-overview-enterprise-enablement-report %}, or across organizations in an enterprise{% endif %}. For each of these features, you can view a graph visualizing the percentage of repositories that have the feature enabled, as well as a detailed table with enablement percentages for different points in time. For more information, see "[Viewing enablement trends for an organization](#viewing-enablement-trends-for-an-organization){% ifversion security-overview-enterprise-enablement-report %}" and [Viewing enablement trends for an enterprise](#viewing-enablement-trends-for-an-enterprise){% endif %}. +You can use the "Enablement trends" view to see enablement status and enablement status trends over time for {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_code_scanning %}, or {% data variables.product.prodname_secret_scanning %} for repositories in an organization{% ifversion security-overview-enterprise-enablement-report %}, or across organizations in an enterprise{% endif %}. For each of these features, you can view a graph visualizing the percentage of repositories that have the feature enabled, as well as a detailed table with enablement percentages for different points in time. For more information, see [Viewing enablement trends for an organization](#viewing-enablement-trends-for-an-organization){% ifversion security-overview-enterprise-enablement-report %} and [Viewing enablement trends for an enterprise](#viewing-enablement-trends-for-an-enterprise){% endif %}. {% endif %} diff --git a/content/code-security/security-overview/exporting-data-from-security-overview.md b/content/code-security/security-overview/exporting-data-from-security-overview.md index e20e40dc8c1b..f40d9d8eb7a9 100644 --- a/content/code-security/security-overview/exporting-data-from-security-overview.md +++ b/content/code-security/security-overview/exporting-data-from-security-overview.md @@ -35,7 +35,7 @@ The CSV file you download will contain data corresponding to the filters you hav 1. In the "Security" sidebar, choose the page that you want to export data from by clicking on **{% octicon "graph" aria-hidden="true" %}Overview**, **{% octicon "meter" aria-hidden="true" %} Coverage**, **{% octicon "shield" aria-hidden="true" %} Risk** or **{% octicon "graph" aria-hidden="true" %} {% data variables.product.prodname_codeql %} pull request alerts**. 1. Next to the search bar, click **{% octicon "download" aria-hidden="true" %} Export CSV**. - It may take a moment for {% data variables.product.product_name %} to generate the CSV file of your data. Once the CSV file generates, the file will automatically start downloading, and a banner will appear confirming your report is ready. If you are downloading the CSV from the overview page, you will also receive an email when your report is ready, containing a link to download the CSV. + It may take a moment for {% data variables.product.github %} to generate the CSV file of your data. Once the CSV file generates, the file will automatically start downloading, and a banner will appear confirming your report is ready. If you are downloading the CSV from the overview page, you will also receive an email when your report is ready, containing a link to download the CSV. {% ifversion secret-scanning-non-provider-patterns %} @@ -51,4 +51,4 @@ The CSV file you download will contain data corresponding to the filters you hav 1. Choose the page that you want to export data from by clicking on **Overview**, **Risk**, or **Coverage**. 1. Next to the search bar, click {% octicon "download" aria-hidden="true" %} **Export CSV**. - It may take a moment for {% data variables.product.product_name %} to generate the CSV file of your data. Once the CSV file generates, the file will automatically start downloading, and a banner will appear confirming your report is ready. If you are downloading the CSV from the overview page, you will also receive an email when your report is ready, containing a link to download the CSV. + It may take a moment for {% data variables.product.github %} to generate the CSV file of your data. Once the CSV file generates, the file will automatically start downloading, and a banner will appear confirming your report is ready. If you are downloading the CSV from the overview page, you will also receive an email when your report is ready, containing a link to download the CSV. diff --git a/content/code-security/security-overview/filtering-alerts-in-security-overview.md b/content/code-security/security-overview/filtering-alerts-in-security-overview.md index bc22de44757f..999140b6da57 100644 --- a/content/code-security/security-overview/filtering-alerts-in-security-overview.md +++ b/content/code-security/security-overview/filtering-alerts-in-security-overview.md @@ -65,7 +65,7 @@ These qualifiers are available in all views. | Qualifier | Description | |--------|--------| -| `team` | Display data for all repositories that the specified team has {% ifversion security-overview-team-write-access -%} write access or {% endif -%} admin access to. For more information on repository roles, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization). | +| `team` | Display data for all repositories that the specified team has write access or admin access to. For more information on repository roles, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization). | | `topic` | Display data for all repositories that are classified with a specific topic. For more information on repository topics, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics). | {% ifversion security-overview-repository-properties %} @@ -97,7 +97,7 @@ In enterprise-level views, you can limit the data to repositories owned by a sin | {% endif %} | | `org` | Display data for repositories owned by one organization. | {% data variables.product.prodname_dependabot_alerts %} and {% data variables.product.prodname_code_scanning %} alerts | -{% elsif security-overview-org-risk-coverage-enterprise %} +{% else %} In enterprise-level views, you can limit the data to repositories owned by a single organization in your enterprise. Use the `org` qualifier to display data for repositories owned by one organization. @@ -126,21 +126,9 @@ In the "Risk" and "Coverage" views, you can show data only for repositories wher | `dependabot-security-updates` | Display data for repositories where {% data variables.product.prodname_dependabot_security_updates %} is enabled or not enabled. | | `secret-scanning-push-protection` | Display data for repositories where push protection for {% data variables.product.prodname_secret_scanning %} is enabled or not enabled. | -{% ifversion security-overview-org-risk-coverage-enterprise %}{% else %} - -## Repository risk-level filtering - -The level of risk for a repository is determined by the number and severity of alerts from security features. You can filter on the level of risk using the `risk` qualifier. - -* The level of risk can be one of `high`, `medium`, or `low`. -* If one or more security features are not enabled for a repository, the repository has an `unknown` level of risk. -* If all security features are enabled and no alerts are report, the repository has a `clear` level of risk. - -{% endif %} - ## Alert number filters -{% ifversion security-overview-org-risk-coverage-enterprise %}In the "Risk" view, you can filter repositories by the number of alerts they have of a specific type.{% else %}These qualifiers are available in the enterprise-level "Overview" and in the organization-level "Security risk" view.{% endif %} +In the "Risk" view, you can filter repositories by the number of alerts they have of a specific type. | Qualifier | Description | | -------- | -------- | diff --git a/content/code-security/supply-chain-security/end-to-end-supply-chain/end-to-end-supply-chain-overview.md b/content/code-security/supply-chain-security/end-to-end-supply-chain/end-to-end-supply-chain-overview.md index c93a1965676a..98c3861e225d 100644 --- a/content/code-security/supply-chain-security/end-to-end-supply-chain/end-to-end-supply-chain-overview.md +++ b/content/code-security/supply-chain-security/end-to-end-supply-chain/end-to-end-supply-chain-overview.md @@ -23,7 +23,7 @@ For information about features in {% data variables.product.prodname_dotcom %} t ## About these guides -This series of guides explains how to think about securing your end-to-end supply chain: personal account, code, and build processes. Each guide explains the risk to that area, and introduces the {% data variables.product.product_name %} features that can help you address that risk. +This series of guides explains how to think about securing your end-to-end supply chain: personal account, code, and build processes. Each guide explains the risk to that area, and introduces the {% data variables.product.github %} features that can help you address that risk. Everyone's needs are different, so each guide starts with the highest impact change, and continues from there with additional improvements you should consider. You should feel free to skip around and focus on improvements you think will have the biggest benefit. The goal isn't to do everything at once but to continuously improve security in your systems over time. diff --git a/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-accounts.md b/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-accounts.md index c41d771afd02..cadb8c126ebd 100644 --- a/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-accounts.md +++ b/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-accounts.md @@ -21,7 +21,7 @@ This guide describes the highest impact changes you can make to increase account ## What's the risk? -Account security is fundamental to the security of your supply chain. If an attacker can take over your account on {% data variables.product.product_name %}, they can then make malicious changes to your code or build process. So your first goal should be to make it difficult for someone to take over your account and the accounts of other {% ifversion ghes %}users{% else %}members{% endif %} of {% ifversion fpt %}your organization{% elsif ghec %}your organization or enterprise{% elsif ghes %}your instance{% endif %}. +Account security is fundamental to the security of your supply chain. If an attacker can take over your account on {% data variables.product.github %}, they can then make malicious changes to your code or build process. So your first goal should be to make it difficult for someone to take over your account and the accounts of other {% ifversion ghes %}users{% else %}members{% endif %} of {% ifversion fpt %}your organization{% elsif ghec %}your organization or enterprise{% elsif ghes %}your instance{% endif %}. {% ifversion ghec or ghes %} @@ -30,21 +30,21 @@ Account security is fundamental to the security of your supply chain. If an atta {% endif %} {% ifversion ghec %} -If you're an enterprise or organization owner, you can configure centralized authentication with SAML. While you can add or remove members manually, it's simpler and more secure to set up single sign-on (SSO) and SCIM between {% data variables.product.product_name %} and your SAML identity provider (IdP). This also simplifies the authentication process for all members of your enterprise. +If you're an enterprise or organization owner, you can configure centralized authentication with SAML. While you can add or remove members manually, it's simpler and more secure to set up single sign-on (SSO) and SCIM between {% data variables.product.github %} and your SAML identity provider (IdP). This also simplifies the authentication process for all members of your enterprise. You can configure SAML authentication for an enterprise or organization account. With SAML, you can grant access to the personal accounts of members of your enterprise or organization on {% data variables.product.prodname_dotcom %} through your IdP, or you can create and control the accounts that belong to your enterprise by using {% data variables.product.prodname_emus %}. For more information, see [AUTOTITLE](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise). After you configure SAML authentication, when members request access to your resources, they'll be directed to your SSO flow to ensure they are still recognized by your IdP. If they are unrecognized, their request is declined. -Some IdPs support a protocol called SCIM, which can automatically provision or deprovision access on {% data variables.product.product_name %} when you make changes on your IdP. With SCIM, you can simplify administration as your team grows, and you can quickly revoke access to accounts. SCIM is available for individual organizations on {% data variables.product.product_name %}, or for enterprises that use {% data variables.product.prodname_emus %}. For more information, see [AUTOTITLE](/organizations/managing-saml-single-sign-on-for-your-organization/about-scim-for-organizations). +Some IdPs support a protocol called SCIM, which can automatically provision or deprovision access on {% data variables.product.github %} when you make changes on your IdP. With SCIM, you can simplify administration as your team grows, and you can quickly revoke access to accounts. SCIM is available for individual organizations on {% data variables.product.prodname_enterprise %}, or for enterprises that use {% data variables.product.prodname_emus %}. For more information, see [AUTOTITLE](/organizations/managing-saml-single-sign-on-for-your-organization/about-scim-for-organizations). {% endif %} {% ifversion ghes %} -If you're the site administrator for your instance, you can simplify the login experience for users by choosing an authentication method that connects with your existing identity provider (IdP), like CAS, SAML, or LDAP. This means that they no longer need to remember an extra password for {% data variables.product.prodname_dotcom %}. +If you're the site administrator for your instance, you can simplify the login experience for users by choosing an authentication method that connects with your existing identity provider (IdP), like CAS, SAML, or LDAP. This means that they no longer need to remember an extra password for {% data variables.product.github %}. -Some authentication methods also support communicating additional information to {% data variables.product.product_name %}, for example, what groups the user is a member of, or synchronizing cryptographic keys for the user. This is a great way to simplify your administration as your organization grows. +Some authentication methods also support communicating additional information to {% data variables.product.github %}, for example, what groups the user is a member of, or synchronizing cryptographic keys for the user. This is a great way to simplify your administration as your organization grows. -For more information about the authentication methods available for {% data variables.product.product_name %}, see [AUTOTITLE](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise). +For more information about the authentication methods available for {% data variables.product.github %}, see [AUTOTITLE](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise). {% endif %} ## Configure two-factor authentication @@ -68,7 +68,7 @@ If you're an enterprise owner, you may be able to configure a policy to require {% endif %} {% ifversion ghes %} -If you're the site administrator for your instance, you may be able to configure 2FA for all users of your instance. The availability of 2FA on {% data variables.product.product_name %} depends on the authentication method that you use. For more information, see [Centralize authentication](#centralize-authentication). +If you're the site administrator for your instance, you may be able to configure 2FA for all users of your instance. The availability of 2FA depends on the authentication method that you use. For more information, see [Centralize authentication](#centralize-authentication). {% endif %} If you're an organization owner, then you {% ifversion fpt %}can{% else %}may be able to{% endif %} require that all members of the organization enable 2FA. @@ -79,17 +79,17 @@ To learn more about enabling 2FA on your own account, see [AUTOTITLE](/authentic ### Configure your enterprise account -Enterprise owners may be able to require 2FA for all {% ifversion ghes %}users on{% elsif ghec %}members of{% endif %} the {% ifversion ghes %}instance{% elsif ghec %}enterprise{% endif %}. The availability of 2FA policies on {% data variables.product.product_name %} depends on how {% ifversion ghes %}users{% else %}members{% endif %} authenticate to access your {% ifversion ghes %}instance{% elsif ghec %}enterprise's resources{% endif %}. +Enterprise owners may be able to require 2FA for all {% ifversion ghes %}users on{% elsif ghec %}members of{% endif %} the {% ifversion ghes %}instance{% elsif ghec %}enterprise{% endif %}. The availability of 2FA policies on {% data variables.product.github %} depends on how {% ifversion ghes %}users{% else %}members{% endif %} authenticate to access your {% ifversion ghes %}instance{% elsif ghec %}enterprise's resources{% endif %}. {% ifversion ghes %} * If you sign into {% data variables.product.prodname_ghe_server %} through an external IdP using CAS or SAML SSO, you {% elsif ghec %} If your enterprise uses {% data variables.product.prodname_emus %} or SAML authentication is enforced for your enterprise, you -{%- endif %} cannot configure 2FA on {% data variables.product.product_name %}. Someone with administrative access to your IdP must configure 2FA for the IdP. +{%- endif %} cannot configure 2FA on {% data variables.product.github %}. Someone with administrative access to your IdP must configure 2FA for the IdP. {% ifversion ghes %} -* If you sign into {% data variables.product.prodname_ghe_server %} through an external LDAP directory, you can require 2FA for your enterprise on {% data variables.product.product_name %}. If you allow built-in authentication for users outside of your directory, individual users can enable 2FA, but you cannot require 2FA for your enterprise. +* If you sign into {% data variables.product.prodname_ghe_server %} through an external LDAP directory, you can require 2FA for your enterprise on {% data variables.product.github %}. If you allow built-in authentication for users outside of your directory, individual users can enable 2FA, but you cannot require 2FA for your enterprise. {% endif %} @@ -106,7 +106,7 @@ For more information, see {% ifversion ghec %}[AUTOTITLE](/admin/identity-and-ac {% endif %} -{% data variables.product.product_name %} supports several options for 2FA, and while any of them is better than nothing, the most secure option is a WebAuthn credential. WebAuthn requires an authenticator such as a FIDO2 hardware security key, a platform authenticator like Windows Hello, an Apple or Google phone, or a password manager. It's possible, although difficult, to phish other forms of 2FA (for example, someone asking you to read them your 6 digit one-time password). However WebAuthn is much more resistant to phishing, because domain scoping is built into the protocol, which prevents credentials from a website impersonating the login page from being used on {% data variables.product.product_name %}. +{% data variables.product.github %} supports several options for 2FA, and while any of them is better than nothing, the most secure option is a WebAuthn credential. WebAuthn requires an authenticator such as a FIDO2 hardware security key, a platform authenticator like Windows Hello, an Apple or Google phone, or a password manager. It's possible, although difficult, to phish other forms of 2FA (for example, someone asking you to read them your 6 digit one-time password). However WebAuthn is much more resistant to phishing, because domain scoping is built into the protocol, which prevents credentials from a website impersonating the login page from being used on {% data variables.product.github %}. When you set up 2FA, you should always download the recovery codes and set up more than one 2FA credential. This ensures that access to your account doesn't depend on a single device. For more information, see [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication) and [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication-recovery-methods). @@ -125,9 +125,9 @@ If you're an organization owner, you can see which users don't have 2FA enabled, 1. [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/preparing-to-require-two-factor-authentication-in-your-organization) 1. [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/requiring-two-factor-authentication-in-your-organization) -## Connect to {% data variables.product.product_name %} using SSH keys +## Connect to {% data variables.product.github %} using SSH keys -There are other ways to interact with {% data variables.product.product_name %} beyond signing into the website. Many people authorize the code they push to {% data variables.product.prodname_dotcom %} with an SSH private key. For more information, see [AUTOTITLE](/authentication/connecting-to-github-with-ssh/about-ssh). +There are other ways to interact with {% data variables.product.github %} beyond signing into the website. Many people authorize the code they push to {% data variables.product.github %} with an SSH private key. For more information, see [AUTOTITLE](/authentication/connecting-to-github-with-ssh/about-ssh). Just like your account password, if an attacker were able to get your SSH private key, they could impersonate you and push malicious code to any repository you have write access for. If you store your SSH private key on a disk drive, it's a good idea to protect it with a passphrase. For more information, see [AUTOTITLE](/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases). diff --git a/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-code.md b/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-code.md index dcdadf429e7d..9b48bfd2e1e0 100644 --- a/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-code.md +++ b/content/code-security/supply-chain-security/end-to-end-supply-chain/securing-code.md @@ -75,8 +75,8 @@ Code often needs to communicate with other systems over a network, and requires {% endif %} {% ifversion fpt %} -You can enable and configure additional scanning that will alert you about accidentally leaked secrets on {% data variables.product.product_name %} if you own: - * Public repositories on {% data variables.product.prodname_dotcom %}. +You can enable and configure additional scanning that will alert you about accidentally leaked secrets on {% data variables.product.github %} if you own: + * Public repositories. * An organization using {% data variables.product.prodname_ghe_cloud %} with a license for {% data variables.product.prodname_GH_advanced_security %}. {% data variables.product.prodname_secret_scanning_caps %} will also analyze your private repositories. {% elsif secret-scanning-user-owned-repos %} @@ -87,7 +87,7 @@ You can also define custom patterns to detect additional secrets at the reposito You can configure {% data variables.product.prodname_secret_scanning %} to check for secrets issued by many service providers and to notify you when any are detected. You can also define custom patterns to detect additional secrets at the repository, organization, or enterprise level. For more information, see [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning) and [AUTOTITLE](/code-security/secret-scanning/introduction/supported-secret-scanning-patterns). {% endif %} -### Secure storage of secrets you use in {% data variables.product.product_name %} +### Secure storage of secrets you use on {% data variables.product.github %} {% ifversion fpt or ghec %} Besides your code, you probably need to use secrets in other places. For example, to allow {% data variables.product.prodname_actions %} workflows, {% data variables.product.prodname_dependabot %}, or your {% data variables.product.prodname_github_codespaces %} development environment to communicate with other systems. For more information on how to securely store and use secrets, see [AUTOTITLE](/actions/security-guides/encrypted-secrets), [AUTOTITLE](/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot#storing-credentials-for-dependabot-to-use), and [AUTOTITLE](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces). diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md index acea800a95c5..397b79a21f72 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md @@ -35,7 +35,7 @@ By checking the dependency reviews in a pull request, and changing any dependenc Dependency review supports the same languages and package management ecosystems as the dependency graph. For more information, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/dependency-graph-supported-package-ecosystems#supported-package-ecosystems). -For more information on supply chain features available on {% data variables.product.product_name %}, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security). +For more information on supply chain features available on {% data variables.product.github %}, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security). {% ifversion ghec or ghes %} diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security.md index d12b0792a58b..494fb45328ad 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security.md @@ -1,6 +1,6 @@ --- title: About supply chain security -intro: '{% data variables.product.product_name %} helps you secure your supply chain, from understanding the dependencies in your environment, to knowing about vulnerabilities in those dependencies, and patching them.' +intro: '{% data variables.product.github %} helps you secure your supply chain, from understanding the dependencies in your environment, to knowing about vulnerabilities in those dependencies, and patching them.' shortTitle: Supply chain security redirect_from: - /code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies @@ -29,9 +29,9 @@ One of the most important things you can do to protect your supply chain is to p You add dependencies directly to your supply chain when you specify them in a manifest file or a lockfile. Dependencies can also be included transitively, that is, even if you don’t specify a particular dependency, but a dependency of yours uses it, then you’re also dependent on that dependency. -{% data variables.product.product_name %} offers a range of features to help you understand the dependencies in your environment, know about vulnerabilities in those dependencies, and patch them. +{% data variables.product.github %} offers a range of features to help you understand the dependencies in your environment, know about vulnerabilities in those dependencies, and patch them. -The supply chain features on {% data variables.product.product_name %} are: +The supply chain features on {% data variables.product.github %} are: * **Dependency graph** * **Dependency review** * **{% data variables.product.prodname_dependabot_alerts %}** @@ -59,7 +59,7 @@ To generate the dependency graph, {% data variables.product.company_short %} loo * The dependency graph includes information on your _direct_ dependencies and _transitive_ dependencies. * The dependency graph is automatically updated when you push a commit to {% data variables.product.company_short %} that changes or adds a supported manifest or lock file to the default branch, and when anyone pushes a change to the repository of one of your dependencies. -* You can see the dependency graph by opening the repository's main page on {% data variables.product.product_name %}, and navigating to the **Insights** tab. +* You can see the dependency graph by opening the repository's main page on {% data variables.product.github %}, and navigating to the **Insights** tab. * {% data reusables.dependency-graph.sbom-export %} {% data reusables.dependency-submission.dependency-submission-link %} @@ -91,13 +91,13 @@ The term "{% data variables.product.prodname_dependabot %}" encompasses the foll * If {% data variables.product.prodname_actions %} is enabled for the repository, {% data variables.product.prodname_dotcom %} runs {% data variables.product.prodname_dependabot_updates %} on {% data variables.product.prodname_actions %}. -* If {% data variables.product.prodname_actions %} is not enabled for the repository, {% data variables.product.prodname_dotcom %} generates {% data variables.product.prodname_dependabot_alerts %} using the built-in {% data variables.product.prodname_dependabot %} application in {% data variables.product.product_name %}. +* If {% data variables.product.prodname_actions %} is not enabled for the repository, {% data variables.product.github %} generates {% data variables.product.prodname_dependabot_alerts %} using its built-in {% data variables.product.prodname_dependabot %} application. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/about-dependabot-on-github-actions-runners). {% else %} -{% data variables.product.prodname_dependabot_security_updates %} and {% data variables.product.prodname_dependabot_version_updates %} require {% data variables.product.prodname_actions %} to run on {% data variables.product.product_name %}. {% data variables.product.prodname_dependabot_alerts %} do not require {% data variables.product.prodname_actions %}. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise). +{% data variables.product.prodname_dependabot_security_updates %} and {% data variables.product.prodname_dependabot_version_updates %} require {% data variables.product.prodname_actions %} to run on {% data variables.product.prodname_ghe_server %}. {% data variables.product.prodname_dependabot_alerts %} do not require {% data variables.product.prodname_actions %}. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise). {% endif %} diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md index e584a52ff3bf..05dccccfcd59 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md @@ -22,7 +22,7 @@ shortTitle: Dependency graph {% data reusables.dependabot.about-the-dependency-graph %} -When you push a commit to {% data variables.product.product_name %} that changes or adds a supported manifest or lock file to the default branch, the dependency graph is automatically updated.{% ifversion fpt or ghec %} In addition, the graph is updated when anyone pushes a change to the repository of one of your dependencies.{% endif %} +When you push a commit to {% data variables.product.github %} that changes or adds a supported manifest or lock file to the default branch, the dependency graph is automatically updated.{% ifversion fpt or ghec %} In addition, the graph is updated when anyone pushes a change to the repository of one of your dependencies.{% endif %} For information on the supported ecosystems and manifest files, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/dependency-graph-supported-package-ecosystems#supported-package-ecosystems). @@ -55,7 +55,7 @@ The dependency graph includes all the dependencies of a repository that are deta The dependency graph identifies indirect dependencies{% ifversion fpt or ghec %} only if they are defined in a lock file or have been submitted using the {% data variables.dependency-submission-api.name %}. For the most reliable graph, you should use lock files (or their equivalent) because they define exactly which versions of the direct and indirect dependencies you currently use. If you use lock files, you also ensure that all contributors to the repository are using the same versions, which will make it easier for you to test and debug code{% else %} from the lock files{% endif %}. If your ecosystem does not have lock files, you can use pre-made actions that resolve transitive dependencies for many ecosystems. For more information, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api#using-pre-made-actions). -For more information on how {% data variables.product.product_name %} helps you understand the dependencies in your environment, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security). +For more information on how {% data variables.product.github %} helps you understand the dependencies in your environment, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security). {% ifversion fpt or ghec %} diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository.md index 41fcf46baf61..062a1748d3e0 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository.md @@ -25,9 +25,9 @@ When you enable automatic dependency submission for a repository, {% data variab Using automatic dependency submission counts toward your {% data variables.product.prodname_actions %} minutes. For more information, see [AUTOTITLE](/billing/managing-billing-for-github-actions/about-billing-for-github-actions). -Optionally, you can choose to configure self-hosted runners or {% data variables.product.company_short %}-hosted {% data variables.actions.hosted_runners %} for automatic dependency submission. For more information, see "[Using self-hosted runners for automatic dependency submission](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository#using-self-hosted-runners-for-automatic-dependency-submission -)" and "[Using GitHub-hosted larger runners for automatic dependency submission](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository#using-github-hosted-larger-runners-for-automatic-dependency-submission -)." +Optionally, you can choose to configure self-hosted runners or {% data variables.product.company_short %}-hosted {% data variables.actions.hosted_runners %} for automatic dependency submission. For more information, see [Using self-hosted runners for automatic dependency submission](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository#using-self-hosted-runners-for-automatic-dependency-submission +) and [Using GitHub-hosted larger runners for automatic dependency submission](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-automatic-dependency-submission-for-your-repository#using-github-hosted-larger-runners-for-automatic-dependency-submission +). ## Prerequisites diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-graph.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-graph.md index f908005681a5..4276c4cdfb7c 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-graph.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-graph.md @@ -25,7 +25,7 @@ For more information, see [AUTOTITLE](/code-security/supply-chain-security/under ## Configuring the dependency graph -To generate a dependency graph, {% data variables.product.product_name %} needs read-only access to the dependency manifest and lock files for a repository. The dependency graph is automatically generated for all public repositories and you can choose to enable it for private {% ifversion ghec %}and internal {% endif %}repositories. For more information on viewing the dependency graph, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository). +To generate a dependency graph, {% data variables.product.github %} needs read-only access to the dependency manifest and lock files for a repository. The dependency graph is automatically generated for all public repositories and you can choose to enable it for private {% ifversion ghec %}and internal {% endif %}repositories. For more information on viewing the dependency graph, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository). {% data reusables.dependency-submission.dependency-submission-link %} diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md index 56fc531ae17f..899b6de82599 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md @@ -67,7 +67,7 @@ If vulnerabilities have been detected in the repository, these are shown at the {% ifversion ghes %} > [!NOTE] -> {% data variables.product.product_name %} does not populate the **Dependents** view. +> {% data variables.product.prodname_ghe_server %} does not populate the **Dependents** view. {% endif %} @@ -91,7 +91,7 @@ You may notice some repositories have a "Used by" section in the sidebar of the The "Used by" section shows the number of public references to the package that were found, and displays the avatars of some of the owners of the dependent projects. -![Screenshot of the "Used by" section for a repository. To the right of the "Used by" header is "13.4m." Under the header are 8 avatars and "+13,435,819."](/assets/images/help/repository/used-by-section.png) +![Screenshot of the "Used by" section for a repository showing the summary of "13.4m" with details of 8 avatars and "+13,435,819."](/assets/images/help/repository/used-by-section.png) Clicking any item in this section takes you to the **Dependents** tab of the dependency graph. diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api.md index 82054076e1ab..73388ec62e91 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api.md @@ -37,7 +37,7 @@ Alternatively, you can write your own action to submit dependencies for your pro 1. Translate the list of dependencies into the snapshot format accepted by the {% data variables.dependency-submission-api.name %}. For more information about the format, see the body parameters for the "Create a repository snapshot" API endpoint in [AUTOTITLE](/rest/dependency-graph/dependency-submission). 1. Submit the formatted list of dependencies to the {% data variables.dependency-submission-api.name %}. -{% data variables.product.product_name %} maintains the [Dependency Submission Toolkit](https://github.com/github/dependency-submission-toolkit), a TypeScript library to help you build your own GitHub Action for submitting dependencies to the {% data variables.dependency-submission-api.name %}. For more information about writing an action, see [AUTOTITLE](/actions/creating-actions). +{% data variables.product.github %} maintains the [Dependency Submission Toolkit](https://github.com/github/dependency-submission-toolkit), a TypeScript library to help you build your own GitHub Action for submitting dependencies to the {% data variables.dependency-submission-api.name %}. For more information about writing an action, see [AUTOTITLE](/actions/creating-actions). ## Generating and submitting a software bill of materials (SBOM) diff --git a/content/code-security/trialing-github-advanced-security/enable-security-features-trial.md b/content/code-security/trialing-github-advanced-security/enable-security-features-trial.md new file mode 100644 index 000000000000..b5748756526d --- /dev/null +++ b/content/code-security/trialing-github-advanced-security/enable-security-features-trial.md @@ -0,0 +1,72 @@ +--- +title: Enabling security features in your trial enterprise +shortTitle: Enable security features in trial +allowTitleToDifferFromFilename: true +intro: 'Quickly create an enterprise-level configuration and apply security features across all repositories in your trial enterprise.' +type: quick_start +permissions: '{% data reusables.permissions.security-configuration-enterprise-enable %}' +topics: + - Advanced Security +versions: + fpt: '*' + ghec: '*' +--- + +This article assumes that you have planned and then started a trial of {% data variables.product.prodname_GH_advanced_security %}. For more information, see [AUTOTITLE](/code-security/trialing-github-advanced-security/planning-a-trial-of-ghas). + +The aim is to enable all the security features you want to trial quickly, as a starting point for deeper exploration. You should start getting results soon on the repositories in your trial enterprise and you can fine-tune the configuration later. + +## Step 1: Create an enterprise security configuration for your trial goals + +When you planned your trial, you identified the features that you want to test and any enforcement needs. You should create one or more security configurations for your enterprise that enable these features and set any enforcement levels you require. + +1. In the top-right corner of {% data variables.product.prodname_dotcom %}, click your profile photo. +1. Depending on your environment, click **Your enterprise**, or click **Your enterprises** then click your trial enterprise. +{% data reusables.enterprise-accounts.settings-tab %} +1. In the left sidebar, click **Code security** to display the security configurations page. +1. Click **New configuration** to create a new configuration. +1. Give the configuration a meaningful name and description. +1. You will see that most features are already enabled. Review the features that are **Not set** and enable any that you want to trial, for example: "Automatic dependency submission." +1. In the "Policy" area, set the "Use as default for newly created repositories" option as needed to define whether or not to apply the configuration to new repositories created in the enterprise. +1. In the "Policy" area, notice that the "Enforce configuration" option is set to **Enforce** so that applying the configuration to a repository enforces all settings apart from any left as "Not set". + > [!TIP] While you are testing {% data variables.product.prodname_GH_advanced_security %}, you may want to change this to **Don't enforce** to allow you to optimize repository settings as needed without modifying security configurations. +1. When you have finished defining the configuration, click **Save configuration**. + +The new enterprise security configuration is now available for use at the enterprise level and also within every organization in the enterprise. + +## Step 2: Apply your enterprise security configuration to repositories + +You can apply an enterprise security configuration either at the enterprise level or at the organization level. The best option for you will depend on whether or not you want to apply the configuration to all repositories in the enterprise, or to a subset of repositories. + +> [!NOTE] Although {% data variables.product.prodname_GH_advanced_security %} is free of charge during trials, you will be charged for any actions minutes that you use. This includes actions minutes used by the default {% data variables.product.prodname_code_scanning %} setup or by any other workflows you run. + +* Enterprise-level application: + * Add an enterprise configuration to all repositories in the enterprise, or all repositories without an existing configuration in the enterprise. +* Organization-level application: + * Add an enterprise or an organization configuration to all repositories in the organization, or all repositories without an existing configuration in the organization. + * Add an enterprise or an organization configuration to a subset of repositories in the organization. + +You may find it helpful to apply an enterprise security configuration to all repositories in your enterprise, and then work at the organization-level to select a subset of repositories and apply an alternative security configuration. + +### Enterprise-level application + +1. Open your trial enterprise. +1. In the sidebar, click **Settings** and then **Code security** to display the security configurations page. +1. For the configuration you want to apply, click **Apply to** and choose whether to apply the configuration to all repositories in the enterprise or just to the repositories without an existing security configuration. + +### Organization-level application + +1. Open an organization in your trial enterprise. +1. Click the **Settings** tab to display the organization settings. +1. In the sidebar, click **Code security** and then **Configurations** to display the security configurations page. +1. Optionally, select the **Apply to** dropdown menu and click either **All repositories**, to apply any configuration to all repositories in the organization, or **All repositories without configurations**, to configure just the repositories in the organization without an existing security configuration. +1. Optionally, in the "Apply configurations" section use the "Search repositories" field or **Filter** button to filter repositories. Then select one or more repositories and use the **Apply configuration** button to choose a configuration to apply to those repositories. + +For more information, see [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/applying-a-custom-security-configuration). + +## Next steps + +Now that you have enabled the security features you want to test, you are ready to look more deeply into how {% data variables.product.prodname_secret_scanning %} and {% data variables.product.prodname_code_scanning %} protect your code. + +1. [AUTOTITLE](/code-security/trialing-github-advanced-security/explore-trial-secret-scanning) +1. [AUTOTITLE](/code-security/trialing-github-advanced-security/explore-trial-code-scanning) diff --git a/content/code-security/trialing-github-advanced-security/explore-trial-code-scanning.md b/content/code-security/trialing-github-advanced-security/explore-trial-code-scanning.md new file mode 100644 index 000000000000..74ef78e6d8ac --- /dev/null +++ b/content/code-security/trialing-github-advanced-security/explore-trial-code-scanning.md @@ -0,0 +1,128 @@ +--- +title: Exploring your enterprise trial of code scanning +shortTitle: Trial code scanning +allowTitleToDifferFromFilename: true +intro: 'Introduction to the features of code and dependency scanning available with {% data variables.product.prodname_GH_advanced_security %} in {% data variables.product.prodname_ghe_cloud %} so you can assess their fit to your business needs.' +type: quick_start +topics: + - Advanced Security +versions: + fpt: '*' + ghec: '*' +--- + +This guide assumes that you have planned and started a trial of {% data variables.product.prodname_GH_advanced_security %} for an existing or trial {% data variables.product.github %} enterprise account, see [AUTOTITLE](/code-security/trialing-github-advanced-security/planning-a-trial-of-ghas). + +## Introduction + +{% data variables.product.prodname_code_scanning_caps %} and dependency analysis work in the same way in public repositories and in private and internal repositories with {% data variables.product.prodname_GH_advanced_security %} enabled. In addition, {% data variables.product.prodname_GH_advanced_security %} enables you to create security campaigns where security specialists and developers can collaborate to effectively reduce technical debt. + +This article focuses on how you can combine these features with enterprise-level controls to standardize and enforce your development process. + +### Refine your security configurations + +In contrast to {% data variables.product.prodname_secret_scanning %}, where a single security configuration is typically applied to all repositories, you probably want to fine-tune the configuration of {% data variables.product.prodname_code_scanning %} for different types of repositories. For example, you might need to create additional configurations so that: + +* {% data variables.product.prodname_code_scanning_caps %} uses runners with a specific label to apply to repositories that require a specialized environment or that use private registeries. +* {% data variables.product.prodname_code_scanning_caps %} is "Not set" to apply to repositories that need to use advanced setup or that require a third-party tool. + +For your trial, it's simplest to create a primary enterprise-level security configuration and apply it to your test repositories. Then you can create any additional security configurations you need and apply them to a subset of repositories selected using code language, custom property, visibility, and other filter options. For more information, see [AUTOTITLE](/code-security/trialing-github-advanced-security/enable-security-features-trial) and [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/applying-a-custom-security-configuration). + +### Provide access to view results of {% data variables.product.prodname_code_scanning %} + +By default, only the repository administrator and the organization owner can view all {% data variables.product.prodname_code_scanning %} alerts in their area. You should assign the predefined security manager role to all organization teams and users who you want to access the alerts found during the trial. You may also want to give the enterprise account owner this role for each organization in the trial. For more information, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization) and [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/using-organization-roles#assigning-an-organization-role). + +## Evaluate and refine results from the default setup + +The default setup for {% data variables.product.prodname_code_scanning %} runs a set of high confidence queries. These are chosen to ensure that, when you roll out {% data variables.product.prodname_code_scanning %} across your whole codebase, developers see a limited set of high quality results, with few false positive results. + +You can see a summary of any results found in the organizations in your trial enterprise in the **Code security** tab for the enterprise. There are also separate views for each type of security alert, see [AUTOTITLE](/code-security/security-overview/viewing-security-insights). + +If you don't see the results you expect for {% data variables.product.prodname_code_scanning %}, you can update default setup to run an extended query suite for repositories where you expected to find more results. This is controlled at the repository level, see [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/editing-your-configuration-of-default-setup). + +> [!TIP] +> If you are blocked from editing the repository settings for {% data variables.product.prodname_code_scanning %}, edit the security configuration used by the repository so that settings are not enforced. + +If the extended suite still fails to find the results you expect, you may need to enable advanced setup so you can customize the analysis fully. For more information, see [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/about-the-tool-status-page) and [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning). + +## Enforce automated analysis of pull requests + +There are three different types of automated analysis of pull requests built into {% data variables.product.github %}: + +* **{% data variables.product.prodname_code_scanning_caps %} analysis** uses queries to highlight known bad coding patterns and security vulnerabilities. {% data variables.product.prodname_copilot_autofix_short %} suggests fixes to problems identified by {% data variables.product.prodname_code_scanning %}. +* **Dependency review** summarizes the dependency changes made by the pull request and highlights any dependencies with known vulnerabilities or that do not meet your development standards. +* **{% data variables.product.prodname_copilot_short %} code review** uses AI to provide feedback on your changes with suggested fixes where possible. + +These automated reviews are a valuable extension to self-review and make it easier for developers to present a more complete and secure pull request for peer review. In addition, {% data variables.product.prodname_code_scanning %} and dependency reviews can be enforced to protect the security and compliance of your code. + +> [!NOTE] +> {% data variables.product.prodname_copilot_autofix %} is included in the license for {% data variables.product.prodname_GH_advanced_security %}. {% data variables.product.prodname_copilot_short %} code review requires a paid {% data variables.product.prodname_copilot_short %} plan. + +### {% data variables.product.prodname_code_scanning_caps %} analysis + +When {% data variables.product.prodname_code_scanning %} is enabled, you can then block merges into important branches unless the pull request meets your requirements by creating a code ruleset for the enterprise or organization. Typically, you would require that results from {% data variables.product.prodname_code_scanning %} are present and that any important alerts are resolved. + +* **Type of ruleset:** Branch. +* **Require {% data variables.product.prodname_code_scanning %} results:** Enable to block merging until results are successfully generated for the commit and the reference the pull request targets. +* **Required tools and alert thresholds:** Define the level of alerts that must be resolved before a pull request can be merged for each {% data variables.product.prodname_code_scanning %} tool you use. + +As with all rulesets, you can control exactly which organizations (enterprise-level), repositories, and branches it acts on and also define roles or teams who can bypass the rule. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets). + +### Dependency review + +When {% data variables.product.prodname_GH_advanced_security %} and dependency graph are enabled for a repository, manifest files have a rich diff view which shows a summary of the dependencies that it adds or updates. This is a useful summary for human reviewers of the pull request but does not provide any control of which dependencies are added to the codebase. + +Most enterprises put automatic checks in place to block the use of dependencies with known vulnerabilities or unsupported license terms. + +1. Create a private repository to serve as a central home where you can store reusable workflows for the enterprise. +1. Edit the actions settings for the repository to allow all private repositories in the enterprise to access workflows in this central repository, see [Allowing access to components in a private repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#allowing-access-to-components-in-a-private-repository). +1. In the central repository, create a reusable workflow to run the dependency review action, configuring the action to meet your business needs, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-review-action). +1. In each organization, create or update branch rulesets to add the new workflow to the required status checks, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/enforcing-dependency-review-across-an-organization). + +This allows you to update the configuration in a single location, but use the workflow in many repositories. You may want to use this central repository to maintain other workflows. For more information, see [AUTOTITLE](/actions/sharing-automations/reusing-workflows). + +### {% data variables.product.prodname_copilot_short %} review + +{% data reusables.copilot.code-review.preview-note %} + +By default, users request a review from {% data variables.product.prodname_copilot_short %} in the same way as they do from human reviewers. However, you can update or create an organization-level branch ruleset to automatically add {% data variables.product.prodname_copilot_short %} as a reviewer to all pull requests made to selected branches in all or selected repositories. For more information, see [AUTOTITLE](/copilot/using-github-copilot/code-review/using-copilot-code-review#enabling-automatic-reviews-from-copilot). + +{% data variables.product.prodname_copilot_short %} leaves a review comment on each pull request it reviews, without approving the pull request or requesting changes. This ensures that its review is advisory and will not block development work. Similarly, you should not enforce the resolution of suggestions made by {% data variables.product.prodname_copilot_short %} because AI suggestions have known limitations, see [AUTOTITLE](/copilot/responsible-use-of-github-copilot-features/responsible-use-of-github-copilot-code-review#limitations-of-github-copilot-code-review). + +## Define where {% data variables.product.prodname_copilot_autofix_short %} is allowed and enabled + +{% data variables.product.prodname_copilot_autofix_short %} helps developers understand and fix {% data variables.product.prodname_code_scanning %} alerts found in their pull requests. We recommend that you enable this feature for all repositories to help developers resolve alerts efficiently and increase their understanding of secure coding. + +There are two levels of control: + +* Enterprises can allow or block use of {% data variables.product.prodname_copilot_autofix_short %} throughout the enterprise using the "Code security" policy, see: [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise). +* Organizations can enable or disable {% data variables.product.prodname_copilot_autofix_short %} for all organization-owned repositories in the "Global settings" for the organization, see [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/configuring-global-security-settings-for-your-organization). + +## Engage developers in security remediation + +Security campaigns provide a way for security teams to engage with developers to remediate security technical debt. They also provide a practical way to combine education in secure coding with examples of vulnerable code in code that your developers are familar with. For more information, see [AUTOTITLE](/code-security/securing-your-organization/fixing-security-alerts-at-scale/about-security-campaigns) and [AUTOTITLE](/code-security/securing-your-organization/fixing-security-alerts-at-scale/best-practice-fix-alerts-at-scale). + +## Provide a secure development environment + +The development environment has many components. Some of the most useful features for scaling and standardizing a secure development environment in {% data variables.product.github %} are: + +* **Security configurations:** define the setup of security features for the enterprise, an organization, a subset of organization repositories, or new repositories, see [Refine your security configurations](#refine-your-security-configurations). +* **Policies:** protect and control use of resources for the enterprise or an organization, see [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise). +* **Rulesets:** protect and control branches, tags, and pushes for an organization, a subset of organization repositories, or a repository, see [AUTOTITLE](/organizations/managing-organization-settings/creating-rulesets-for-repositories-in-your-organization). +* **Repository templates:** define the security workflows and processes needed for each type of environment, see [AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-template-repository). For example, each template might contain a specialized: + * Security policy file defining the company's security stance and how to report any security concerns. + * Workflow to enable {% data variables.product.prodname_dependabot_version_updates %} for package managers used by the company. + * Workflow defining advanced setup for {% data variables.product.prodname_code_scanning %} for supported development languages where the default setup results are not enough. + +In addition, when a developer creates a repository from a template they must define the value of any required custom properties. Custom properties are very useful for selecting a subset of repositories that you want to apply configurations, policies, or rulesets to, see [AUTOTITLE](/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/managing-custom-properties-for-repositories-in-your-enterprise). + +## Next steps + +When you have finished exploring these options and {% data variables.product.prodname_secret_scanning %} features, you are ready to test your discoveries so far against your business needs, and then explore further. + +## Further reading + +* [AUTOTITLE](/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions) +* [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise) +* [AUTOTITLE](/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/governing-how-people-use-repositories-in-your-enterprise) +* [Enforce {% data variables.product.prodname_GH_advanced_security %} at Scale](https://wellarchitected.github.com/library/application-security/scenarios-and-recommendations/enforce-ghas-at-scale/) diff --git a/content/code-security/trialing-github-advanced-security/explore-trial-secret-scanning.md b/content/code-security/trialing-github-advanced-security/explore-trial-secret-scanning.md new file mode 100644 index 000000000000..4364e09ec01c --- /dev/null +++ b/content/code-security/trialing-github-advanced-security/explore-trial-secret-scanning.md @@ -0,0 +1,69 @@ +--- +title: Exploring your enterprise trial of secret scanning +shortTitle: Trial secret scanning +allowTitleToDifferFromFilename: true +intro: 'Introduction to the features of {% data variables.product.prodname_secret_scanning %} available with {% data variables.product.prodname_GH_advanced_security %} in {% data variables.product.prodname_ghe_cloud %} so you can assess their fit to your business needs.' +type: quick_start +topics: + - Advanced Security +versions: + fpt: '*' + ghec: '*' +--- + +This guide assumes that you have planned and started a trial of {% data variables.product.prodname_GH_advanced_security %} for an existing or trial {% data variables.product.github %} enterprise account, see [AUTOTITLE](/code-security/trialing-github-advanced-security/planning-a-trial-of-ghas). + +## Introduction + +{% data variables.product.prodname_secret_scanning_caps %} features work the same way in private and internal repositories with {% data variables.product.prodname_GH_advanced_security %} enabled as they do in all public repositories. This article focuses on the additional functionality that you can use to protect your business from security leaks when you use {% data variables.product.prodname_GH_advanced_security %}, that is: + +* Identify additional access tokens you use. +* Detect potential passwords using AI. +* Control and audit the bypass process for push protection. +* Enable validity checks for exposed tokens. + +### Security configuration for {% data variables.product.prodname_secret_scanning %} + +Most enterprises choose to enable {% data variables.product.prodname_secret_scanning %} and push protection across all their repositories by applying security configurations with these features enabled. This ensures that repositories are checked for access tokens that have already been added to {% data variables.product.github %}, in addition to flagging when users are about to leak tokens in {% data variables.product.github %}. For information about creating an enterprise-level security configuration and applying it to your test repositories, see [AUTOTITLE](/code-security/trialing-github-advanced-security/enable-security-features-trial). + +### Provide access to view the results of {% data variables.product.prodname_secret_scanning %} + +By default, only the repository administrator and the organization owner can view all {% data variables.product.prodname_secret_scanning %} alerts in their area. You should assign the predefined security manager role to all organization teams and users who you want to access the alerts found during the trial. You may also want to give the enterprise account owner this role for each organization in the trial. For more information, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization). + +You can see a summary of any results found in the organizations in your trial enterprise in the **Code security** tab for the enterprise. There are also separate views for each type of security alert, see [AUTOTITLE](/code-security/security-overview/viewing-security-insights). + +## Identify additional access tokens + +You can create custom patterns to identify additional access tokens at the repository, organization, and enterprise level. In most cases, you should define custom patterns at the enterprise level because this will ensure that the patterns are used across the whole enterprise. It will also make them easy to maintain if you need to update a pattern when the format for a token changes. + +Once you have created and published custom patterns, both {% data variables.product.prodname_secret_scanning %} and push protection automatically include the new patterns in all scans. For detailed information about creating custom patterns, see [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning). + +## Use AI to detect potential passwords + +At the enterprise level you have full control over whether or not to allow the use of AI to detect secrets that cannot be identified using regular expressions (also known as generic secrets or as non-provider patterns). + +* Turn the feature on or off for the whole enterprise. +* Set a policy to block control of the feature at the organization and repository level. +* Set a policy to allow organization owners or repository administrators to control the feature. + +Similar to custom patterns, if you enable AI detection both {% data variables.product.prodname_secret_scanning %} and push protection automatically start using AI detection in all scans. For information about enterprise-level control, see [AUTOTITLE](/admin/managing-code-security/securing-your-enterprise/configuring-additional-secret-scanning-settings-for-your-enterprise) and [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise). + +## Control and audit the bypass process + +When push protection blocks a push to {% data variables.product.github %} in a public repository without {% data variables.product.prodname_GH_advanced_security %}, the user has two simple options: bypass the control, or remove the highlighted content from the branch and its history. If they chose to bypass push protection, a {% data variables.product.prodname_secret_scanning %} alert is automatically created. This allows developers to rapidly unblock their work while still providing an audit trail for the content identified by {% data variables.product.prodname_secret_scanning %}. + +Larger teams usually want to maintain tighter control over the potential publication of access tokens and other secrets. With {% data variables.product.prodname_GH_advanced_security %}, you can define a reviewers group to approve requests to bypass push protection, reducing the risk of a developer accidentally leaking a token that is still active. Reviewers are defined in an organization-level security configuration or in the settings for a repository. For more information, see [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/delegated-bypass-for-push-protection/about-delegated-bypass-for-push-protection). + +## Enable validity checks + +You can enable validity checks to check whether detected tokens are still active at the repository, organization, and enterprise level. Generally, it is worth enabling this feature across the whole enterprise using enterprise or organization-level security configurations. For more information, see [AUTOTITLE](/code-security/secret-scanning/enabling-secret-scanning-features/enabling-validity-checks-for-your-repository). + +## Next steps + +When you have enabled the additional controls for {% data variables.product.prodname_secret_scanning %} available with {% data variables.product.prodname_GH_advanced_security %}, you're ready to test them against your business needs, and explore further. You may also be ready to look into trialing {% data variables.product.prodname_code_scanning %}. + +* [AUTOTITLE](/code-security/trialing-github-advanced-security/explore-trial-code-scanning) + +## Further reading + +* [Enforce {% data variables.product.prodname_GH_advanced_security %} at Scale](https://wellarchitected.github.com/library/application-security/scenarios-and-recommendations/enforce-ghas-at-scale/) diff --git a/content/code-security/trialing-github-advanced-security/index.md b/content/code-security/trialing-github-advanced-security/index.md new file mode 100644 index 000000000000..d971eb17952b --- /dev/null +++ b/content/code-security/trialing-github-advanced-security/index.md @@ -0,0 +1,17 @@ +--- +title: Trialing GitHub Advanced Security +shortTitle: Trial GitHub Advanced Security +intro: 'Learn how to get the most out of your trial of GitHub Advanced Security.' +product: '{% data reusables.gated-features.ghas %}' +versions: + fpt: '*' + ghec: '*' +topics: + - Enterprise + - Advanced Security +children: + - /planning-a-trial-of-ghas + - /enable-security-features-trial + - /explore-trial-secret-scanning + - /explore-trial-code-scanning +--- diff --git a/content/code-security/trialing-github-advanced-security/planning-a-trial-of-ghas.md b/content/code-security/trialing-github-advanced-security/planning-a-trial-of-ghas.md new file mode 100644 index 000000000000..e33a0002a2d8 --- /dev/null +++ b/content/code-security/trialing-github-advanced-security/planning-a-trial-of-ghas.md @@ -0,0 +1,81 @@ +--- +title: 'Planning a trial of GitHub Advanced Security' +shortTitle: 'Plan GHAS trial' +allowTitleToDifferFromFilename: true +intro: 'Ensure that your trial gives you the answers you need to make a decision on whether or not {% data variables.product.prodname_GH_advanced_security %} meets your business needs.' +type: overview +topics: + - Advanced Security +versions: + fpt: '*' + ghec: '*' +--- + +## About trialing {% data variables.product.prodname_GH_advanced_security %} + +You can trial {% data variables.product.prodname_GH_advanced_security %} independently, or working with an expert from {% data variables.product.github %} or a partner organization. The primary audience for these articles is people who will plan and run their trial independently, typically small and medium-sized organizations. + +> [!NOTE] Although {% data variables.product.prodname_GH_advanced_security %} is free of charge during trials, you will be charged for any actions minutes that you use. That is, actions minutes used by the {% data variables.product.prodname_code_scanning %} default setup or by any other workflows you run. + +### Existing {% data variables.product.prodname_ghe_cloud %} users + +{% data reusables.advanced-security.ghas-trial-availability %} For more information, see [AUTOTITLE](/enterprise-cloud@latest/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security#setting-up-your-trial-of-github-advanced-security){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation{% endif %}. + +{% data reusables.advanced-security.ghas-trial-invoiced %} + +### Users on other GitHub plans + +You can trial {% data variables.product.prodname_GH_advanced_security %} as part of a trial of {% data variables.product.prodname_ghe_cloud %}. For more information, see [AUTOTITLE](/admin/overview/setting-up-a-trial-of-github-enterprise-cloud){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation{% endif %}. + +### When the trial ends + +You can end your trial at any time by purchasing {% data variables.product.prodname_GH_advanced_security %}, and {% data variables.product.prodname_enterprise %} if you don't already use it, or by canceling the trial. For more information, see [What happens when the trial ends?](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud#what-happens-when-the-trial-ends){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation{% endif %}. + +## Define your company goals + +Before you start a trial of {% data variables.product.prodname_GH_advanced_security %}, you should define the purpose of the trial and identify the key questions you need to answer. Maintaining a strong focus on these goals will enable you to plan a trial that maximizes discovery and ensures that you have the information needed to decide whether or not to upgrade. + +If your company already uses {% data variables.product.github %}, consider what needs are currently unmet that {% data variables.product.prodname_GH_advanced_security %} might address. You should also consider your current application security posture and longer term aims. For inspiration, see [Design Principles for Application security](https://wellarchitected.github.com/library/application-security/design-principles/) in the {% data variables.product.github %} well-architected documentation. + +{% rowheaders %} + +| Example need | Features to explore during the trial | +|--|--| +| Enforce use of security features | Enterprise-level security configurations and policies, see [AUTOTITLE](/admin/managing-code-security/securing-your-enterprise/about-security-configurations) and [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/about-enterprise-policies) | +| Protect custom access tokens | Custom patterns for {% data variables.product.prodname_secret_scanning %}, delegated bypass for push protection, and validity checks, see [AUTOTITLE](/code-security/trialing-github-advanced-security/explore-trial-secret-scanning) | +| Define and enforce a development process | Dependency review, auto-triage rules, rulesets, and policies, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review), [AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/about-dependabot-auto-triage-rules), [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets), and [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/about-enterprise-policies) | +| Reduce technical debt at scale | {% data variables.product.prodname_code_scanning_caps %} and security campaigns, see [AUTOTITLE](/code-security/trialing-github-advanced-security/explore-trial-code-scanning) | +| Monitor and track trends in security risks | Security overview, see [AUTOTITLE](/code-security/security-overview/viewing-security-insights) | + +{% endrowheaders %} + +If your company doesn't use {% data variables.product.github %} yet, you are likely to have additional questions including how the platform handles data residency, secure account management, and repository migration. For more information, see [AUTOTITLE](/get-started/onboarding/getting-started-with-github-enterprise-cloud). + +## Identify the members of your trial team + +{% data variables.product.prodname_GH_advanced_security %} enables you to integrate security measures throughout the software development life cycle, so it's important to ensure that you include representatives from all areas of your development cycle. Otherwise you risk making a decision without having all the data you need. A trial includes 50 licenses which provides scope for representation from a wider range of people. + +You may also find it helpful to identify a champion for each company need that you want to investigate. + +## Determine whether preliminary research is needed + +If members of your trial team have not yet used the core features of {% data variables.product.prodname_GH_advanced_security %}, it may be helpful to add an experimentation phase in public repositories before you start a trial. Many of the primary features of {% data variables.product.prodname_code_scanning %} and {% data variables.product.prodname_secret_scanning %} can be used on public repositories. Having a good understanding of the core features will allow you to focus your trial period on private repositories, and exploring the additional features and control available with {% data variables.product.prodname_GH_advanced_security %}. + +For more information, see [AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning), [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security), and [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning). + +## Agree the organizations and repositories to test + +Generally it is best to use an existing organization for a trial. This ensures that you can trial the features in repositories you know well and that accurately represent your coding environment. Once you start the trial, you may want to create additional organizations with test code to expand your explorations. + +Be aware that deliberately insecure applications, such as WebGoat, may contain coding patterns that appear to be insecure, but which {% data variables.product.prodname_code_scanning %} determines cannot be exploited. {% data variables.product.prodname_code_scanning_caps %} typically generates fewer results for artificially insecure codebases than other static application security scanners. + +## Define the assessment criteria for the trial + +For each company need or goal that you identify, determine what criteria you will measure to determine whether it is successfully met or not. For example, if one need is to enforce the use of security features, you might define a range of test cases for security configurations and policies to give you confidence that they enforce processes as you expect. + +## Next steps + +1. [AUTOTITLE](/admin/overview/setting-up-a-trial-of-github-enterprise-cloud) +1. [AUTOTITLE](/code-security/trialing-github-advanced-security/enable-security-features-trial) +1. [AUTOTITLE](/code-security/trialing-github-advanced-security/explore-trial-secret-scanning) +1. [AUTOTITLE](/code-security/trialing-github-advanced-security/explore-trial-code-scanning) diff --git a/content/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository.md b/content/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository.md index 129814286939..0c9651c52519 100644 --- a/content/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository.md +++ b/content/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository.md @@ -42,9 +42,6 @@ Organizations can enable members and outside collaborators to create and use cod {% data reusables.codespaces.starting-new-project-template %} For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/creating-a-codespace-from-a-template). -> [!NOTE] -> If you use a JetBrains IDE, you can use {% data variables.product.prodname_cli %} to create a codespace. You can then use the JetBrains Gateway application to open the codespace in a JetBrains IDE. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide). - If you create a codespace from a repository, the codespace will be associated with a specific branch, which cannot be empty. You can create more than one codespace per repository or even per branch. {% data reusables.codespaces.you-can-see-all-your-codespaces %} @@ -75,7 +72,7 @@ If you want to use Git hooks for your codespace, then you should set up hooks us {% data reusables.repositories.navigate-to-repo %} 1. Under the repository name, select the branch dropdown menu, which is labeled with the name of the current branch, then click the branch you want to create a codespace for. - ![Screenshot of the expanded branch dropdown menu, listing various branches. The dropdown menu, labeled with a branch icon and "trunk," is highlighted with a dark orange outline.](/assets/images/help/codespaces/branch-drop-down.png) + ![Screenshot of the expanded branch dropdown menu, listing various branches. The "trunk" dropdown menu, shown with a branch icon, is outlined in orange.](/assets/images/help/codespaces/branch-drop-down.png) 1. Click the **{% octicon "code" aria-hidden="true" %} Code** button, then click the **Codespaces** tab. diff --git a/content/codespaces/developing-in-a-codespace/creating-a-codespace-from-a-template.md b/content/codespaces/developing-in-a-codespace/creating-a-codespace-from-a-template.md index 87be4a462780..28e78d9086fa 100644 --- a/content/codespaces/developing-in-a-codespace/creating-a-codespace-from-a-template.md +++ b/content/codespaces/developing-in-a-codespace/creating-a-codespace-from-a-template.md @@ -52,7 +52,7 @@ Templates maintained by {% data variables.product.company_short %}, including th {% data reusables.codespaces.view-all-templates-step %} 1. Optionally, to view the template repository containing the files for a template, click the name of the template. - ![Screenshot of the "Explore quick start templates" section of the codespaces page. Three templates are listed, and the names of the templates are highlighted with orange outlines.](/assets/images/help/codespaces/react-template-name.png) + ![Screenshot of the "Explore quick start templates" section. Three templates are listed. The templates names are outlined in orange.](/assets/images/help/codespaces/react-template-name.png) 1. Under the name of the template you want to launch, click **Use this template**. diff --git a/content/codespaces/developing-in-a-codespace/deleting-a-codespace.md b/content/codespaces/developing-in-a-codespace/deleting-a-codespace.md index 94eb74845b6b..c34c52aed15e 100644 --- a/content/codespaces/developing-in-a-codespace/deleting-a-codespace.md +++ b/content/codespaces/developing-in-a-codespace/deleting-a-codespace.md @@ -28,7 +28,7 @@ You can manually delete a codespace in a variety of ways: Use the tabs at the top of this article to display instructions for each of these ways of deleting a codespace. > [!NOTE] -> You can't delete a codespace from within the JetBrains Gateway, or the JetBrains client application, or from within JupyterLab. +> You can't delete a codespace from within JupyterLab. ## Why you should delete unused codespaces diff --git a/content/codespaces/developing-in-a-codespace/developing-in-a-codespace.md b/content/codespaces/developing-in-a-codespace/developing-in-a-codespace.md index b5f4d69a41c4..0bc22bcfd116 100644 --- a/content/codespaces/developing-in-a-codespace/developing-in-a-codespace.md +++ b/content/codespaces/developing-in-a-codespace/developing-in-a-codespace.md @@ -1,6 +1,6 @@ --- title: Developing in a codespace -intro: 'You can work in a codespace using your browser, {% data variables.product.prodname_vscode %}, a JetBrains IDE, or in a command shell.' +intro: 'You can work in a codespace using your browser, {% data variables.product.prodname_vscode %}, or in a command shell.' redirect_from: - /github/developing-online-with-github-codespaces/developing-in-a-codespace - /github/developing-online-with-codespaces/developing-in-a-codespace @@ -16,12 +16,6 @@ topics: shortTitle: Develop in a codespace --- -{% jetbrains_beta %} - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -{% endjetbrains_beta %} - ## About development with {% data variables.product.prodname_github_codespaces %} {% ifversion ghec %} @@ -33,7 +27,6 @@ shortTitle: Develop in a codespace You can develop code in a codespace using your choice of tool: * A command shell, via an SSH connection initiated using {% data variables.product.prodname_cli %} -* One of the JetBrains IDEs, via the JetBrains Gateway * The {% data variables.product.prodname_vscode %} desktop application * A browser-based version of {% data variables.product.prodname_vscode %} @@ -76,60 +69,6 @@ For troubleshooting information, see [AUTOTITLE](/codespaces/troubleshooting/tro {% endvscode %} -{% jetbrains_beta %} - -The tabs in this article allow you to switch between information for each of these ways of working. You're currently on the tab for JetBrains IDEs. - -## Working in a codespace in a JetBrains IDE - -To use {% data variables.product.prodname_github_codespaces %} with a JetBrains IDE you must have already installed JetBrains Gateway. For information about installing JetBrains Gateway, see [the JetBrains website](https://www.jetbrains.com/remote-development/gateway/). - -You can work in a codespace using your choice of JetBrains IDE. After creating a codespace, you can use the JetBrains Gateway application to open the codespace in your preferred IDE. - -You can edit code, debug, and use Git commands while developing in a codespace with your JetBrains IDE. For more information about the various JetBrains IDEs, see the [JetBrains documentation](https://www.jetbrains.com/help/). - -### IntelliJ IDEA user interface - -Within the {% data variables.product.prodname_github_codespaces %} documentation we use IntelliJ IDEA as a representative JetBrains IDE. Different JetBrains IDEs may have different layouts. - -![Annotated screenshot of the six main components of the user interface for JetBrains IntelliJ IDEA.](/assets/images/help/codespaces/jetbrains-gui-with-callouts.png) - -The main components of the user interface are: - -1. **Navigation bar** - This displays the path to the currently selected file or directory. Use the buttons to the right of the navigation bar to perform various actions, including building, running, or debugging the project, or running Git commands to commit and push your changes. -1. **Project tool window** - This shows you the structure of your project and allows you to open files in the editor. -1. **{% data variables.product.prodname_github_codespaces %} tool window** - This is displayed by clicking the {% data variables.product.prodname_github_codespaces %} plugin in the bar to the left of the tool window. It displays information about your codespace, including its display name and machine type. The buttons at the top of this tool window allow you to: - * Refresh the details in the tool window for the active codespace - * Display the "Your codespaces" web page - * View the codespace creation logs -1. **Editor** - This is where you edit your files. You can right-click the tab for a file to access options such as moving the tab to a new window. -1. **Terminal** - This is displayed by clicking **Terminal** in the tool window bar at the bottom of the main window (just above the status bar). The integrated terminal allows you to perform command-line tasks without having to switch to a dedicated terminal application. -1. **Status bar** - Hover over the icon at the left of the status bar to see a list of tools. Click the icon to hide or show the tool window bars. The right side of the status bar shows information about the project, including the current Git branch. - -For more information about the IntelliJ IDEA user interface, see the [JetBrains documentation for IntelliJ IDEA](https://www.jetbrains.com/help/idea/guided-tour-around-the-user-interface.html). - -### Customizing the codespaces for a repository - -You can customize the codespaces that are created for a repository by creating or updating the dev container configuration for the repository. You can do this from within a codespace. After you change a dev container configuration, you can apply the changes to the current codespace by rebuilding the Docker container for the codespace. For more information, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers). - -### Personalizing your codespace - -You can use a [dotfiles](https://dotfiles.github.io/tutorials/) repository to personalize aspects of the codespace environment for any codespace that you create. For more information, see [AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#dotfiles). - -### Committing your changes - -Once you've made changes to your codespace, either new code or configuration changes, you'll want to commit and push your changes. Pushing changes to a repository ensures that anyone else who creates a codespace from this repository has the same configuration. This also means that any customization you do, to modify the configuration of codespaces created for a repository, will be available to everybody who uses the repository. - -For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/using-source-control-in-your-codespace#committing-your-changes). - -## Further reading - -* [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide) -* [AUTOTITLE](/codespaces/reference/using-the-github-codespaces-plugin-for-jetbrains) -* [AUTOTITLE](/codespaces/troubleshooting/troubleshooting-github-codespaces-clients) - -{% endjetbrains_beta %} - {% cli %} The tabs in this article allow you to switch between information for each of these ways of working. You're currently on the tab for {% data variables.product.prodname_cli %}. diff --git a/content/codespaces/developing-in-a-codespace/forwarding-ports-in-your-codespace.md b/content/codespaces/developing-in-a-codespace/forwarding-ports-in-your-codespace.md index 638f72b07c5e..542162dcd7c8 100644 --- a/content/codespaces/developing-in-a-codespace/forwarding-ports-in-your-codespace.md +++ b/content/codespaces/developing-in-a-codespace/forwarding-ports-in-your-codespace.md @@ -15,23 +15,17 @@ topics: - Developer --- -{% jetbrains_beta %} - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -{% endjetbrains_beta %} - ## About forwarded ports Port forwarding gives you access to TCP ports running within your codespace. For example, if you're running a web application on a particular port in your codespace, you can forward that port. This allows you to access the application from the browser on your local machine for testing and debugging. {% webui %} -{% data reusables.codespaces.port-forwarding-intro-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-intro %} {% data reusables.codespaces.navigate-to-ports-tab %} 1. Under the list of ports, click **Add port**. - ![Screenshot of the "Add port" button.](/assets/images/help/codespaces/add-port-button.png) + ![Screenshot of the "Add port" button for a codespace.](/assets/images/help/codespaces/add-port-button.png) 1. Type the port number or address, then press Enter. @@ -48,7 +42,7 @@ By default, {% data variables.product.prodname_github_codespaces %} forwards por 1. Select the protocol needed for this port. The protocol that you select will be remembered for this port for the lifetime of the codespace. -{% data reusables.codespaces.port-forwarding-sharing-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-sharing %} {% data reusables.codespaces.navigate-to-ports-tab %} 1. Right-click the port that you want to share, click the **Port Visibility**, then click **Private to Organization** or **Public**. @@ -64,24 +58,24 @@ By default, {% data variables.product.prodname_github_codespaces %} forwards por {% data reusables.codespaces.using-tools-to-access-ports-1 %} {% data reusables.codespaces.find-address-and-token %} {% data reusables.codespaces.using-tools-to-access-ports-2 %} -{% data reusables.codespaces.port-forwarding-adding-non-jetbrains %} -{% data reusables.codespaces.port-forwarding-labeling-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-adding %} +{% data reusables.codespaces.port-forwarding-labeling %} {% endwebui %} {% vscode %} -{% data reusables.codespaces.port-forwarding-intro-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-intro %} {% data reusables.codespaces.navigate-to-ports-tab %} 1. Under the list of ports, click **Add port**. - ![Screenshot of the "Add port" button.](/assets/images/help/codespaces/add-port-button.png) + ![Screenshot of the "Add port" button for a codespace.](/assets/images/help/codespaces/add-port-button.png) 1. Type the port number or address, then press Enter. ![Screenshot of the number 3000 being entered into the port number field for a new forwarded port.](/assets/images/help/codespaces/port-number-text-box.png) -{% data reusables.codespaces.port-forwarding-sharing-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-sharing %} {% data reusables.codespaces.navigate-to-ports-tab %} @@ -98,8 +92,8 @@ By default, {% data variables.product.prodname_github_codespaces %} forwards por {% data reusables.codespaces.using-tools-to-access-ports-1 %} {% data reusables.codespaces.find-address-and-token %} {% data reusables.codespaces.using-tools-to-access-ports-2 %} -{% data reusables.codespaces.port-forwarding-adding-non-jetbrains %} -{% data reusables.codespaces.port-forwarding-labeling-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-adding %} +{% data reusables.codespaces.port-forwarding-labeling %} {% endvscode %} @@ -117,7 +111,7 @@ For more information about this command, see [the {% data variables.product.prod To see details of forwarded ports enter `gh codespace ports` and then choose a codespace. -{% data reusables.codespaces.port-forwarding-sharing-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-sharing %} To change the visibility of a forwarded port, use the `gh codespace ports visibility` subcommand. {% data reusables.codespaces.port-visibility-settings %} @@ -172,21 +166,11 @@ Copy the address and paste it somewhere for later use. ``` {% data reusables.codespaces.using-tools-to-access-ports-2 %} -{% data reusables.codespaces.port-forwarding-adding-non-jetbrains %} -{% data reusables.codespaces.port-forwarding-labeling-non-jetbrains %} +{% data reusables.codespaces.port-forwarding-adding %} +{% data reusables.codespaces.port-forwarding-labeling %} ### Seeing port labels on the command line You can see the port labels when you list the forwarded ports for a codespace. To do this, use the `gh codespace ports` command and then select a codespace. {% endcli %} - -{% jetbrains_beta %} - -## Forwarding a port - -For information on how to forward a port in a codespace to a port on your local machine, see the "Port forwarding" section of the [Security model](https://www.jetbrains.com/help/idea/security-model.html#port_forwarding) article in the JetBrains documentation. - -Alternatively, you can use {% data variables.product.prodname_cli %} to forward a port. For more information, click the "{% data variables.product.prodname_cli %}" tab at the top of this page. - -{% endjetbrains_beta %} diff --git a/content/codespaces/developing-in-a-codespace/index.md b/content/codespaces/developing-in-a-codespace/index.md index f4b62050b870..f8f54b7daa68 100644 --- a/content/codespaces/developing-in-a-codespace/index.md +++ b/content/codespaces/developing-in-a-codespace/index.md @@ -23,7 +23,6 @@ children: - /connecting-to-a-private-network - /getting-started-with-github-codespaces-for-machine-learning - /using-github-codespaces-in-visual-studio-code - - /using-github-codespaces-in-your-jetbrains-ide - /using-github-codespaces-with-github-cli redirect_from: - /codespaces/developing-in-codespaces diff --git a/content/codespaces/developing-in-a-codespace/opening-an-existing-codespace.md b/content/codespaces/developing-in-a-codespace/opening-an-existing-codespace.md index f9bc037f85b3..d67193f68998 100644 --- a/content/codespaces/developing-in-a-codespace/opening-an-existing-codespace.md +++ b/content/codespaces/developing-in-a-codespace/opening-an-existing-codespace.md @@ -20,13 +20,7 @@ redirect_from: {% endif %} -{% jetbrains_beta %} - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -{% endjetbrains_beta %} - -You can reopen any of your active or stopped codespaces on {% data variables.product.github %}, in a JetBrains IDE, in {% data variables.product.prodname_vscode %}, or by using {% data variables.product.prodname_cli %}. You can't reopen a codespace that has been deleted. See [AUTOTITLE](/codespaces/getting-started/understanding-the-codespace-lifecycle). +You can reopen any of your active or stopped codespaces on {% data variables.product.github %}, in {% data variables.product.prodname_vscode %}, or by using {% data variables.product.prodname_cli %}. You can't reopen a codespace that has been deleted. See [AUTOTITLE](/codespaces/getting-started/understanding-the-codespace-lifecycle). You can view all your codespaces on the "Your codespaces" page at [github.com/codespaces](https://github.com/codespaces). From this page, you can: @@ -73,7 +67,6 @@ You can bookmark the address of this page if you want to get back to it quickly You can open the codespace in: * Your browser * {% data variables.product.prodname_vscode %} - * JetBrains Gateway * JupyterLab {% data reusables.codespaces.application-installed-locally %} @@ -153,14 +146,6 @@ See [`gh codespace code`](https://cli.github.com/manual/gh_codespace_code) in th {% endcli %} -{% jetbrains_beta %} - -## Reopening an existing codespace - -{% data reusables.codespaces.opening-codespace-in-jetbrains %} - -{% endjetbrains_beta %} - ## Further reading * [AUTOTITLE](/rest/codespaces/organizations) diff --git a/content/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace.md b/content/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace.md index c7a8fb1777bf..67ce5dbbbb28 100644 --- a/content/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace.md +++ b/content/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace.md @@ -14,12 +14,6 @@ redirect_from: - /codespaces/developing-in-codespaces/stopping-and-starting-a-codespace --- -{% jetbrains_beta %} - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -{% endjetbrains_beta %} - ## About stopping and starting a codespace {% data reusables.codespaces.stopping-a-codespace %} @@ -58,12 +52,6 @@ gh codespace stop {% endvscode %} -{% jetbrains_beta %} - -You can stop a codespace from the "Your codespaces" page (see [the web browser instructions](/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace?tool=webui#stopping-a-codespace)) or by using {% data variables.product.prodname_cli %} (see [the CLI instructions](/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace?tool=cli#stopping-a-codespace)). - -{% endjetbrains_beta %} - ## Restarting a codespace {% webui %} @@ -101,12 +89,6 @@ When you restart a codespace you can choose to open it in {% data variables.prod {% endvscode %} -{% jetbrains_beta %} - -{% data reusables.codespaces.opening-codespace-in-jetbrains %} - -{% endjetbrains_beta %} - ## Further reading * [AUTOTITLE](/codespaces/getting-started/understanding-the-codespace-lifecycle) diff --git a/content/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide.md b/content/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide.md deleted file mode 100644 index e567ed87728d..000000000000 --- a/content/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide.md +++ /dev/null @@ -1,121 +0,0 @@ ---- -title: Using GitHub Codespaces in your JetBrains IDE -shortTitle: JetBrains IDEs -intro: You can use the JetBrains Gateway to connect to your codespace and work in your favorite JetBrains IDE. -versions: - fpt: '*' - ghec: '*' -type: how_to -topics: - - Codespaces - - Developer -redirect_from: - - /codespaces/developing-in-codespaces/using-github-codespaces-in-your-jetbrains-ide ---- - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -## About {% data variables.product.prodname_codespaces %} in JetBrains IDEs - -If you use a JetBrains IDE to work on your code, you can take advantage of working in a codespace. You do this by using the JetBrains Gateway application. - -After installing the JetBrains Gateway, you can set JetBrains as your default editor for {% data variables.product.prodname_codespaces %}. If you do, then whenever you open a codespace from {% data variables.product.github %}, the JetBrains Gateway will launch to allow you to choose your JetBrains IDE and connect to the codespace. - -When you work in a codespace, you use the JetBrains thin client application on your local computer. This provides the graphical interface for the full JetBrains IDE of your choice, which runs on the remote virtual machine that hosts your codespace. The thin client is always used, even if the full JetBrains IDE is installed locally. Any local JetBrains IDE settings are imported and used by the thin client. - -> [!NOTE] -> Only existing codespaces are available in the JetBrains Gateway. You can create codespaces in {% data variables.product.github %}, or by using {% data variables.product.prodname_cli %}. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository). - -### The JetBrains remote development connection process - -The basic process behind using a codespace in your JetBrains IDE is as follows. -1. In the JetBrains Gateway application you select one of your active or stopped codespaces. -1. You then choose which JetBrains IDE you want to use. -1. The selected JetBrains IDE is then downloaded to the remote virtual machine that hosts your codespace and source code. -1. The JetBrains thin client application is then downloaded to your local machine and started. -1. The client application connects to the full backend IDE. -1. You can work on your code in the client application in just the same way you would in a local environment. - -## Prerequisites - -To work in a codespace in a JetBrains IDE you need: - -* A valid JetBrains license -* The JetBrains Gateway application, versions 2023.3.\* or 2024.1.\* -* An existing codespace running on a virtual machine that has at least 4 cores. The codespace must also be running an SSH server. For more information, see [Codespace running an SSH server](#codespace-running-an-ssh-server). - -### JetBrains license - -You must have a JetBrains license that supports the IDE you choose in the JetBrains Gateway. - -### JetBrains Gateway - -You can install and update the JetBrains Gateway from the JetBrains Toolbox application. - -1. Download and install the [JetBrains Toolbox](https://www.jetbrains.com/toolbox-app). -1. Open the JetBrains Toolbox. -1. Find **Gateway** in the list of available tools. - - ![Screenshot of the JetBrains Toolbox with "Gateway" at the bottom of the list of applications. Each application has an "Install" button next to it.](/assets/images/help/codespaces/jetbrains-toolbox.png) - -1. To the right of **Gateway**, click the ellipsis (**...**), then click **Available versions**. -1. In the list of versions, beside a supported version (see [Prerequisites](#prerequisites)), click **Install**. - -### Codespace running an SSH server - -You must have an existing codespace to connect to, and the virtual machine that hosts the codespace must have at least 4 cores. {% data reusables.codespaces.ways-to-create-a-codespace %} For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/creating-a-codespace-for-a-repository). - -{% data reusables.codespaces.ssh-server-installed %} - -For more information about the `devcontainer.json` file and the default container image, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers). - -> [!NOTE] -> For help with connecting to your codespace over SSH, see [AUTOTITLE](/codespaces/troubleshooting/troubleshooting-github-codespaces-clients?tool=jetbrains#ssh-connection-issues). - -## Setting up the JetBrains Gateway - -The first time you use JetBrains Gateway for {% data variables.product.prodname_github_codespaces %}, you must install the {% data variables.product.prodname_codespaces %} plugin. You must also allow the JetBrains Gateway to access {% data variables.product.github %} using your {% data variables.product.prodname_dotcom %} account. - -1. Open the JetBrains Toolbox application. -1. In the list of installed tools, click **Gateway**. -1. Under **Install More Providers** click the **Install** link for {% data variables.product.prodname_github_codespaces %}. - - ![Screenshot of the "Welcome to JetBrains Gateway" page, with "{% data variables.product.prodname_github_codespaces %}" listed under "Install More Providers."](/assets/images/help/codespaces/jetbrains-gateway-initial-view.png) - -1. Click **Connect to Codespace**. - - ![Screenshot of the Gateway with the "Connect to {% data variables.product.prodname_codespaces %}" button.](/assets/images/help/codespaces/jetbrains-gateway-connect.png) - -1. The first time you connect, you're prompted to choose whether you want to allow {% data variables.product.prodname_dotcom %} to collect anonymized usage data, to improve functionality and user experience. Click **Allow** or **Deny**. - - You can change your choice later, if required, in the settings for the {% data variables.product.prodname_github_codespaces %} plugin, which you can access within the JetBrains Gateway settings. - -1. In the "Welcome to JetBrains Gateway" dialog, click **Sign In with {% data variables.product.prodname_dotcom %}**. -1. Click the icon beside the one-time code to copy it. - - ![Screenshot of a one-time login code. The copy icon beside the code is highlighted with a dark orange outline.](/assets/images/help/codespaces/jetbrains-gateway-login-code.png) - -1. Click the login link, below the login code. -1. If you are not currently signed in to {% data variables.product.prodname_dotcom %}, the sign-in page is displayed. - * Enter your details and click **Sign in**. - * Verify your authentication, for example by entering a two-factor authentication code. -1. On the "Device activation" page, paste the copied code and click **Continue**. -1. If you belong to organizations, the "Single sign-on to your organizations" page is displayed. Click **Authorize** beside the organizations you want to authorize the JetBrains Gateway to access, then click **Continue**. -1. On the "Authorize {% data variables.product.prodname_github_codespaces %} for JetBrains" page, click **Authorize {% data variables.product.prodname_dotcom %}**. -1. Return to the JetBrains Gateway application and open a codespace from the list of your currently active or stopped codespaces, see step 3 of the following procedure. - -## Opening a codespace in your JetBrains IDE - -{% data reusables.codespaces.opening-codespace-in-jetbrains %} - - The first time you connect to a codespace, the backend IDE will be downloaded to the remote machine. This may take a few minutes. The next time you connect to the same codespace this step won't be necessary, making the connection process quicker. - - The backend IDE is then started. Again, this step will not be required in future if you are reconnecting to a backend IDE that you have left running. - - The client application is then launched. - -## Further reading - -* [AUTOTITLE](/codespaces/developing-in-a-codespace/developing-in-a-codespace) -* [AUTOTITLE](/codespaces/reference/using-the-github-codespaces-plugin-for-jetbrains) -* [AUTOTITLE](/codespaces/troubleshooting/troubleshooting-github-codespaces-clients?tool=jetbrains) diff --git a/content/codespaces/developing-in-a-codespace/using-source-control-in-your-codespace.md b/content/codespaces/developing-in-a-codespace/using-source-control-in-your-codespace.md index 611c33798b46..c7fb357f6285 100644 --- a/content/codespaces/developing-in-a-codespace/using-source-control-in-your-codespace.md +++ b/content/codespaces/developing-in-a-codespace/using-source-control-in-your-codespace.md @@ -14,12 +14,6 @@ redirect_from: - /codespaces/developing-in-codespaces/using-source-control-in-your-codespace --- -{% jetbrains_beta %} - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -{% endjetbrains_beta %} - ## About source control in {% data variables.product.prodname_github_codespaces %} You can perform all the Git actions you need directly within your codespace. For example, you can fetch changes from a remote repository, switch branches, create a new branch, commit and push changes, and create a pull request. You can use the integrated terminal within your codespace to enter Git commands, or you can click icons and menu options to complete all the most common Git tasks. This guide explains how to use the graphical user interface for source control. @@ -55,7 +49,7 @@ You do not need to fork the repository before you create the codespace. For exam If you make a commit from the codespace, or push a new branch, {% data variables.product.prodname_github_codespaces %} either creates a fork of the repository under your account and links it to your codespace, or it links your codespace to an existing fork if you already have one for the repository. You can then push your changes to the fork and create a pull request to propose the changes to the upstream repository. -If you make a commit from the command line, you will see a prompt asking if you would like to proceed with linking your codespace to a new or existing fork. Enter `y` to proceed. If you commit changes from the **Source Control** view in {% data variables.product.prodname_vscode_shortname %}, or from the navigation bar in a JetBrains IDE, your codespace is automatically linked to a fork without you being prompted. +If you make a commit from the command line, you will see a prompt asking if you would like to proceed with linking your codespace to a new or existing fork. Enter `y` to proceed. If you commit changes from the **Source Control** view in {% data variables.product.prodname_vscode_shortname %}, your codespace is automatically linked to a fork without you being prompted. > [!NOTE] > * If you delete your fork repository, then any codespaces linked to the fork are deleted, even if you originally created them from the upstream repository. @@ -91,66 +85,3 @@ For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-req {% data reusables.codespaces.source-control %} {% endvscode %} - -{% jetbrains_beta %} - -## Creating or switching branches - -1. Click the branch name at the right side of the status bar. - - ![Screenshot of the status bar, with the tooltip for the branch name displayed. The branch icon and name, "main," are highlighted with a dark orange outline.](/assets/images/help/codespaces/jetbrains-branch-button.png) - -1. In the pop-up menu, do one of the following: - * **To create a new branch based on the current branch**, click **New Branch**. - - ![Screenshot of the branches pop-up menu with the "New Branch" option selected.](/assets/images/help/codespaces/jetbrains-new-branch-option.png) - - Enter a name for the new branch and click **Create**. - - ![Screenshot of the "Create New Branch" dialog, with "Create" and "Cancel" buttons. "my-branch" has been entered as a branch name.](/assets/images/help/codespaces/jetbrains-create-branch-dialog.png) - - * **To check out an existing branch**, start typing the name of the branch you want to check out. Click the branch from the list, then click **Checkout**. - - ![Screenshot of the branches pop-up menu with the "origin/templates" branch selected and "Checkout" selected in the submenu.](/assets/images/help/codespaces/jetbrains-checkout-submenu.png) - - > [!TIP] - > If someone has recently changed a file on the remote repository, in the branch you switched to, you may not see those changes until you pull the changes into your codespace. - -## Committing your changes - -1. At the right side of the navigation bar, click the check mark. - - ![Screenshot of the navigation bar at the top of the JetBrains client. The check mark icon for committing your changes is highlighted.](/assets/images/help/codespaces/jetbrains-commit-button.png) - -1. In the Commit Changes dialog, enter a commit message. -1. Click **Commit**. - - Alternatively, click the down arrow beside **Commit** and click **Commit and Push**. - - ![Screenshot of the "Commit Changes" dialog showing the "Commit and Push" button.](/assets/images/help/codespaces/jetbrains-commit-and-push.png) - -## Pulling changes from the remote repository - -You can pull changes from the same branch on the remote repository and apply those changes to the copy of the repository you are working on in your codespace. - -1. At the right side of the navigation bar, click the downward pointing arrow. - - ![Screenshot of the navigation bar at the top of the JetBrains client. The downward arrow icon is highlighted with a dark orange outline.](/assets/images/help/codespaces/jetbrains-update-project-button.png) - -1. In the Update Project dialog, choose whether you want to merge or rebase the incoming changes. - - ![Screenshot of the "Update Project" dialog with options to merge or rebase, and a "Don't show again" checkbox.](/assets/images/help/codespaces/jetbrains-update-options.png) - -1. Click **OK**. - -## Pushing changes to your remote repository - -You can push changes you've saved and committed. This applies those changes to the upstream branch on the remote repository. You might want to do this if you're not yet ready to create a pull request, or if you prefer to create a pull request on {% data variables.product.prodname_dotcom %}. - -1. At the right side of the navigation bar, click the upward pointing arrow. - - ![Screenshot of the navigation bar at the top of the JetBrains client. The upward arrow icon is highlighted with a dark orange outline.](/assets/images/help/codespaces/jetbrains-push-button.png) - -1. In the Push Commits dialog, click **Push**. - -{% endjetbrains_beta %} diff --git a/content/codespaces/getting-started/deep-dive.md b/content/codespaces/getting-started/deep-dive.md index f55b168176aa..e7cbc28eef74 100644 --- a/content/codespaces/getting-started/deep-dive.md +++ b/content/codespaces/getting-started/deep-dive.md @@ -56,7 +56,6 @@ When your container has been created and any other initialization has run, you'l * Your web browser * [{% data variables.product.prodname_vscode %}](/codespaces/developing-in-a-codespace/using-github-codespaces-in-visual-studio-code) -* [A JetBrains IDE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide) * [{% data variables.product.prodname_cli %}](/codespaces/developing-in-a-codespace/using-github-codespaces-with-github-cli) ### Step 4: Post-creation setup @@ -89,7 +88,6 @@ To stop your codespace you can * In the browser: on your list of codespaces at [https://github.com/codespaces](https://github.com/codespaces), click the ellipsis (**...**) to the right of the codespace you want to stop and click **Stop codespace**. * In {% data variables.product.prodname_vscode_shortname %}: open the {% data variables.product.prodname_vscode_command_palette %} - for example, by pressing Ctrl+Shift+P (Windows/Linux) or Shift+Command+P (Mac) - type `Codespaces: stop` then press Enter. For more information, see [AUTOTITLE](/codespaces/reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace). -* In the JetBrains client, click the stop button at the top of the {% data variables.product.prodname_github_codespaces %} tool window. For more information, see the "JetBrains IDEs" tab of [AUTOTITLE](/codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace). * In a terminal window: use the {% data variables.product.prodname_cli %} command `gh codespace stop`. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-with-github-cli#gh-commands-for-github-codespaces). If you exit your codespace without running the stop command (for example, by closing the browser tab), or if you leave the codespace running without interaction, the codespace and its running processes will continue for the duration of the inactivity timeout period. @@ -112,7 +110,7 @@ Running your application when you first land in your codespace can make for a fa ## Committing and pushing your changes -Git is installed by default in your codespace and so you can rely on your existing Git workflow. You can work with Git in your codespace either via the Terminal or by using the source control features of {% data variables.product.prodname_vscode_shortname %} or JetBrains. +Git is installed by default in your codespace and so you can rely on your existing Git workflow. You can work with Git in your codespace either via the Terminal or by using the source control features of {% data variables.product.prodname_vscode_shortname %}. If you're working with an existing repository, you can create a codespace from any branch, commit, or pull request in the repository, or you can switch to a new or existing branch from within your active codespace. Because {% data variables.product.prodname_github_codespaces %} is designed to be ephemeral, you can use it as an isolated environment to experiment, check a teammate's pull request, or fix merge conflicts. @@ -125,9 +123,9 @@ For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/usin > [!NOTE] > Commits from your codespace will be attributed to the name and public email configured at https://github.com/settings/profile. A token scoped to the repository, included in the environment as `GITHUB_TOKEN`, and your GitHub credentials will be used to authenticate. -## Personalizing your codespace with extensions or plugins +## Personalizing your codespace with extensions -You can add plugins and extensions within a codespace to personalize your experience in JetBrains and {% data variables.product.prodname_vscode_shortname %} respectively. +You can add extensions within a codespace to personalize your experience in {% data variables.product.prodname_vscode_shortname %}. ### {% data variables.product.prodname_vscode_shortname %} extensions @@ -135,18 +133,6 @@ If you work on your codespaces in the {% data variables.product.prodname_vscode_ If you already use {% data variables.product.prodname_vscode_shortname %}, you can use [Settings Sync](https://code.visualstudio.com/docs/editor/settings-sync) to automatically sync extensions, settings, themes, and keyboard shortcuts between your local instance and any codespaces you create. -### JetBrains plugins - -If you work on your codespaces in a JetBrains IDE, you can add plugins from the JetBrains Marketplace. - -1. Click **JetBrains Client**, then click **Preferences**. -1. In the Preferences dialog, click either **Plugins On Host** to install a plugin in the full JetBrains IDE that's running remotely, or **Plugins** to install a plugin on the local client, for example to change the user interface theme. -1. Click the **Marketplace** tab. - - ![Screenshot of the "Preferences" dialog, with the "Marketplace" tab displayed. The "Plugins On Host" option is highlighted with a dark orange outline.](/assets/images/help/codespaces/jetbrains-preferences-plugins.png) - -1. Click **Install** beside the required plugin. - ## About the directory structure of a codespace {% data reusables.codespaces.workspaces-directory %} For more information on the `/tmp` directory, see [AUTOTITLE](/codespaces/developing-in-a-codespace/persisting-environment-variables-and-temporary-files#preventing-temporary-files-from-being-automatically-deleted). diff --git a/content/codespaces/getting-started/quickstart.md b/content/codespaces/getting-started/quickstart.md index 9a9b9695893b..451d6fd2c788 100644 --- a/content/codespaces/getting-started/quickstart.md +++ b/content/codespaces/getting-started/quickstart.md @@ -71,7 +71,7 @@ Now that you've made a few changes, you can use the integrated terminal or the s 1. To commit your staged changes, type a commit message describing the change you've made, then click **Commit**. - ![Screenshot of the "Source control" side bar. A commit message, with "Change haiku text and styles" entered, and the "Commit" button are highlighted with an orange outline.](/assets/images/help/codespaces/vscode-commit-button.png) + ![Screenshot of the "Source control" side bar. The commit message, "Change haiku text and styles," and the "Commit" button are outlined in orange.](/assets/images/help/codespaces/vscode-commit-button.png) 1. Click **Publish Branch**. @@ -96,7 +96,7 @@ When you connect to a codespace using the browser, or the {% data variables.prod 1. In the search bar, type `fairyfloss` and click **Install**. - ![Screenshot of the "Extensions: Marketplace" side bar. "fairyfloss" is entered into the search box and, below it, the "fairyfloss" extension is displayed, with an "Install" button.](/assets/images/help/codespaces/add-extension.png) + ![Screenshot of "Extensions: Marketplace". The search box shows "fairyfloss." The results show the "fairyfloss" extension with an "Install" button.](/assets/images/help/codespaces/add-extension.png) 1. Select the `fairyfloss` theme by selecting it from the list. @@ -118,7 +118,6 @@ You've successfully created, personalized, and run your first application within * [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization) * [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-visual-studio-code) -* [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide) * [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-with-github-cli) * [AUTOTITLE](/codespaces/setting-your-user-preferences/setting-your-default-editor-for-github-codespaces). * [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/managing-the-cost-of-github-codespaces-in-your-organization) diff --git a/content/codespaces/guides.md b/content/codespaces/guides.md index 396ec7aa2708..a79512d9fca4 100644 --- a/content/codespaces/guides.md +++ b/content/codespaces/guides.md @@ -32,7 +32,6 @@ includeGuides: - /codespaces/developing-in-a-codespace/stopping-and-starting-a-codespace - /codespaces/developing-in-a-codespace/working-collaboratively-in-a-codespace - /codespaces/developing-in-a-codespace/using-github-codespaces-in-visual-studio-code - - /codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide - /codespaces/developing-in-a-codespace/using-github-codespaces-with-github-cli - /codespaces/developing-in-a-codespace/using-source-control-in-your-codespace - /codespaces/developing-in-a-codespace/using-github-codespaces-for-pull-requests diff --git a/content/codespaces/index.md b/content/codespaces/index.md index 32c007c711d9..0b7711367643 100644 --- a/content/codespaces/index.md +++ b/content/codespaces/index.md @@ -19,7 +19,6 @@ featuredLinks: - /codespaces/developing-in-a-codespace/opening-an-existing-codespace - /codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account - /codespaces/developing-in-a-codespace/using-github-codespaces-in-visual-studio-code - - /codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide popular: - /codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/setting-up-your-nodejs-project-for-codespaces - /codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/setting-up-your-python-project-for-codespaces @@ -37,6 +36,8 @@ communityRedirect: redirect_from: - /github/developing-online-with-github-codespaces - /github/developing-online-with-codespaces + - /codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide + - /codespaces/reference/using-the-github-codespaces-plugin-for-jetbrains layout: product-landing versions: fpt: '*' diff --git a/content/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization.md b/content/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization.md index 36161b776c18..60791b59aea4 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization.md +++ b/content/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization.md @@ -39,7 +39,7 @@ Only people who can either push changes to a repository, or fork the repository, In addition, to allow users to create codespaces, you must ensure that{% ifversion ghec %}: * Your enterprise does not use OIDC with CAP. For more information, see [AUTOTITLE](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy). -* Your{% else %} your{% endif %} organization does not have an IP address allow list enabled. For more information, see "[Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +* Your{% else %} your{% endif %} organization does not have an IP address allow list enabled. For more information, see [Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} {% ifversion fpt %} diff --git a/content/codespaces/overview.md b/content/codespaces/overview.md index 1dcfbf5ad2bf..a09ecb8c5992 100644 --- a/content/codespaces/overview.md +++ b/content/codespaces/overview.md @@ -31,7 +31,7 @@ Each codespace you create is hosted by {% data variables.product.prodname_dotcom By default, the codespace development environment is created from an Ubuntu Linux image that includes a selection of popular languages and tools, but you can use an image based on a Linux distribution of your choice and configure it for your particular requirements. Regardless of your local operating system, your codespace will run in a Linux environment. Windows and macOS are not supported operating systems for the remote development container. -You can connect to your codespaces from your browser, from {% data variables.product.prodname_vscode %}, from the JetBrains Gateway application, or by using {% data variables.product.prodname_cli %}. When you connect, you are placed within the Docker container. You have limited access to the outer Linux virtual machine host. +You can connect to your codespaces from your browser, from {% data variables.product.prodname_vscode %}, or by using {% data variables.product.prodname_cli %}. When you connect, you are placed within the Docker container. You have limited access to the outer Linux virtual machine host. ![Diagram showing the relationship between a code editor and a codespace running on an Azure virtual machine.](/assets/images/help/codespaces/codespaces-diagram.png) diff --git a/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md b/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md index ef16057d7cbb..d2ca26aec6c9 100644 --- a/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md +++ b/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md @@ -69,7 +69,7 @@ Disabling the workflow runs for a prebuild configuration is useful if you need t 1. On the {% data variables.product.prodname_codespaces %} page of your repository settings, click the ellipsis to the right of the prebuild configuration you want to disable. 1. In the dropdown menu, click **Disable runs**. - ![Screenshot of the options dropdown menu for a configuration, shown by clicking a button labeled with three dots. The "Disable runs" option is selected.](/assets/images/help/codespaces/prebuilds-disable.png) + ![Screenshot of the prebuild configuration dropdown menu, shown by clicking a button labeled with three dots. The "Disable runs" option is selected.](/assets/images/help/codespaces/prebuilds-disable.png) 1. To confirm that you want to disable this configuration, click **OK**. @@ -85,7 +85,7 @@ After you delete a prebuild configuration, workflow runs for that configuration 1. On the {% data variables.product.prodname_codespaces %} page of your repository settings, click the ellipsis to the right of the prebuild configuration you want to delete. 1. In the dropdown menu, click **Delete**. - ![Screenshot of the options dropdown menu for a configuration, displayed by clicking a button labeled with three dots. The "Delete" option is selected.](/assets/images/help/codespaces/prebuilds-delete.png) + ![Screenshot of the prebuild configuration dropdown menu, displayed by clicking a button labeled with three dots. The "Delete" option is selected.](/assets/images/help/codespaces/prebuilds-delete.png) 1. Click **OK** to confirm the deletion. @@ -96,7 +96,7 @@ It may be useful to manually trigger a workflow run for a prebuild configuration 1. On the {% data variables.product.prodname_codespaces %} page of your repository settings, click the ellipsis to the right of the prebuild configuration whose workflow you want to trigger. 1. In the dropdown menu, click **Manually trigger**. - ![Screenshot of the options dropdown menu for a configuration, shown by clicking a button labeled with three dots. The "Manually trigger" option is selected.](/assets/images/help/codespaces/prebuilds-manually-trigger.png) + ![Screenshot of the prebuild configuration dropdown menu, shown by clicking a button labeled with three dots. The "Manually trigger" option is selected.](/assets/images/help/codespaces/prebuilds-manually-trigger.png) ## Further reading diff --git a/content/codespaces/reference/index.md b/content/codespaces/reference/index.md index 5df97e3f838f..dc25d253d4c0 100644 --- a/content/codespaces/reference/index.md +++ b/content/codespaces/reference/index.md @@ -7,11 +7,9 @@ versions: children: - /allowing-your-codespace-to-access-a-private-registry - /using-github-copilot-in-github-codespaces - - /using-the-github-codespaces-plugin-for-jetbrains - /using-the-vs-code-command-palette-in-codespaces - /security-in-github-codespaces - /disaster-recovery-for-github-codespaces redirect_from: - /codespaces/codespaces-reference --- - diff --git a/content/codespaces/reference/using-the-github-codespaces-plugin-for-jetbrains.md b/content/codespaces/reference/using-the-github-codespaces-plugin-for-jetbrains.md deleted file mode 100644 index e54e3d97d696..000000000000 --- a/content/codespaces/reference/using-the-github-codespaces-plugin-for-jetbrains.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Using the GitHub Codespaces plugin for JetBrains -shortTitle: Plugin for JetBrains -intro: 'You can use the {% data variables.product.prodname_github_codespaces %} plugin for the JetBrains client application to find out about your codespace or to stop your codespace when you''ve finished working.' -versions: - fpt: '*' - ghec: '*' -type: reference -topics: - - Codespaces -redirect_from: - - /codespaces/codespaces-reference/using-the-github-codespaces-plugin-for-jetbrains ---- - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -## About the {% data variables.product.prodname_github_codespaces %} plugin - -The JetBrains client application is launched when you connect to a codespace from the JetBrains Gateway application. It allows you to use {% data variables.product.prodname_github_codespaces %} with your favorite JetBrains IDE. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide). - -The {% data variables.product.prodname_github_codespaces %} plugin is already installed in the JetBrains client when you connect to a codespace from the JetBrains Gateway. The plugin adds the {% data variables.product.prodname_github_codespaces %} tool window to the user interface. - -Click **{% data variables.product.prodname_github_codespaces %}** at the bottom left of the JetBrains client's application window to open the {% data variables.product.prodname_github_codespaces %} tool window. - -![Screenshot of the {% data variables.product.prodname_github_codespaces %} tool window. The "{% data variables.product.prodname_github_codespaces %}" tool window selector is highlighted with an orange outline.](/assets/images/help/codespaces/jetbrains-codespaces-tool-window.png) - -## Using the {% data variables.product.prodname_github_codespaces %} tool window - -The {% data variables.product.prodname_github_codespaces %} tool window shows: -* The repository from which you created this codespace -* The display name of the codespace -* The current branch -* The machine specifications -* The time for which this codespace can remain idle before it is automatically stopped -* The age of the codespace -* The period for which a stopped codespace will be retained before it is automatically deleted - -The icons at the top of the {% data variables.product.prodname_github_codespaces %} tool window provide the following functions. - -* **Refresh active codespace** - - ![Screenshot of the {% data variables.product.prodname_github_codespaces %} tool window. A refresh icon, which refreshes the active code space, is highlighted.](/assets/images/help/codespaces/jetbrains-plugin-icon-refresh.png) - - Refresh the details in the {% data variables.product.prodname_github_codespaces %} tool window. For example, if you used {% data variables.product.prodname_cli %} to change the display name, you could click this button to show the new name. - -* **Manage your codespaces from the web** - - ![Screenshot of the {% data variables.product.prodname_github_codespaces %} tool window. A world icon, which manages {% data variables.product.prodname_github_codespaces %} from the web, is highlighted.](/assets/images/help/codespaces/jetbrains-plugin-icon-index.png) - - Open your list of codespaces at https://github.com/codespaces. - -* **View the codespace creation log** - - ![Screenshot of the {% data variables.product.prodname_github_codespaces %} tool window. A document icon, which allows you to view a code space creation log, is highlighted.](/assets/images/help/codespaces/jetbrains-plugin-icon-log.png) - - Open the codespace creation log in the editor window. For more information, see [AUTOTITLE](/codespaces/troubleshooting/github-codespaces-logs). diff --git a/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers.md b/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers.md index 7f01de2f4ae9..6c194a36c7ed 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers.md @@ -146,7 +146,7 @@ You can add a predefined dev container configuration either while working in a c 1. Click the definition you want to use. - ![Screenshot of the "Add Development Container Configuration Files" menu with the dropdown showing options such as "Alpine," "C# (.NET)," "C++," and "Debian."](/assets/images/help/codespaces/predefined-container-definitions-list.png) + ![Screenshot of the "Add Development Container Configuration Files" menu showing options such as "Alpine," "C# (.NET)," "C++," and "Debian."](/assets/images/help/codespaces/predefined-container-definitions-list.png) 1. Follow the prompts to customize your definition. 1. Click **OK**. diff --git a/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/setting-up-your-java-project-for-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/setting-up-your-java-project-for-codespaces.md index 70c49ab8c855..3c53bcdf7456 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/setting-up-your-java-project-for-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/setting-up-your-java-project-for-codespaces.md @@ -186,7 +186,7 @@ With your dev container configuration added and a basic understanding of what ev 1. Run the application by pressing `F5`. 1. If a "toast" notification message is displayed at the bottom right corner of {% data variables.product.prodname_vscode_shortname %}, asking whether you want to switch to standard mode, click **Yes**. - ![Screenshot of a popup message: "Run/Debug feature requires Java language server to run in Standard mode. Do you want to switch it to Standard mode now?"](/assets/images/help/codespaces/switch-to-standard-mode.png) + ![Screenshot of the message: "Run/Debug feature requires Java language server to run in Standard mode. Do you want to switch it to Standard mode now?"](/assets/images/help/codespaces/switch-to-standard-mode.png) 1. When the project files have been imported, click the **Debug Console** tab to see the program output. diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-repository/facilitating-quick-creation-and-resumption-of-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-repository/facilitating-quick-creation-and-resumption-of-codespaces.md index b0b28ace1472..bb9f241a1278 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-repository/facilitating-quick-creation-and-resumption-of-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-repository/facilitating-quick-creation-and-resumption-of-codespaces.md @@ -43,7 +43,7 @@ You can use the "Share a deep link" option to configure more options for the cod {% data reusables.repositories.navigate-to-repo %} 1. If you want to create a link for a branch other than the repository's default branch, under the repository name, click the button labeled with the name of the current branch. In the dropdown menu, select the branch for which you want to create a link. - ![Screenshot of the expanded branch dropdown menu, listing various branches. The dropdown menu, labeled with a branch icon and "trunk," is highlighted with a dark orange outline.](/assets/images/help/codespaces/branch-drop-down.png) + ![Screenshot of the branch dropdown menu, listing various branches. The dropdown menu, labeled with a branch icon and "trunk," is outlined in orange.](/assets/images/help/codespaces/branch-drop-down.png) 1. Click the **{% octicon "code" aria-hidden="true" %} Code** button, then click the **Codespaces** tab. 1. To open the "Share codespace configuration" window, at the top right of the **Codespaces** tab, select {% octicon "kebab-horizontal" aria-label="Codespace repository configuration" %}, then click **Share a deep link**. @@ -94,4 +94,4 @@ This type of URL is useful, for instance, in a README for your repository as it The example Markdown is rendered like this: - [![Open in GitHub Codespaces.](https://github.com/codespaces/badge.svg)](https://codespaces.new/github/docs) + [![Open in GitHub Codespaces.](https://github.com/codespaces/badge.svg)](https://codespaces.new/github/docs) diff --git a/content/codespaces/setting-your-user-preferences/setting-your-default-editor-for-github-codespaces.md b/content/codespaces/setting-your-user-preferences/setting-your-default-editor-for-github-codespaces.md index dc78611be260..5eb31f1c3b26 100644 --- a/content/codespaces/setting-your-user-preferences/setting-your-default-editor-for-github-codespaces.md +++ b/content/codespaces/setting-your-user-preferences/setting-your-default-editor-for-github-codespaces.md @@ -17,15 +17,12 @@ type: how_to On the settings page, you can set your editor preference so that when you create a codespace, or open an existing codespace, it is opened in your choice of: * {% data variables.product.prodname_vscode %} (desktop application) * {% data variables.product.prodname_vscode %} (web client application) -* JetBrains Gateway - for opening codespaces in a JetBrains IDE * JupyterLab - the web interface for Project Jupyter {% data reusables.codespaces.template-codespaces-default-editor %} If you want to use {% data variables.product.prodname_vscode %} as your default editor for {% data variables.product.prodname_github_codespaces %}, you need to install {% data variables.product.prodname_vscode %} and the {% data variables.product.prodname_github_codespaces %} extension for {% data variables.product.prodname_vscode %}. For more information, see the [download page for {% data variables.product.prodname_vscode %}](https://code.visualstudio.com/download/) and the [{% data variables.product.prodname_github_codespaces %} extension on the {% data variables.product.prodname_vscode %} marketplace](https://marketplace.visualstudio.com/items?itemName=GitHub.codespaces). -If you want to work on a codespace in a JetBrains IDE you must install the JetBrains Gateway. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide). - ## Setting your default editor {% data reusables.user-settings.access_settings %} @@ -40,14 +37,6 @@ If you want to work on a codespace in a JetBrains IDE you must install the JetBr You may need to allow access to both your browser and {% data variables.product.prodname_vscode %} for it to open successfully.

    - * If you choose **JetBrains Gateway**, the Gateway application will automatically open when you next create or open a codespace. - - The first time you open a codespace this way you must give permission to open the application. - - The Gateway application will open and the codespace will then be automatically selected. You can then choose a JetBrains IDE, if you have not previously done so, and click **Connect** to open the codespace in the JetBrains client. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide). - - To connect to a codespace from the Gateway application, you must have an SSH server running on the codespace. {% indented_data_reference reusables.codespaces.ssh-server-installed spaces=5 %} - * If you choose **JupyterLab**, the JupyterLab application must be installed in the codespaces you open. {% data reusables.codespaces.jupyterlab-in-default-image %} ## Further reading diff --git a/content/codespaces/troubleshooting/github-codespaces-logs.md b/content/codespaces/troubleshooting/github-codespaces-logs.md index 69be947f6348..5fca4f6e4006 100644 --- a/content/codespaces/troubleshooting/github-codespaces-logs.md +++ b/content/codespaces/troubleshooting/github-codespaces-logs.md @@ -13,12 +13,6 @@ redirect_from: - /codespaces/troubleshooting/codespaces-logs --- -{% jetbrains_beta %} - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -{% endjetbrains_beta %} - Information on {% data variables.product.prodname_github_codespaces %} is output to various logs: {% webui %} @@ -50,14 +44,6 @@ Other logs are available if you are using {% data variables.product.prodname_git {% endcli %} -{% jetbrains_beta %} - -* Creation logs - -Other logs are available if you are using {% data variables.product.prodname_github_codespaces %} in {% data variables.product.prodname_vscode_shortname %} or in your web browser. Click the tabs above for details. - -{% endjetbrains_beta %} - {% webui %} {% data reusables.codespaces.codespace-logs %} @@ -159,19 +145,6 @@ The following instructions are for Chrome. The steps for other browsers are simi {% endwebui %} -{% jetbrains_beta %} - -{% data reusables.codespaces.jetbrains-open-codespace-plugin %} -1. In the {% data variables.product.prodname_github_codespaces %} tool window, click the log icon. - - ![Screenshot of the log button (a book symbol).](/assets/images/help/codespaces/jetbrains-plugin-icon-log.png) - -## JetBrains logs - -You can download logs for the remote JetBrains IDE and the local client application by going to the **Help** menu in the JetBrains client application and clicking **Collect Host and Client Logs**. - -{% endjetbrains_beta %} - ## Further reading * [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-github-codespaces) diff --git a/content/codespaces/troubleshooting/troubleshooting-github-codespaces-clients.md b/content/codespaces/troubleshooting/troubleshooting-github-codespaces-clients.md index a3a4c01cd9c5..6724dea53775 100644 --- a/content/codespaces/troubleshooting/troubleshooting-github-codespaces-clients.md +++ b/content/codespaces/troubleshooting/troubleshooting-github-codespaces-clients.md @@ -12,12 +12,6 @@ redirect_from: - /codespaces/troubleshooting/troubleshooting-codespaces-clients --- -{% jetbrains_beta %} - -{% data reusables.codespaces.codespaces-jetbrains-beta-note %} - -{% endjetbrains_beta %} - {% webui %} ## Troubleshooting the {% data variables.product.prodname_vscode %} web client @@ -67,83 +61,3 @@ If the problem isn't fixed in {% data variables.product.prodname_vscode %} Stabl {% data reusables.codespaces.troubleshooting-simple-browser %} {% endvscode %} - -{% jetbrains_beta %} - -## Troubleshooting JetBrains IDEs - -### Performance issues - -A {% data variables.product.prodname_github_codespaces %} machine type with at least 4 cores is recommended for running any of the JetBrains IDEs. For more information, see [AUTOTITLE](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace). - -If you are using a machine with 4 or more cores and the performance you are experiencing in JetBrains feels a little sluggish, you may need to increase the maximum Java heap size. - -The recommended heap size varies according to the machine type of your codespace. - -| Machine type | Maximum heap size | -| -------------------- | ----------------- | -| 4 core, 16 GB RAM | 2048 MiB | -| 8 core, 32 GB RAM | 4096 MiB | -| 16 cores, 64 GB RAM | 8192 MiB | -| 32 cores, 128 GB RAM | 16,384 MiB | - -If the heap size is below the recommended value, a message is displayed when your codespace starts, suggesting that you increase the heap size. You can click the link in the message to increase the heap size automatically. - -![Screenshot of the message recommending you increase the heap size.](/assets/images/help/codespaces/heap-size-message.png) - -Depending on the size of your codebase, and the memory needed to run your application, you may need to increase the heap size further. You should set the heap size to somewhere between the size shown in the table above and 60% of the remote host's RAM. If you have a large application, you should not set too large a heap size, so that you allow the application adequate memory. - -1. On the left of the navigation bar, at the top of the application window, click the name of the codespace. - - ![Screenshot of the JetBrains client. The codespace name "urban meme," labeled "Resources critical," is highlighted with a dark orange outline.](/assets/images/help/codespaces/jetbrains-resources-button.png) - -1. In the Performance tab, note the CPU Load and Memory details. These will indicate whether the machine is overloaded. - - ![Screenshot of the "Performance" tab in the resources dropdown, showing CPU Load at 97.5%, Memory at 60.6%, and Disk at 28.8%.](/assets/images/help/codespaces/jetbrains-performance.png) - -1. Click the Settings tab and edit the heap size, increasing it to no more than 60% of the available memory for your codespace. - - ![Screenshot of the "Performance" tab. In the "Maximum heap size" field, 3072 is entered and outlined in dark orange. Below this are "Save" and "Save and restart" buttons.](/assets/images/help/codespaces/jetbrains-heap-setting.png) - -1. Click **Save and restart**. - -### Client can't be opened in macOS Ventura - -In macOS Ventura, using versions of the JetBrains Gateway prior to version 2022.3, the first time you try to connect to a codespace from the JetBrains Gateway a message was displayed telling you that the JetBrains client application "is damaged and can't be opened." - -Screenshot of the 'cannot be opened' error message - -This issue is fixed in the JetBrains Gateway, version 2022.3 and later. - -To avoid this issue, update the JetBrains Gateway. - -To work around this problem with older versions of the Gateway: - -1. Click **Cancel** to dismiss this message. -1. Click the Apple icon, top left of the screen, and click **System Settings**. -1. Click **Privacy & Security** and scroll down to the "Security" section. - - ![Screenshot of macOS "Privacy & Security" dialog, with a security message above the JetBrains Client and the "Open Anyway" button.](/assets/images/help/codespaces/jetbrains-privacy-and-security.png) - - You will see a message telling you that the JetBrains Client was blocked from use. - -1. Click **Open Anyway** to add the JetBrains client to your recognized applications. - The message is displayed again but this time with an **Open** button. - - Screenshot of the error message with an 'Open' button - -1. Click **Cancel** again. -1. Go back to the JetBrains Gateway application and connect to the required codespace again. - The JetBrains client will now open successfully. Having authorized the client application to run on your Mac, you will not see the message when you connect to your codespaces in future. - -### SSH connection issues - -To connect via the SSH server running in your codespace, you must have an SSH key in your `~/.ssh` directory (macOS and Linux) or `%HOMEPATH%\.ssh` directory (Windows) that has already been added to your {% data variables.product.prodname_dotcom %} account. If you do not have any keys in this directory, {% data variables.product.prodname_cli %} will generate keys for you. For more information, see [AUTOTITLE](/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account?platform=windows&tool=webui). - -If you encounter problems with key validation, try upgrading your version of {% data variables.product.prodname_cli %}. For information, see the [upgrade instructions](https://github.com/cli/cli#installation) in the README for {% data variables.product.prodname_cli %}. - -### JetBrains IDE issues - -For help with issues specific to the JetBrains IDE you are using, or the JetBrains Gateway application, see [Product Support](https://www.jetbrains.com/support/) on the JetBrains website. - -{% endjetbrains_beta %} diff --git a/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md b/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md index dea2a4501054..6221c90c30cd 100644 --- a/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md +++ b/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md @@ -36,7 +36,7 @@ If you see rejected connections, make sure the domains documented by the `/meta` To get the list of domains required by {% data variables.product.prodname_github_codespaces %}, execute the following command using {% data variables.product.prodname_cli %}: -`gh api meta | jq .domains.codespaces` +`gh api meta --jq .domains.codespaces` ### "We are having trouble fetching your codespace information" diff --git a/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md b/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md index 27f7f08cab33..283e600b57da 100644 --- a/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md +++ b/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md @@ -42,7 +42,7 @@ In your organization's repositories, blocked users also cannot: 1. Navigate to the comment whose author you would like to block. 1. In the upper-right corner of the comment, click {% octicon "kebab-horizontal" aria-label="Show options" %}, then click **Block user**. - ![Screenshot of a pull request comment by octo-user. Below an icon of three horizontal dots, a dropdown menu is expanded, and "Block user" is outlined in orange.](/assets/images/help/repository/comment-menu-block-user.png) + ![Screenshot of a pull request comment by octo-user. Below an icon of three dots, a dropdown menu is expanded, and "Block user" is outlined in orange.](/assets/images/help/repository/comment-menu-block-user.png) 1. If you'd like to set a time limit for the block, select the **Block user** dropdown menu, and click the amount of time you'd like to block the user. 1. If you'd like to hide all of the comments the user has made in the organization, select **Hide this user's comments** and choose a reason. @@ -66,7 +66,7 @@ In your organization's repositories, blocked users also cannot: 1. Navigate to the discussion whose author you would like to block. 1. In the upper-right corner of the comment, click {% octicon "kebab-horizontal" aria-label="Show options" %}, then click **Block user**. - ![Screenshot of a pull request comment by octo-user. Below an icon of three horizontal dots, a dropdown menu is expanded, and "Block user" is outlined in orange.](/assets/images/help/repository/comment-menu-block-user.png) + ![Screenshot of a pull request comment by octo-user. Below an icon of three dots, a dropdown menu is expanded, and "Block user" is outlined in orange.](/assets/images/help/repository/comment-menu-block-user.png) 1. If you'd like to set a time limit for the block, select the **Block user** dropdown menu, and click the amount of time you'd like to block the user. 1. If you'd like to hide all of the comments the user has made in the organization, select **Hide this user's comments** and choose a reason. diff --git a/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md b/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md index d9cc2dc438d8..1ce44bb5b72f 100644 --- a/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md +++ b/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md @@ -24,7 +24,7 @@ If you selected a specific amount of time to block the user, they will be automa 1. Navigate to the comment whose author you would like to unblock. 1. In the upper-right corner of the comment, click {% octicon "kebab-horizontal" aria-label="Show options" %}, then click **Unblock user**. - ![Screenshot of a pull request comment by octo-user. Below an icon of three horizontal dots, a dropdown menu is expanded, and "Unblock user" is outlined in orange.](/assets/images/help/repository/comment-menu-unblock-user.png) + ![Screenshot of a pull request comment by octo-user. Below an icon of three dots, a dropdown menu is expanded, and "Unblock user" is outlined in orange.](/assets/images/help/repository/comment-menu-unblock-user.png) 1. To confirm you would like to unblock the user, click **OK**. diff --git a/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md b/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md index a13df43660d7..3bf4201815ec 100644 --- a/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md +++ b/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md @@ -26,13 +26,13 @@ If a comment is off-topic, outdated, or resolved, you may want to hide a comment 1. Navigate to the comment you'd like to hide. 1. In the upper-right corner of the comment, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Hide**. - ![Screenshot of a pull request comment by octo-user. Below an icon of three horizontal dots, a dropdown menu is expanded, and "Hide" is outlined in orange.](/assets/images/help/repository/comment-menu-hide.png) + ![Screenshot of a pull request comment by octo-user. Below an icon of three dots, a dropdown menu is expanded, and "Hide" is outlined in orange.](/assets/images/help/repository/comment-menu-hide.png) 1. Using the "Choose a reason" dropdown menu, choose a reason to hide the comment. Then select **Hide comment**. {% ifversion fpt or ghec %} - ![Screenshot of a {% data variables.product.prodname_dotcom %} comment showing a menu to select a reason to hide the comment: Spam, Abuse, Off Topic, Outdated, Duplicate, or Resolved.](/assets/images/help/repository/choose-reason-for-hiding-comment.png) + ![Screenshot of a comment showing a menu to select a reason to hide the comment: Spam, Abuse, Off Topic, Outdated, Duplicate, or Resolved.](/assets/images/help/repository/choose-reason-for-hiding-comment.png) {% else %} - ![Screenshot of a {% data variables.product.prodname_dotcom %} comment showing a menu to select a reason to hide the comment: Off Topic, Outdated, Duplicate, or Resolved.](/assets/images/help/repository/choose-reason-for-hiding-comment-ghe.png) + ![Screenshot of a comment showing a menu to select a reason to hide the comment: Off Topic, Outdated, Duplicate, or Resolved.](/assets/images/help/repository/choose-reason-for-hiding-comment-ghe.png) {% endif %} ## Unhiding a comment @@ -43,7 +43,7 @@ If a comment is off-topic, outdated, or resolved, you may want to hide a comment 1. On the right side of the comment, click **{% octicon "fold" aria-hidden="true" %} Show comment**. 1. On the right side of the expanded comment, select the {% octicon "kebab-horizontal" aria-label="Show options" %} dropdown menu, then click **Unhide**. - ![Screenshot of a pull request comment marked as spam. Below an icon of three horizontal dots, a dropdown menu is expanded, and "Unhide" is outlined in orange.](/assets/images/help/repository/comment-menu-hidden.png) + ![Screenshot of a pull request comment marked as spam. Below an icon of three dots, a dropdown menu is expanded, and "Unhide" is outlined in orange.](/assets/images/help/repository/comment-menu-hidden.png) ## Editing a comment @@ -55,7 +55,7 @@ Sometimes it may make sense to clearly indicate edits and their justification. That said, anyone with read access to a repository can view a comment's edit history. The **edited** dropdown at the top of the comment contains a history of edits showing the user and timestamp for each edit. -![Screenshot of a comment by octo-user, which has been partially redacted. In the comment header, next to the text "edited by octocat", a dropdown icon is outlined in orange.](/assets/images/help/repository/content-redacted-comment.png) +![Screenshot of a comment by octo-user, which is partially redacted. In the header, next to "edited by octocat", a dropdown icon is outlined in orange.](/assets/images/help/repository/content-redacted-comment.png) ## Redacting sensitive information @@ -64,7 +64,7 @@ Comment authors and anyone with write access to a repository can also delete sen 1. Navigate to the comment you'd like to edit. 1. In the upper-right corner of the comment, click {% octicon "kebab-horizontal" aria-label="Show options" %}, then click **Edit**. - ![Screenshot of a pull request comment by octo-user. Below an icon of three horizontal dots, a dropdown menu is expanded, and "Edit" is outlined in orange.](/assets/images/help/repository/comment-menu-edit.png) + ![Screenshot of a pull request comment by octo-user. Below an icon of three dots, a dropdown menu is expanded, and "Edit" is outlined in orange.](/assets/images/help/repository/comment-menu-edit.png) 1. In the comment window, delete the content you'd like to remove, then type `[REDACTED]` to replace it. 1. At the bottom of the comment, type a note indicating that you have edited the comment, and optionally, why you edited the comment. @@ -89,7 +89,7 @@ Deleting a comment creates a timeline event that is visible to anyone with read 1. Navigate to the comment you'd like to delete. 1. In the upper-right corner of the comment, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Delete**. - ![Screenshot of a pull request comment by octo-user. Below an icon of three horizontal dots, a dropdown menu is expanded, and "Delete" is outlined in orange.](/assets/images/help/repository/comment-menu-delete.png) + ![Screenshot of a pull request comment by octo-user. Below an icon of three dots, a dropdown menu is expanded, and "Delete" is outlined in orange.](/assets/images/help/repository/comment-menu-delete.png) 1. Optionally, write a comment noting that you deleted a comment and why. {% ifversion fpt or ghec %} diff --git a/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md b/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md index 036befe8ed28..97c67878d23d 100644 --- a/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md +++ b/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md @@ -30,7 +30,7 @@ When you delete sensitive information from the comment's edit history, the perso {% data reusables.repositories.edited-comment-list %} 1. In the top right of the edit history window, click **Options**. Then click **Delete revision from history** to delete the diff that shows the content being added. - ![Screenshot of the edit history window for a comment. A dropdown menu, labeled "Options," is expanded, and the "Delete revision from history" option is outlined in orange.](/assets/images/help/repository/delete-comment-edit-details.png) + ![Screenshot of the edit history of a comment. The "Options" dropdown menu is expanded. The "Delete revision from history" option is outlined in orange.](/assets/images/help/repository/delete-comment-edit-details.png) 1. To confirm deletion, click **OK**. ## Further reading diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md b/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md index 1edf534400d7..af0dece0dce3 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md @@ -21,7 +21,7 @@ As a repository maintainer, you can use the community standards checklist to see If a project doesn't have one of the recommended files, you can click the associated **Add** button to draft and submit a file. -![Screenshot of the "Community Standards" maintainer checklist. Each item has an "Added" label (green checkmark) or a "Not added yet" label (orange circle).](/assets/images/help/repository/add-button-community-profile.png) +![Screenshot of the "Community Standards" maintainer checklist. Each item has an "Added" label (green check) or a "Not added yet" label (orange circle).](/assets/images/help/repository/add-button-community-profile.png) {% data reusables.repositories.security-guidelines %} @@ -33,7 +33,7 @@ As a potential contributor, use the community profile checklist to see if a proj If a project doesn't have a recommended file, you can click **Propose** to draft and submit a file to the repository maintainer for approval. -![Screenshot of the "Community Standards" contributor checklist. Each item has an "Added" label (green checkmark) or a "Not added yet" label (orange circle).](/assets/images/help/repository/propose-button-community-profile.png) +![Screenshot of the "Community Standards" contributor checklist. Each item has an "Added" icon (green check) or a "Not added yet" icon (orange circle).](/assets/images/help/repository/propose-button-community-profile.png) ## Further reading diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md index 086818bed10e..26c36654df32 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md @@ -31,7 +31,7 @@ You can create a default code of conduct for your organization or personal accou {% data reusables.files.add-file %} 1. In the file name field, type _CODE_OF_CONDUCT.md_. 1. Select **Choose a code of conduct template**. - ![Screenshot of a {% data variables.product.prodname_dotcom %} repository showing a new markdown file being created. A button at right, labeled "Choose a code of conduct template," is outlined in dark orange.](/assets/images/help/repository/code-of-conduct-tool.png) + ![Screenshot of a repository showing a new markdown file. A button at right, labeled "Choose a code of conduct template," is outlined in orange.](/assets/images/help/repository/code-of-conduct-tool.png) 1. On the left side of the page, select a code of conduct to preview and add to your project. 1. On the right side of the page, complete the fields to populate the selected code of conduct with the appropriate information. 1. Click **Review and submit**. diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md index c27c7d78f0b9..61cbb2ab843d 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md @@ -12,9 +12,9 @@ topics: - Community shortTitle: Add a license to a repo --- -If you include a detectable license in your repository, people who visit your repository will see it at the top of the repository page. To read the entire license file, click the license name. +If you include a detectable license in your repository, people who visit your repository will see it at the top of the repository page. To read the entire license file, click the license name (for example: [github-linguist/linguist](https://github.com/github-linguist/linguist)). -![Screenshot of the main page of the github-linguist/linguist repository. In the right sidebar, "MIT license," preceded by a law icon, is outlined in dark orange.](/assets/images/help/repository/repo-license-indicator.png) +![Screenshot of the main page of a repository. In the right sidebar, "MIT license," preceded by a law icon, is outlined in orange.](/assets/images/help/repository/repo-license-indicator.png) Open source licenses enable others to freely use, change, and distribute the project in your repository. For more information on repository licenses, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository). @@ -27,7 +27,7 @@ Open source licenses enable others to freely use, change, and distribute the pro 1. In the file name field, type _LICENSE_ or _LICENSE.md_ (with all caps). 1. Under the file name, click **Choose a license template**. - ![Screenshot of the new file form, with "LICENSE" entered in the file name field. A button, labeled "Choose a license template," is outlined in dark orange.](/assets/images/help/repository/license-tool.png) + ![Screenshot of the new file form, with "LICENSE" entered in the file name field. A "Choose a license template" button is outlined in dark orange.](/assets/images/help/repository/license-tool.png) 1. On the left side of the page, under "Add a license to your project," review the available licenses, then select a license from the list. 1. Click **Review and submit**. {% data reusables.files.write_commit_message %} diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md b/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md index a4af5f6e7e2d..8ccdfb7ff79d 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md @@ -46,14 +46,12 @@ You can create defaults in your organization or personal account for the followi | _CODE_OF_CONDUCT.md_ | A CODE_OF_CONDUCT file defines standards for how to engage in a community. For more information, see [AUTOTITLE](/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project). | | {% endif %} | | _CONTRIBUTING.md_ | A CONTRIBUTING file communicates how people should contribute to your project. For more information, see [AUTOTITLE](/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors). | -| {% ifversion discussion-category-forms %} | | Discussion category forms | Discussion category forms customize the templates that are available for community members to use when they open new discussions in your repository. For more information, see [AUTOTITLE](/discussions/managing-discussions-for-your-community/creating-discussion-category-forms). | -| {% endif %} | | {% ifversion fpt or ghec %} | | _FUNDING.yml_ | A FUNDING file displays a sponsor button in your repository to increase the visibility of funding options for your open source project. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository). | | {% endif %} | | _GOVERNANCE.md_ | A GOVERNANCE file lets people know about how your project is governed. For example, it might discuss project roles and how decisions are made. | -| Issue and pull request templates and _config.yml_ | Issue and pull request templates customize and standardize the information you'd like contributors to include when they open issues and pull requests in your repository. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates). | +| Issue and pull request templates and _config.yml_ | Issue and pull request templates customize and standardize the information you'd like contributors to include when they open issues and pull requests in your repository. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates).

    If an issue template sets a label, that label must be created in your `.github` repository and any repositories where the template will be used. | | _SECURITY.md_ | A SECURITY file gives instructions on how to report a security vulnerability in your project and description that hyperlinks the file. For more information, see [AUTOTITLE](/code-security/getting-started/adding-a-security-policy-to-your-repository). | | _SUPPORT.md_ | A SUPPORT file lets people know about ways to get help with your project. For more information, see [AUTOTITLE](/communities/setting-up-your-project-for-healthy-contributions/adding-support-resources-to-your-project). | diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md index 599bfadf2329..58e1ab0c2507 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md @@ -19,23 +19,21 @@ You can create default issue and pull request templates for your organization or ## Issue templates -When you create issue templates for your repository using the issue template builder{% ifversion issue-forms %} or with issue forms{% endif %}, contributors can select the appropriate template when they open new issues in the repository. +When you create issue templates for your repository using the issue template builder or with issue forms, contributors can select the appropriate template when they open new issues in the repository. ![Screenshot of the new issue page, with multiple templates to choose from.](/assets/images/help/issues/new-issue-page-with-multiple-templates.png) -Issue templates are helpful when you want to provide guidance for opening issues while allowing contributors to specify the content of their issues. {% ifversion issue-forms %} If you want contributors to provide specific, structured information when they open issues, issue forms help ensure that you receive your desired information.{% endif %} +Issue templates are helpful when you want to provide guidance for opening issues while allowing contributors to specify the content of their issues. If you want contributors to provide specific, structured information when they open issues, issue forms help ensure that you receive your desired information. Using the template builder, you can specify a title and description for each template, add the template content, and either commit the template to the default branch or open a pull request in the repository. The template builder automatically adds the YAML front matter markup that is required for the template to show on the new issue page. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository). -{% ifversion issue-forms %} With issue forms, you can create templates that have web form fields using the {% data variables.product.prodname_dotcom %} form schema. When a contributor opens an issue using an issue form, the form inputs are converted to a standard markdown issue comment. You can specify different input types and set inputs as required to help contributors open actionable issues in your repository. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#creating-issue-forms) and [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms). -{% endif %} {% data reusables.repositories.issue-template-config %} For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser). -Issue templates are stored on the repository's default branch, in a hidden `.github/ISSUE_TEMPLATE` directory. If you create a template in another branch, it will not be available for collaborators to use. Issue template filenames are not case sensitive, and need a _.md_ extension.{% ifversion issue-forms %} Issue templates created with issue forms need a _.yml_ extension.{% endif %} {% data reusables.repositories.valid-community-issues %} +Issue templates are stored on the repository's default branch, in a hidden `.github/ISSUE_TEMPLATE` directory. If you create a template in another branch, it will not be available for collaborators to use. Issue template filenames are not case sensitive, and need a _.md_ extension. Issue templates created with issue forms need a _.yml_ extension. {% data reusables.repositories.valid-community-issues %} -It is possible to manually create a single issue template in Markdown using the legacy issue template workflow, and project contributors will automatically see the template's contents in the issue body. However, we recommend using the upgraded multiple issue template builder{% ifversion issue-forms %} or issue forms{% endif %} to create issue templates. For more information about the legacy workflow, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/manually-creating-a-single-issue-template-for-your-repository). +It is possible to manually create a single issue template in Markdown using the legacy issue template workflow, and project contributors will automatically see the template's contents in the issue body. However, we recommend using the upgraded multiple issue template builder or issue forms to create issue templates. For more information about the legacy workflow, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/manually-creating-a-single-issue-template-for-your-repository). {% data reusables.repositories.security-guidelines %} diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md index ca416009179f..eb479765b73a 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md @@ -25,7 +25,7 @@ shortTitle: Configure ![Screenshot of the "Features" section of a repository's settings, with the "Issues" setting ticked and the green "Set up templates" button visible.](/assets/images/help/repository/set-up-issue-templates-button.png) 1. Use the **Add template** dropdown menu, and click on the type of template you'd like to create. - ![Screenshot of the "Add template" dropdown menu expanded to show the standard "Bug report" and "Feature request" templates. In addition, the "Custom template" is listed.](/assets/images/help/repository/add-template-drop-down-menu.png) + ![Screenshot of the "Add template" dropdown menu expanded to show standard templates, "Bug report" and "Feature request," with a "Custom template".](/assets/images/help/repository/add-template-drop-down-menu.png) 1. To preview or edit the template before committing it to the repository, next to the template, click **Preview and edit**. 1. To edit the template, click {% octicon "pencil" aria-label="Edit template" %}, and type in the fields to edit their contents. @@ -36,8 +36,6 @@ shortTitle: Configure 1. Below the commit message fields, select whether to commit your template directly to the default branch, or to create a new branch and open a pull request. For more information about pull requests, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests). 1. Click **Commit changes**. Once these changes are merged into the default branch, the template will be available for contributors to use when they open new issues in the repository. -{% ifversion issue-forms %} - ## Creating issue forms {% data reusables.community.issue-forms-beta %} @@ -59,8 +57,6 @@ Here is the rendered version of the issue form. 1. In the body of the new file, type the contents of your issue form. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms). 1. Commit your file to the default branch of your repository. For more information, see [AUTOTITLE](/repositories/working-with-files/managing-files/creating-new-files). -{% endif %} - ## Configuring the template chooser {% data reusables.repositories.issue-template-config %} diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md index 195919987428..434325b6605f 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md @@ -1,6 +1,8 @@ --- title: Syntax for GitHub's form schema intro: 'You can use {% data variables.product.company_short %}''s form schema to configure forms for supported features.' +redirect_from: + - /early-access/github/save-time-with-slash-commands/githubs-form-schema versions: fpt: '*' ghec: '*' diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md index dc5bd4b170d2..45e1a9f4aa0e 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md @@ -45,7 +45,7 @@ You can set the following top-level keys for each issue form. | `labels` | Labels that will automatically be added to issues created with this template. If a label does not already exist in the repository, it will not be automatically added to the issue. | Optional | Array or comma-delimited string | | `title` | A default title that will be pre-populated in the issue submission form. | Optional | String | | {% ifversion projects-in-issue-forms %} | -| `projects` | Projects that any issues created with this template will automatically be added to. The format of this key is `PROJECT-OWNER/PROJECT-NUMBER`. > [!NOTE] The person opening the issue must have write permissions for the specified projects. {% ifversion projects-v2 %} If you don't expect people using this template to have write access, consider enabling your project's auto-add workflow. For more information, see [Adding items automatically](/issues/planning-and-tracking-with-projects/automating-your-project/adding-items-automatically).{% endif %} | Optional | Array or comma-delimited string | +| `projects` | Projects that any issues created with this template will automatically be added to. The format of this key is `PROJECT-OWNER/PROJECT-NUMBER`. > [!NOTE] The person opening the issue must have write permissions for the specified projects. If you don't expect people using this template to have write access, consider enabling your project's auto-add workflow. For more information, see [Adding items automatically](/issues/planning-and-tracking-with-projects/automating-your-project/adding-items-automatically). | Optional | Array or comma-delimited string | | {% endif %} | For the available `body` input types and their syntaxes, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema). diff --git a/content/contributing/style-guide-and-content-model/contents-of-a-github-docs-article.md b/content/contributing/style-guide-and-content-model/contents-of-a-github-docs-article.md index fea67f234b95..0229566f0598 100644 --- a/content/contributing/style-guide-and-content-model/contents-of-a-github-docs-article.md +++ b/content/contributing/style-guide-and-content-model/contents-of-a-github-docs-article.md @@ -77,13 +77,12 @@ Occasionally, it's relevant to mention required permissions in conceptual conten * Don't include permissions in an article’s intro. * Roles exist at different levels. Refer only to the role at the same level as the action. For example, you need admin access to a repository (repository-level role) to configure protected branches. You can get admin access to a repository by being an organization owner (organization-level role), but the repository-level role is what actually governs your ability to take the action, so that is the only role that should be mentioned in the permissions statement. * Language to use in a permissions statement: + * People with [ACCOUNT ROLE]. * [ACCOUNT ROLE] can [ACTION]. * People with [FEATURE ROLE] access for a [FEATURE] can [ACTION]. * AVOID: [ACCOUNT ROLE] and people with [FEATURE ROLE] access for a [FEATURE] can [ACTION]. -### Examples of permissions statements - -* Article with single permissions statement for multiple procedures: [AUTOTITLE](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise) +See the [AUTOTITLE](/contributing/style-guide-and-content-model/style-guide#permission-statements-and-product-callouts) for more information on formatting permission statements. ## Product callout @@ -94,10 +93,10 @@ All product callouts are stored as reusables in [`gated-features`](https://githu ### How to write a product callout * Product callouts follow a strict format, clearly identifying the feature and which products it’s available in. -* Product callouts also include a link to "GitHub’s products” and occasionally to another relevant article. +* Product callouts may include links to articles that directly help users understand who can use the feature. These links can be inline links to the specific products or GitHub plans that are required. * Examples: - * [Feature name] is available in [product(s)]. For more information, see "GitHub’s products.” - * [Feature name] is available in public repositories with [free product(s)], and in public and private repositories with [paid products]. For more information, see "GitHub’s products.” + * [Feature name] is available in [product(s)]. + * [Feature name] is available in public repositories with [free product(s)], and in public and private repositories with [paid products]. ### Examples of articles with product callouts @@ -186,6 +185,6 @@ Format further reading sections using unordered lists. See [AUTOTITLE](/contribu ```markdown ## Further reading -- "[Article title](article-URL)" +- [Article title](article-URL) - [External resource title](external-resource-URL) in External Resource Name ``` diff --git a/content/contributing/style-guide-and-content-model/style-guide.md b/content/contributing/style-guide-and-content-model/style-guide.md index 93216c14306d..2bbf7ae6bdc8 100644 --- a/content/contributing/style-guide-and-content-model/style-guide.md +++ b/content/contributing/style-guide-and-content-model/style-guide.md @@ -44,7 +44,7 @@ Alerts should be concise. If the information consists of more than a couple of s ### Alert types -We use four types of alerts: Note, Tip, Warning, and Caution. +We use five types of alerts: Note, Tip, Important, Warning, and Caution. #### Note @@ -68,6 +68,13 @@ For example, [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-githu > [!TIP] > When you @mention an organization, only those that you're a member of will autocomplete. You can still @mention organizations that you're not a member of, like a previous employer, but the organization name won't autocomplete for you. +#### Important + +Highlights key information users need to know to achieve their goal. + +> [!IMPORTANT] +> Runner Scale Sets do not support multiple labels, only the name of the runner can be used in place of a label. See [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/deploying-runner-scale-sets-with-actions-runner-controller). + #### Warning Highlights potential risks that a user should be aware of before starting or continuing with a task. @@ -1000,7 +1007,7 @@ A release note for a feature answers the following questions. 1. What is the functionality? 1. If applicable, where can I read more about the functionality? -> _AUDIENCE_ (**1**) can _DESCRIPTION OF NEED_ (**2**) by _DESCRIPTION OF FEATURE'S USE_ (**3**). For more information, see "[_ARTICLE TITLE_](/)" (**4**). +> _AUDIENCE_ (**1**) can _DESCRIPTION OF NEED_ (**2**) by _DESCRIPTION OF FEATURE'S USE_ (**3**). For more information, see [_ARTICLE TITLE_](/) (**4**) * Categorize each feature in a section, under a feature heading. * Write in the present tense. @@ -1194,7 +1201,7 @@ A release note for a retired feature answers the following questions. 1. If applicable, what replaces the retired functionality? 1. If applicable, where can I read more? -> _AUDIENCE_ (**1**) _DESCRIPTION OF RETIRED FUNCTIONALITY_ (**2**) _REPLACEMENT FUNCTIONALITY_ (**3**) For more information, see "[_ARTICLE TITLE_](/)" (**4**). +> _AUDIENCE_ (**1**) _DESCRIPTION OF RETIRED FUNCTIONALITY_ (**2**) _REPLACEMENT FUNCTIONALITY_ (**3**) For more information, see [_ARTICLE TITLE_](/) (**4**) * Notes are in the present tense. * To reduce repetition and unnecessary words, "now" is usually implied. diff --git a/content/contributing/writing-for-github-docs/annotating-code-examples.md b/content/contributing/writing-for-github-docs/annotating-code-examples.md index 6dc17e35d85c..d6d4e2e0c2ec 100644 --- a/content/contributing/writing-for-github-docs/annotating-code-examples.md +++ b/content/contributing/writing-for-github-docs/annotating-code-examples.md @@ -35,8 +35,9 @@ You can annotate multiple code examples in a single article, but keep in mind th The following rules apply to all code annotations. * Multiline-style comments, such as `/*` are not supported. -* You can include any number of spaces before the comment tag starts. -* You can include any number of spaces after the comment tag ends. +* There must be a space between the symbol that starts a code annotation and the comment. + * **Use:** `# comment` + * **Avoid:** `#comment` * To create a blank annotation, insert a comment tag with no text after it. Blank annotations are useful if some lines of a sample don't require an annotation. * Strings that begin with `#!` will render in the code block and are not treated as comments. * Anything after the comment tag will be parsed with Markdown. Links, versioning, and other styling will render as if they were written in Markdown. diff --git a/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md b/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md index 7f34d53e0267..e0687b141a58 100644 --- a/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md +++ b/content/contributing/writing-for-github-docs/creating-diagrams-for-github-docs.md @@ -83,7 +83,7 @@ If you are creating a diagram to explain when or how something happens, consider * [Flowchart](https://en.wikipedia.org/wiki/Flowchart): Flowcharts are useful for showing the steps in a process. In this example, the rectangles represent steps in a process and the diamond represents a decision point where the chart branches into two possible endpoints. - ![An example flowchart that uses rectangles to represent steps in a process and a diamond to represent a decision point where the chart branches into two possible endpoints.](/assets/images/help/diagrams/flowchart-example.png) + ![An example flowchart that uses rectangles to represent steps in a process and a diamond to represent a decision point where the chart branches.](/assets/images/help/diagrams/flowchart-example.png) * [Gantt chart](https://en.wikipedia.org/wiki/Gantt_chart): Gantt charts are useful for showing how long tasks take and when they overlap. In this example, the horizontal axis is labelled "Time" and the blue rectangles represent three discrete tasks. Task 1 and task 2 overlap, which means that at least part of the tasks happen at the same time. Task 3 does not overlap with the other tasks, which means that it happens after the first two are completed. @@ -123,7 +123,7 @@ If you are creating a diagram to explain why something is the way that it is, co * [Venn diagram](https://en.wikipedia.org/wiki/Venn_diagram): Venn diagrams are useful for showing shared traits or overlap of ideas. Circles represent concepts or things, and the area where the circles overlap represent shared traits between things. In this example, the overlap between the circle labelled "Octopus" and the circle labelled "Cat" is labelled "Octocat," which is a combination of an octopus and a cat. - ![An example Venn diagram that shows two circles overlapping. One circle is labelled "Octopus" and the other is labelled "Cat". The overlapping section of the circles is labelled "Octocat".](/assets/images/help/diagrams/venn-diagram-example.png) + ![An example Venn diagram with two circles overlapping: one labeled "Octopus" and the other "Cat". The intersection of the circles is labeled "Octocat".](/assets/images/help/diagrams/venn-diagram-example.png) ## Style guidelines @@ -163,7 +163,7 @@ Use different types of lines to convey additional meaning of relationships. * Two-way lines that have an arrow on each side: Indicate reciprocation. ![Two blue rectangles connected by a line with an arrow on both ends.](/assets/images/help/diagrams/two-way-line-example.png) * Brackets: Establish hierarchy. In general, organize brackets vertically so that they are easier to navigate on a webpage. Indent each level of a hierarchy. - ![Two examples of blue rectangles connected by brackets. One has three rectangles arranged in a vertical bracket with two rectangles indented and connected to the top rectangle with lines. The other has two rectangles arranged horizontally connected to a rectangle above with lines.](/assets/images/help/diagrams/brackets-example.png) + ![Two examples demonstrating the difference between vertical (left) and horizontal (right) arrangement of three rectangles connected by brackets.](/assets/images/help/diagrams/brackets-example.png) ### Labels diff --git a/content/contributing/writing-for-github-docs/creating-screenshots.md b/content/contributing/writing-for-github-docs/creating-screenshots.md index 771f743084f3..e2e4ef21e9b2 100644 --- a/content/contributing/writing-for-github-docs/creating-screenshots.md +++ b/content/contributing/writing-for-github-docs/creating-screenshots.md @@ -93,6 +93,8 @@ In addition to the criteria for inclusion, screenshots must meet the following r * 750–1000 pixels wide for full-column images * File size of 250 KB or less * Descriptive file names, such as `gist-embed-link.png` instead of `right_side_page_03.png` +* Images captured on macOS must be retina images + * In Snagit, select **Snagit** > **Preferences** > **Advanced** and deselect "Scale down retina images when sharing" ### Accessibility @@ -136,7 +138,7 @@ The stroke is the color `fg.severe` in the [Primer Design System](https://primer 1. To download the Snagit theme, navigate to [`snagit-theme-github-docs.snagtheme`](https://github.com/github/docs/blob/main/contributing/images/snagit-theme-github-docs.snagtheme) in the `github/docs` repository, then click {% octicon "download" aria-label="Download raw content" %}. - ![Screenshot of the file view for "snagit-theme-github-docs.snagtheme." In the header of the file, a button labeled with a download icon is outlined in dark orange.](/assets/images/contributing/download-snagit-theme.png) + ![Screenshot of the file view for "snagit-theme-github-docs.snagtheme." In the header of the file, a button with a download icon is outlined in orange.](/assets/images/contributing/download-snagit-theme.png) 1. Open Snagit, then select the **Shape** tool. 1. Under "Quick styles," select **Import**. 1. Select the Snagit theme from your computer's files. This will install the shape preset. diff --git a/content/contributing/writing-for-github-docs/templates.md b/content/contributing/writing-for-github-docs/templates.md index f2fcfaa08486..f9756fe8d4c1 100644 --- a/content/contributing/writing-for-github-docs/templates.md +++ b/content/contributing/writing-for-github-docs/templates.md @@ -52,7 +52,7 @@ Keep adding headers and sections until you've completed your article. Optionally, include a bulleted list of related articles the user can reference to extend the concepts covered in this article. Consider linking to procedural articles or tutorials that help the user use the information in your article. {% endcomment %} -- "[Article title](article-URL)"{% endraw %} +- [Article title](article-URL){% endraw %} ``` @@ -104,7 +104,7 @@ Keep adding headers and sections until you've completed your article. Optionally, include a bulleted list of related articles the user can reference to extend the concepts covered in this article. Consider linking to procedural articles or tutorials that help the user use the information in your article. {% endcomment %} -- "[Article title](article-URL)"{% endraw %} +- [Article title](article-URL){% endraw %} ``` @@ -156,7 +156,7 @@ Keep adding procedures until you've finished writing your article. Optionally, include a bulleted list of related articles the user can reference to extend the concepts covered in this article. Consider linking to procedural articles or tutorials that help the user use the information in your article. {% endcomment %} -- "[Article title](article-URL)"{% endraw %} +- [Article title](article-URL){% endraw %} ``` @@ -299,7 +299,7 @@ Remember to show code snippets in context Include a bulleted list of tutorials or articles the user can reference to extend the concepts taught in this tutorial {% endcomment %} -- "[Article title](article-URL)"{% endraw %} +- [Article title](article-URL){% endraw %} ``` diff --git a/content/contributing/writing-for-github-docs/using-markdown-and-liquid-in-github-docs.md b/content/contributing/writing-for-github-docs/using-markdown-and-liquid-in-github-docs.md index 928b03f6a1b3..caa058d043de 100644 --- a/content/contributing/writing-for-github-docs/using-markdown-and-liquid-in-github-docs.md +++ b/content/contributing/writing-for-github-docs/using-markdown-and-liquid-in-github-docs.md @@ -445,7 +445,7 @@ You can link directly to a different version of the page using the `currentArtic Sometimes you want to link to a Dotcom-only article in Enterprise content and you don't want the link to be Enterprise-ified. To prevent the transformation, you should include the preferred version in the path. ```markdown -"[GitHub's Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service)" +[GitHub's Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service) ``` Sometimes the canonical home of content moves outside the docs site. None of the links included in [`src/redirects/lib/external-sites.json`](https://github.com/github/docs/blob/main/src/redirects/lib/external-sites.json) get rewritten. See [`contributing/redirects.md`](https://github.com/github/docs/blob/main/contributing/redirects.md) for more info about this type of redirect. diff --git a/content/contributing/writing-for-github-docs/writing-content-to-be-translated.md b/content/contributing/writing-for-github-docs/writing-content-to-be-translated.md index b541b7c5dec3..ac87df26812d 100644 --- a/content/contributing/writing-for-github-docs/writing-content-to-be-translated.md +++ b/content/contributing/writing-for-github-docs/writing-content-to-be-translated.md @@ -72,5 +72,5 @@ Read [more about OAuth2.](/apps/building-integrations/setting-up-and-registering You can use this instead: ```markdown -OAuth2 tokens can be acquired programmatically for applications that are not websites. For more information, see "[Setting up and registering OAuth Apps](apps/building-integrations/setting-up-and-registering-oauth-apps/)" and "[Create a new authorization](/rest/reference/oauth-authorizations/#create-a-new-authorization)." +OAuth2 tokens can be acquired programmatically for applications that are not websites. For more information, see [AUTOTITLE](apps/building-integrations/setting-up-and-registering-oauth-apps/) and [Create a new authorization](/rest/reference/oauth-authorizations/#create-a-new-authorization). ``` diff --git a/content/copilot/about-github-copilot/subscription-plans-for-github-copilot.md b/content/copilot/about-github-copilot/subscription-plans-for-github-copilot.md index 00349a1b792a..2f9cb12ab350 100644 --- a/content/copilot/about-github-copilot/subscription-plans-for-github-copilot.md +++ b/content/copilot/about-github-copilot/subscription-plans-for-github-copilot.md @@ -27,5 +27,5 @@ For more information, see [AUTOTITLE](/copilot/about-github-copilot/github-copil * To set up {% data variables.product.prodname_copilot_free %}, see [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/about-github-copilot-free). * To subscribe to {% data variables.product.prodname_copilot_pro %}, you can try {% data variables.product.prodname_copilot %} for free with a one-time 30-day trial. To continue using {% data variables.product.prodname_copilot_short %} after the trial, you will need a paid subscription, unless you are a verified student, teacher, or maintainer of a popular open source project on {% data variables.product.prodname_dotcom %}. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/subscribing-to-copilot-as-an-individual-user). -* To subscribe your organization to {% data variables.product.prodname_copilot_short %}, see [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/subscribing-to-copilot-for-your-organization). -* To subscribe your enterprise to {% data variables.product.prodname_copilot_short %}, see [AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/subscribing-to-copilot-for-your-enterprise). +* To subscribe to {% data variables.product.prodname_copilot_for_business %}, you can either sign up for a free 30-day trial of [{% data variables.product.prodname_ghe_cloud %}](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud), or purchase a subscription for your organization or enterprise. See [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-the-copilot-subscription-for-your-organization/subscribing-to-copilot-for-your-organization) or [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/subscribing-to-copilot-for-your-organization). +* To subscribe to {% data variables.product.prodname_copilot_enterprise %}, see [AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/subscribing-to-copilot-for-your-enterprise). diff --git a/content/copilot/about-github-copilot/what-is-github-copilot.md b/content/copilot/about-github-copilot/what-is-github-copilot.md index a23c59f511a2..feaa2976ddfa 100644 --- a/content/copilot/about-github-copilot/what-is-github-copilot.md +++ b/content/copilot/about-github-copilot/what-is-github-copilot.md @@ -62,6 +62,8 @@ For more information, see [AUTOTITLE](/copilot/about-github-copilot/github-copil **As an enterprise owner**, you can purchase a subscription to {% data variables.product.prodname_copilot_for_business %} or {% data variables.product.prodname_copilot_enterprise %} for your enterprise, and allow organizations to grant access to members. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/subscribing-to-copilot-for-your-enterprise). +**As a prospective enterprise owner**, you can sign up for a free 30-day trial of {% data variables.product.prodname_ghe_cloud %}, including {% data variables.product.prodname_copilot_business_short %}. See [AUTOTITLE](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud). + If you **don't need other features**, you can request an enterprise account specifically for managing {% data variables.product.prodname_copilot_for_business %} licenses. You won't pay for {% data variables.product.prodname_enterprise %} seats, and you won't be able to create organizations or repositories. See [AUTOTITLE](/enterprise-cloud@latest/admin/copilot-business-only/about-enterprise-accounts-for-copilot-business). ## Next steps diff --git a/content/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github.md b/content/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github.md index b226acb324c5..c544aa66399e 100644 --- a/content/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github.md +++ b/content/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github.md @@ -17,15 +17,17 @@ Before you configure your {% data variables.product.prodname_copilot_agent_short ## Verifying that payloads are coming from {% data variables.product.github %} -Before your {% data variables.product.prodname_copilot_agent_short %} begins processing a request, you should verify that the request came from {% data variables.product.github %}, and that it is intended for your agent. All agent requests contain the `Github-Public-Key-Identifier` and `Github-Public-Key-Signature` headers. To verify the signature for a particular request, compare the signature in the `Github-Public-Key-Signature` header with a signed copy of the request body using the current public key listed at https://api.github.com/meta/public_keys/copilot_api. +Before your {% data variables.product.prodname_copilot_agent_short %} begins processing a request, you should verify that the request came from {% data variables.product.github %}, and that it is intended for your agent. All agent requests contain the `X-GitHub-Public-Key-Identifier` and `X-GitHub-Public-Key-Signature` headers. To verify the signature for a particular request, compare the signature in the `X-GitHub-Public-Key-Signature` header with a signed copy of the request body using the current public key listed at https://api.github.com/meta/public_keys/copilot_api. For more details and examples of signature verification in specific languages, see the [`github-technology-partners/signature-verification`](https://github.com/github-technology-partners/signature-verification) repository. +> ⚠️ **Note:** We currently send duplicate pairs of these headers. One set has the prefix `Github-Public-...`; the other has `X-GitHub-Public...`. The former will be {% data variables.release-phases.closing_down %} **by March 31st**. Please update your relevant checks to the correct prefix (`X-GitHub-Public...`) by then. + ## Fetching resources from the {% data variables.product.github %} API -Requests to your {% data variables.product.prodname_copilot_agent_short %} will receive an `X-Github-Token` header. This header contains an API token that can be used to fetch resources from the {% data variables.product.github %} API on behalf of the user interacting with your agent. The permissions of this token are the overlap of the user's own permissions and the permissions granted to your {% data variables.product.prodname_github_app %} installation. +Requests to your {% data variables.product.prodname_copilot_agent_short %} will receive an `X-GitHub-Token` header. This header contains an API token that can be used to fetch resources from the {% data variables.product.github %} API on behalf of the user interacting with your agent. The permissions of this token are the overlap of the user's own permissions and the permissions granted to your {% data variables.product.prodname_github_app %} installation. -For an example of how you might use `X-Github-Token`, see the following code sample: +For an example of how you might use `X-GitHub-Token`, see the following code sample: ```typescript async function whoami(req) { diff --git a/content/copilot/building-copilot-extensions/building-a-copilot-skillset-for-your-copilot-extension/building-copilot-skillsets.md b/content/copilot/building-copilot-extensions/building-a-copilot-skillset-for-your-copilot-extension/building-copilot-skillsets.md index 097b74fc2677..fc9035ed9e15 100644 --- a/content/copilot/building-copilot-extensions/building-a-copilot-skillset-for-your-copilot-extension/building-copilot-skillsets.md +++ b/content/copilot/building-copilot-extensions/building-a-copilot-skillset-for-your-copilot-extension/building-copilot-skillsets.md @@ -5,7 +5,7 @@ versions: feature: copilot-extensions topics: - Copilot -shortTitle: Build {% data variables.product.prodname_copilot_skillsets_short %} +shortTitle: Build {% data variables.product.prodname_copilot_skillsets_short %} type: how_to --- @@ -25,7 +25,7 @@ Before you begin, make sure you have the following: * Be able to verify the signature of requests from {% data variables.product.github %} to authenticate their origin and prevent unauthorized access * Be publicly accessible via HTTPS -For more information about signature verification, see [Verifying that payloads are coming from Github](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github#verifying-that-payloads-are-coming-from-github). +For more information about signature verification, see [Verifying that payloads are coming from {% data variables.product.github %}](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github#verifying-that-payloads-are-coming-from-github). ## Configuration requirements diff --git a/content/copilot/index.md b/content/copilot/index.md index 02a950857d96..af2527d18645 100644 --- a/content/copilot/index.md +++ b/content/copilot/index.md @@ -30,6 +30,7 @@ children: - /using-github-copilot - /example-prompts-for-github-copilot-chat - /managing-copilot + - /rolling-out-github-copilot-at-scale - /customizing-copilot - /building-copilot-extensions - /troubleshooting-github-copilot diff --git a/content/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot.md b/content/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot.md index fb15356e9168..c550c02d9d8b 100644 --- a/content/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot.md +++ b/content/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot.md @@ -46,8 +46,11 @@ Repository administrators{% ifversion ghec %}, organization owners, and enterpri | Vim/Neovim | {% octicon "check" aria-label="Supported" %} | Not applicable | | Xcode | {% octicon "check" aria-label="Supported" %} | Not applicable | | Azure Data Studio | {% octicon "x" aria-label="Not supported" %} | Not applicable | -| The {% data variables.product.github %} website | Not applicable | {% octicon "x" aria-label="Not supported" %} | -| {% data variables.product.prodname_mobile %} | Not applicable | {% octicon "x" aria-label="Not supported" %} | +| The {% data variables.product.github %} website | Not applicable | {% octicon "check" aria-label="Supported" %} | +| {% data variables.product.prodname_mobile %} | Not applicable | {% octicon "check" aria-label="Supported" %} | + +> [!NOTE] +> Content exclusion is in {% data variables.release-phases.public_preview %} on the {% data variables.product.github %} website and in {% data variables.product.prodname_mobile %} and is subject to change. ### Limitations of content exclusions diff --git a/content/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-copilot-policies-as-an-individual-subscriber.md b/content/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-copilot-policies-as-an-individual-subscriber.md index 9c58b66d4e27..39dc90e3182f 100644 --- a/content/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-copilot-policies-as-an-individual-subscriber.md +++ b/content/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-copilot-policies-as-an-individual-subscriber.md @@ -33,7 +33,7 @@ If you choose to allow suggestions matching public code, when {% data variables. ## Enabling or disabling prompt and suggestion collection -You can choose whether your prompts and {% data variables.product.prodname_copilot_short %}'s suggestions are collected and retained by {% data variables.product.prodname_dotcom %}, and further processed and shared with Microsoft. For more information about data that {% data variables.product.prodname_copilot %} may collect depending on your settings, see [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#github-copilot) and the [{% data variables.product.prodname_copilot %} privacy FAQ](https://github.com/features/copilot/#faq-privacy-copilot-for-business). +You can choose whether your prompts and {% data variables.product.prodname_copilot_short %}'s suggestions are collected and retained by {% data variables.product.prodname_dotcom %}, and further processed and shared with Microsoft. For more information about data that {% data variables.product.prodname_copilot %} may collect depending on your settings, see [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#github-copilot) and the [{% data variables.product.prodname_copilot %} privacy FAQ](https://github.com/features/copilot/#faq). {% data reusables.user-settings.copilot-settings %} 1. To allow or prevent {% data variables.product.prodname_dotcom %} using your data, select or deselect **Allow {% data variables.product.prodname_dotcom %} to use my code snippets from the code editor for product improvements**. @@ -52,4 +52,8 @@ You can enable web search for {% data variables.product.prodname_copilot_chat %} {% data reusables.user-settings.copilot-settings %} 1. To the right of **{% data variables.product.prodname_copilot_short %} access to Bing**, select the dropdown menu, and then click **Enabled** or **Disabled**. +## Model training and improvements + +By default, {% data variables.product.github %}, its affiliates, and third parties will **not** use your data, including prompts, suggestions, and code snippets, for AI model training. This is reflected in your personal settings for {% data variables.product.prodname_copilot %} and cannot be enabled. + {% endif %} diff --git a/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/subscribing-to-copilot-for-your-enterprise.md b/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/subscribing-to-copilot-for-your-enterprise.md index 98e6e2eb2d18..c3234b149a16 100644 --- a/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/subscribing-to-copilot-for-your-enterprise.md +++ b/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/subscribing-to-copilot-for-your-enterprise.md @@ -15,6 +15,8 @@ redirect_from: >[!NOTE] > {% data reusables.copilot.signup-procedure-enterprise-msft-ea %} +> +> If you do not yet have a {% data variables.product.prodname_ghe_cloud %} account, you can start a free 30-day trial, which includes {% data variables.product.prodname_copilot_for_business %}. For more information, see [AUTOTITLE](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud). 1. Ensure you are signed in as an enterprise admin on {% data variables.product.github %}. 1. Navigate to the [{% data variables.product.prodname_copilot %} sign up page](https://github.com/github-copilot/purchase). diff --git a/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/upgrading-copilot-for-your-enterprise.md b/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/upgrading-copilot-for-your-enterprise.md index d1f7689370a6..ae1e2ef51f00 100644 --- a/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/upgrading-copilot-for-your-enterprise.md +++ b/content/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-the-copilot-subscription-for-your-enterprise/upgrading-copilot-for-your-enterprise.md @@ -12,6 +12,9 @@ redirect_from: - /copilot/managing-copilot/managing-copilot-for-your-enterprise/upgrading-copilot-for-your-enterprise --- +>[!NOTE] +> You must already have a paid subscription to {% data variables.product.prodname_copilot_business_short %} to upgrade to {% data variables.product.prodname_copilot_enterprise_short %}. Trial subscriptions are not eligible for upgrade. + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.copilot-tab %} diff --git a/content/copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/index.md b/content/copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/index.md index cb4aaf7bfb49..319f8b7e59e8 100644 --- a/content/copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/index.md +++ b/content/copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/index.md @@ -9,5 +9,4 @@ topics: children: - /reviewing-user-activity-data-for-copilot-in-your-organization - /reviewing-audit-logs-for-copilot-business - - /analyzing-usage-over-time-with-the-copilot-metrics-api --- diff --git a/content/copilot/responsible-use-of-github-copilot-features/responsible-use-of-github-copilot-chat-in-github.md b/content/copilot/responsible-use-of-github-copilot-features/responsible-use-of-github-copilot-chat-in-github.md index 51b810d29e74..ab29ef71903b 100644 --- a/content/copilot/responsible-use-of-github-copilot-features/responsible-use-of-github-copilot-chat-in-github.md +++ b/content/copilot/responsible-use-of-github-copilot-features/responsible-use-of-github-copilot-chat-in-github.md @@ -87,7 +87,7 @@ However, it's important to note that {% data variables.product.prodname_copilot_ ## Improving performance for {% data variables.product.prodname_copilot_chat_short %} -{% data variables.product.prodname_copilot_chat_short %} can support a wide range of practical applications like Q&A, code generation, code analysis, and code fixes, each with different performance metrics and mitigation strategies. To enhance performance and address some of the limitations of {% data variables.product.prodname_copilot_chat_short %}, there are various measures that you can adopt. For more information on the limitations of {% data variables.product.prodname_copilot_chat_short %}, see "[Limitations of {% data variables.product.prodname_copilot_chat %}](#limitations-of-github-copilot-chat)." +{% data variables.product.prodname_copilot_chat_short %} can support a wide range of practical applications like Q&A, code generation, code analysis, and code fixes, each with different performance metrics and mitigation strategies. To enhance performance and address some of the limitations of {% data variables.product.prodname_copilot_chat_short %}, there are various measures that you can adopt. For more information on the limitations of {% data variables.product.prodname_copilot_chat_short %}, see [Limitations of {% data variables.product.prodname_copilot_chat %}](#limitations-of-github-copilot-chat). ### Keep your prompts on topic diff --git a/content/copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/analyzing-usage-over-time-with-the-copilot-metrics-api.md b/content/copilot/rolling-out-github-copilot-at-scale/analyzing-usage-over-time-with-the-copilot-metrics-api.md similarity index 98% rename from content/copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/analyzing-usage-over-time-with-the-copilot-metrics-api.md rename to content/copilot/rolling-out-github-copilot-at-scale/analyzing-usage-over-time-with-the-copilot-metrics-api.md index d9cbf05e1bea..fc1a7e7cfb6b 100644 --- a/content/copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/analyzing-usage-over-time-with-the-copilot-metrics-api.md +++ b/content/copilot/rolling-out-github-copilot-at-scale/analyzing-usage-over-time-with-the-copilot-metrics-api.md @@ -5,6 +5,8 @@ intro: 'Learn how to connect to the API, store data, and analyze usage trends.' versions: feature: copilot product: '{% data variables.product.prodname_copilot_for_business %} or {% data variables.product.prodname_copilot_enterprise %}' +redirect_from: + - /copilot/managing-copilot/managing-github-copilot-in-your-organization/reviewing-activity-related-to-github-copilot-in-your-organization/analyzing-usage-over-time-with-the-copilot-metrics-api permissions: 'Organization owners, enterprise owners, and billing managers' layout: inline topics: diff --git a/content/copilot/rolling-out-github-copilot-at-scale/driving-copilot-adoption-in-your-company.md b/content/copilot/rolling-out-github-copilot-at-scale/driving-copilot-adoption-in-your-company.md new file mode 100644 index 000000000000..7a0093269063 --- /dev/null +++ b/content/copilot/rolling-out-github-copilot-at-scale/driving-copilot-adoption-in-your-company.md @@ -0,0 +1,90 @@ +--- +title: Driving Copilot adoption in your company +shortTitle: Drive Copilot adoption +intro: 'Learn how to plan an effective enablement process to drive Copilot adoption.' +versions: + feature: copilot +topics: + - Copilot +--- + +An effective enablement process is essential to drive adoption of {% data variables.product.prodname_copilot_short %} in your organization. This process should be tailored to your organization's needs and goals, and should be designed to help your teams understand how to use {% data variables.product.prodname_copilot_short %} effectively. + +Your enablement process may evolve based on feedback and results. You should regularly review and update the process to ensure it continues to meet your organization's needs. + +The {% data variables.product.prodname_copilot %} enablement process can be broken down into the following stages: + +* Granting licenses +* Supporting users setting up their environment +* Supporting effective use of {% data variables.product.prodname_copilot_short %} + +## Prerequisites + +* {% data variables.product.prodname_copilot %} must be set up in your {% ifversion ghec %}enterprise and {% endif %}organization. For more information, see {% ifversion ghec %}[AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise) and {% endif %}[AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-organization). + +## Granting licenses + +Before you can drive adoption of {% data variables.product.prodname_copilot %}, you need to ensure that your teams have access to the product. For more information, see [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-access-to-github-copilot-in-your-organization/granting-access-to-copilot-for-members-of-your-organization). + +Depending on the size of your organization, you may want to start with a small pilot program. This will allow you to test your enablement process and make any necessary adjustments before rolling it out to the rest of your organization. + +You can start by identifying a small number of teams that are interested in using {% data variables.product.prodname_copilot_short %}. You can then work with these teams to help them get started with {% data variables.product.prodname_copilot_short %}. + +## Supporting users setting up their environment + +Once your teams have access to {% data variables.product.prodname_copilot %}, ensure they're confident with setting up their environment. {% data variables.product.github %} provides comprehensive documentation to help users set up their environment and resolve common issues. See [AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-yourself) and [AUTOTITLE](/copilot/troubleshooting-github-copilot). + +If your company uses a corporate proxy or firewall, there are additional steps for ensuring users can connect to {% data variables.product.prodname_copilot %}: + +* Ensure that key URLs are added to the allowlist for the proxy server or firewall. See [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/configuring-your-proxy-server-or-firewall-for-copilot). +* Provide guidance for your users to set up their environment to connect via your proxy. You may also need to install custom SSL certificates on your users' machines. See [AUTOTITLE](/copilot/managing-copilot/configure-personal-settings/configuring-network-settings-for-github-copilot). + +For more complex issues, you may also choose to designate an internal point of contact to help users resolve issues, or escalate them to {% data variables.contact.github_support %}. You should choose a point of contact who is confident troubleshooting firewall and network configuration issues. + +## Supporting effective use of {% data variables.product.prodname_copilot_short %} in your organization + +This section offers examples of how you can support effective use of {% data variables.product.prodname_copilot_short %}. You can use these examples as a starting point and adapt them to meet your organization's needs and goals. + +### Creating onboarding resources + +You may choose to create internal onboarding materials to help teams get started with {% data variables.product.prodname_copilot_short %}. These materials could include your organization's policies and guidelines for using {% data variables.product.prodname_copilot_short %}, {% data variables.product.github %} documentation, relevant {% data variables.product.github %} blog posts, and any other resources that you think will be helpful. + +{% data variables.product.github %} documentation that you may want to feature in your onboarding materials includes: + +* [AUTOTITLE](/copilot/using-github-copilot/best-practices-for-using-github-copilot) +* [AUTOTITLE](/copilot/using-github-copilot/prompt-engineering-for-github-copilot) +* [AUTOTITLE](/copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot) +* [AUTOTITLE](/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide) + +You can also create a {% data variables.product.github %} repository to store these materials, and encourage teams to contribute their own resources and best practices. This can help foster a sense of community among teams that are using {% data variables.product.prodname_copilot_short %}, and make it easier for new teams to get started. + +### Working with your pilot program + +Once the users in your pilot program have used your onboarding resources, you will have an initial opportunity for feedback, to see whether there are any sticking points that should be resolved before rolling out {% data variables.product.prodname_copilot_short %} on a larger scale. + +One way to gather feedback is with a survey. You can use the {% data variables.product.prodname_copilot_short %} survey engine to create an app that will trigger a survey at specific points in the {% data variables.product.prodname_copilot_short %} experience. See the [{% data variables.product.prodname_copilot_short %} survey engine](https://github.com/github/copilot-survey-engine). + +### Offering training and support + +From your pilot program, you can identify a group of {% data variables.product.prodname_copilot_short %} champions who are enthusiastic about using {% data variables.product.prodname_copilot_short %} and are willing to help others get started. You can work with these champions to create training sessions, workshops, and other resources to help teams get started with {% data variables.product.prodname_copilot_short %}. + +You can also use {% data variables.product.prodname_discussions %} to create a space where teams can ask questions, share best practices, and learn from each other. This can help foster a sense of community among teams that are using {% data variables.product.prodname_copilot_short %}, and make it easier for new teams to get started. + +{% data variables.product.github %} also provides a dedicated {% data variables.product.prodname_copilot_short %} Workshops repository, which contains a selection of workshops designed to help teams learn how to use {% data variables.product.prodname_copilot_short %} effectively. See [Copilot Workshops](https://github.com/copilot-workshops). + +### Providing learning resources + +In addition to your onboarding resources, you may want to provide a library of learning resources to help teams advance their skills with {% data variables.product.prodname_copilot_short %}. The {% data variables.product.prodname_copilot_chat_short %} Cookbook is a great place to start. The Cookbook is a collection of example prompts that you can use to learn how to ask {% data variables.product.prodname_copilot_short %} for help with a wide range of tasks. See [AUTOTITLE](/copilot/example-prompts-for-github-copilot-chat). + +### Communicating expectations + +If your organization has specific {% data variables.product.prodname_copilot_short %} usage guidelines, these should be clearly communicated in onboarding materials and anywhere else that teams might look for information. For example, if you plan to revoke access to {% data variables.product.prodname_copilot_short %} for users who have not used it in a certain period of time, ensure that your users are aware of this policy. + +### Ongoing analysis and optimization + +Once you have implemented your {% data variables.product.prodname_copilot_short %} enablement process, you should regularly review and optimize it to ensure it continues to meet your organization's needs. Some ways you can do this are: + +* Monitoring usage data to identify trends and patterns. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/analyzing-usage-over-time-with-the-copilot-metrics-api). +* Following up with users who haven't been using their assigned license. You can use the API to see the latest activity date for each assigned seat. See [AUTOTITLE](/rest/copilot/copilot-user-management#list-all-copilot-seat-assignments-for-an-organization). +* Gathering feedback from teams to understand what is working well and what could be improved +* Reviewing {% data variables.product.prodname_discussions %} and other communication channels to identify common issues and questions diff --git a/content/copilot/rolling-out-github-copilot-at-scale/index.md b/content/copilot/rolling-out-github-copilot-at-scale/index.md new file mode 100644 index 000000000000..c00a2a386dbb --- /dev/null +++ b/content/copilot/rolling-out-github-copilot-at-scale/index.md @@ -0,0 +1,12 @@ +--- +title: Rolling out GitHub Copilot at scale +shortTitle: Roll out Copilot at scale +intro: 'Learn how to manage a Copilot rollout in your organization or enterprise.' +versions: + feature: copilot +topics: + - Copilot +children: + - /driving-copilot-adoption-in-your-company + - /analyzing-usage-over-time-with-the-copilot-metrics-api +--- diff --git a/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise.md b/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise.md index f6d4545ac627..dacb7c244e3a 100644 --- a/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise.md +++ b/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise.md @@ -34,8 +34,6 @@ Enable {% data variables.product.prodname_copilot_short %} for some or all organ If your enterprise is on {% data variables.enterprise.data_residency_site %}, users must perform some additional setup to authenticate to their account from their development environment. See [AUTOTITLE](/copilot/managing-copilot/configure-personal-settings/using-github-copilot-with-an-account-on-ghecom). -## 5. Share onboarding material +## 5. Drive {% data variables.product.prodname_copilot_short %} adoption -* **Share onboarding material:** Share onboarding material with each organization that you granted {% data variables.product.prodname_copilot_short %} access to. See [AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-organization). -* **Encourage adoption:** Encouragement from leadership can help drive adoption of {% data variables.product.prodname_copilot_short %} in your enterprise. Consider messaging your support of {% data variables.product.prodname_copilot_short %} and how it can help your enterprise. -* **Set up training sessions or workshops:** Training sessions or workshops can help members learn how to use {% data variables.product.prodname_copilot_short %} effectively. +Planning and implementing an effective enablement process is essential to drive adoption of {% data variables.product.prodname_copilot_short %} in your enterprise. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/driving-copilot-adoption-in-your-company). diff --git a/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-organization.md b/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-organization.md index 0cf641815700..3c304b2552ee 100644 --- a/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-organization.md +++ b/content/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-organization.md @@ -41,11 +41,9 @@ Alternatively, you can set up a self-serve workflow using the API. See [Add team If your organization is part of an enterprise on {% data variables.enterprise.data_residency_site %}, users must perform some additional setup to authenticate to their account from their development environment. See [AUTOTITLE](/copilot/managing-copilot/configure-personal-settings/using-github-copilot-with-an-account-on-ghecom). -## 5. Share onboarding material +## 5. Drive {% data variables.product.prodname_copilot_short %} adoption -* **Share onboarding material:** Share onboarding material with each member that you granted {% data variables.product.prodname_copilot_short %} access to. See [AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-yourself) and [AUTOTITLE](/copilot/using-github-copilot/best-practices-for-using-github-copilot). -* **Encourage adoption:** Encouragement from leadership can help drive adoption of {% data variables.product.prodname_copilot_short %} in your organization. Consider messaging your support of {% data variables.product.prodname_copilot_short %} and how it can help your organization. -* **Set up training sessions or workshops:** Training sessions or workshops can help members learn how to use {% data variables.product.prodname_copilot_short %} effectively. +Planning and implementing an effective enablement process is essential to drive adoption of {% data variables.product.prodname_copilot_short %} in your organization. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/driving-copilot-adoption-in-your-company). ## 6. Enhance the {% data variables.product.prodname_copilot_short %} experience @@ -54,13 +52,3 @@ Enhance the {% data variables.product.prodname_copilot_short %} experience for y * **Setting up knowledge bases** for use with {% data variables.product.prodname_copilot_chat_short %} _({% data variables.product.prodname_copilot_enterprise_short %} only)_. See [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/managing-copilot-knowledge-bases). * **Fine tuning {% data variables.product.prodname_copilot_short %}** by creating a custom large language model. See [AUTOTITLE](/copilot/customizing-copilot/creating-a-custom-model-for-github-copilot). * **Installing {% data variables.product.prodname_copilot_extensions_short %}** to integrate other tools with {% data variables.product.prodname_copilot_chat_short %}. See [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/installing-github-copilot-extensions-for-your-organization). - -## 7. Drive adoption - -To help your organization get the most out of {% data variables.product.prodname_copilot_short %}, reach out to users who have not used {% data variables.product.prodname_copilot_short %} recently. (You can use the API to identify users who have not used {% data variables.product.prodname_copilot_short %} recently.) To help those users, consider: - -* Sharing resources to help them get started, such as [AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-yourself), [AUTOTITLE](/copilot/using-github-copilot/best-practices-for-using-github-copilot), and [AUTOTITLE](/copilot/using-github-copilot/prompt-engineering-for-github-copilot) -* Learning about their barriers to using {% data variables.product.prodname_copilot_short %} -* Addressing any concerns they have about using {% data variables.product.prodname_copilot_short %} -* Giving them ideas for how to incorporate {% data variables.product.prodname_copilot_short %} into their work -* Pairing them with a mentor who can help them understand how to take advantage of {% data variables.product.prodname_copilot_short %} diff --git a/content/copilot/using-github-copilot/asking-github-copilot-questions-in-github.md b/content/copilot/using-github-copilot/asking-github-copilot-questions-in-github.md index 40d62c2da744..8591f587ad31 100644 --- a/content/copilot/using-github-copilot/asking-github-copilot-questions-in-github.md +++ b/content/copilot/using-github-copilot/asking-github-copilot-questions-in-github.md @@ -61,7 +61,7 @@ The skills you can use in {% data variables.product.prodname_copilot_chat_dotcom | **Repository details** | Retrieves a specific {% data variables.product.prodname_dotcom %} repository. This is useful for finding out details such as the repository owner and the main language used. | Yes | `Tell me about this repo` | | **Semantic code search** | Natural language semantic code search in the default branch of the Git repository. This skill is useful when you want to know where or how certain functionality has been implemented in the code. | Yes

    Available for all repositories with a {% data variables.product.prodname_copilot_enterprise_short %} subscription, and for public repositories with a {% data variables.product.prodname_copilot_individuals_short %} or {% data variables.product.prodname_copilot_business_short %} subscription. | `How does this repo manage HTTP requests and responses?`| | **Support search** | Retrieves information from the {% data variables.contact.contact_support_portal %}. This skill is useful for asking {% data variables.product.prodname_copilot_chat_short %} about {% data variables.product.prodname_dotcom %} products and support related questions. | Yes | `Can I use {% data variables.product.prodname_copilot_short %} knowledge bases with {% data variables.product.prodname_copilot_individuals_short %}?` | -| **Web search** | Searches the web using the Bing search engine. This skill is useful for teaching {% data variables.product.prodname_copilot_short %} about recent events, new developments, trends, technologies, or extremely specific, detailed, or niche subjects. | No

    {% ifversion fpt %}_For {% data variables.product.prodname_copilot_individuals_short %}:_
    Enable in your user settings.

    _For {% data variables.product.prodname_copilot_business_short %}:_
    Enable in organization settings.{% else %}Enable in enterprise or organization settings.{% endif %} | `What are some recent articles about SAT tokens securing against vulnerabilities in Node?` | +| **Web search** | Searches the web using the Bing search engine. This skill allows {% data variables.product.prodname_copilot_short %} to access information about recent events, new developments, trends, technologies, or extremely specific, detailed, or niche subjects. | No

    {% ifversion fpt %}_For {% data variables.product.prodname_copilot_individuals_short %}:_
    Enable in your user settings.

    _For {% data variables.product.prodname_copilot_business_short %}:_
    Enable in organization settings.{% else %}Enable in enterprise or organization settings.{% endif %} | `What are some recent articles about SAT tokens securing against vulnerabilities in Node?` | ## AI models for {% data variables.product.prodname_copilot_chat_short %} @@ -370,8 +370,6 @@ You can ask {% data variables.product.prodname_copilot_short %} to summarize a p ### Ask why a workflow has failed -> [!NOTE]This feature is currently in {% data variables.release-phases.public_preview %} and subject to change. - 1. On {% data variables.product.github %}, navigate to a pull request in a repository. 1. Scroll to the bottom of the page, then, next to one of the failing checks, click **Details**. diff --git a/content/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide.md b/content/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide.md index d74b61f71b67..ee16f17bdafd 100644 --- a/content/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide.md +++ b/content/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide.md @@ -130,7 +130,7 @@ The skills you can use in {% data variables.product.prodname_copilot_chat_short | **Repository details** | Retrieves a specific {% data variables.product.prodname_dotcom %} repository. This is useful for finding out details such as the repository owner and the main language used. | Yes | `@github Tell me about PATH-TO-REPOSITORY` | | **Semantic code search** | Natural language semantic code search in the default branch of the Git repository. This skill is useful when you want to know where or how certain functionality has been implemented in the code. For more information, see [AUTOTITLE](/copilot/using-github-copilot/indexing-repositories-for-copilot-chat). | Yes

    Available for all repositories with a {% data variables.product.prodname_copilot_enterprise_short %} subscription, and for public repositories with a {% data variables.product.prodname_copilot_individuals_short %} or {% data variables.product.prodname_copilot_business_short %} subscription. | `How does this repo manage HTTP requests and responses?`| | **Support search** | Retrieves information from the {% data variables.contact.contact_support_portal %}. This skill is useful for asking {% data variables.product.prodname_copilot_chat_short %} about {% data variables.product.prodname_dotcom %} products and support related questions. | Yes | `@github Can I use {% data variables.product.prodname_copilot_short %} knowledge bases with {% data variables.product.prodname_copilot_individuals_short %}?` | -| **Web search** | Searches the web using the Bing search engine. This skill is useful for teaching {% data variables.product.prodname_copilot_short %} about recent events, new developments, trends, technologies, or extremely specific, detailed, or niche subjects. | No

    {% ifversion fpt %}_For {% data variables.product.prodname_copilot_individuals_short %}:_
    Enable in your user settings.

    _For {% data variables.product.prodname_copilot_business_short %}:_
    Enable in organization settings.{% else %}Enable in enterprise or organization settings.{% endif %} | `@github #web What are some recent articles about SAT tokens securing against vulnerabilities in Node?` | +| **Web search** | Searches the web using the Bing search engine. This skill allows {% data variables.product.prodname_copilot_short %} to access information about recent events, new developments, trends, technologies, or extremely specific, detailed, or niche subjects. | No

    {% ifversion fpt %}_For {% data variables.product.prodname_copilot_individuals_short %}:_
    Enable in your user settings.

    _For {% data variables.product.prodname_copilot_business_short %}:_
    Enable in organization settings.{% else %}Enable in enterprise or organization settings.{% endif %} | `@github #web What are some recent articles about SAT tokens securing against vulnerabilities in Node?` | {% ifversion ghec %} @@ -284,7 +284,7 @@ The skills you can use in {% data variables.product.prodname_copilot_chat_short | **Lexical code search** | Keyword code search in the default branch of the Git repository. This skill is useful when you want to know about specific functions, methods or keywords that exist in the code. This skill leverages most of the functionality available to [{% data variables.product.prodname_dotcom %} Search](/search-github/github-code-search/understanding-github-code-search-syntax#using-qualifiers) like `symbol` and `path`. | Yes | `Find me the tests for the GitService class` | | **Path search** | Retrieves a specific file in the default branch of the Git repository. This skill is useful when you provide the exact path of a file in the repository. | Yes | `@github What logic does user_auth.js encapsulate?` | | **Semantic code search** | Natural language semantic code search in the default branch of the Git repository. This skill is useful when you want to know where or how certain functionality has been implemented in the code. For more information, see [AUTOTITLE](/copilot/using-github-copilot/indexing-repositories-for-copilot-chat). | Yes

    Available for all repositories with a {% data variables.product.prodname_copilot_enterprise_short %} subscription, and for public repositories with a {% data variables.product.prodname_copilot_individuals_short %} or {% data variables.product.prodname_copilot_business_short %} subscription. | `How does this repo manage HTTP requests and responses?`| -| **Web search** | Searches the web using the Bing search engine. This skill is useful for teaching Copilot about recent events, new developments, trends, technologies, or extremely specific, detailed, or niche subjects. | No

    {% ifversion fpt %}_For {% data variables.product.prodname_copilot_individuals_short %}:_
    Enable in your user settings.

    _For {% data variables.product.prodname_copilot_business_short %}:_
    Enable in organization settings.{% else %}Enable in enterprise or organization settings.{% endif %} | `@github What are some recent articles about SAT tokens securing against vulnerabilities in Node?` | +| **Web search** | Searches the web using the Bing search engine. This skill allows {% data variables.product.prodname_copilot_short %} to access information about recent events, new developments, trends, technologies, or extremely specific, detailed, or niche subjects. | No

    {% ifversion fpt %}_For {% data variables.product.prodname_copilot_individuals_short %}:_
    Enable in your user settings.

    _For {% data variables.product.prodname_copilot_business_short %}:_
    Enable in organization settings.{% else %}Enable in enterprise or organization settings.{% endif %} | `@github What are some recent articles about SAT tokens securing against vulnerabilities in Node?` | {% ifversion ghec %} diff --git a/content/copilot/using-github-copilot/code-review/using-copilot-code-review.md b/content/copilot/using-github-copilot/code-review/using-copilot-code-review.md index 196156325e07..82d7c1f7b030 100644 --- a/content/copilot/using-github-copilot/code-review/using-copilot-code-review.md +++ b/content/copilot/using-github-copilot/code-review/using-copilot-code-review.md @@ -14,12 +14,7 @@ redirect_from: - /early-access/copilot/code-reviews/using-copilot-code-reviews --- -> [!NOTE] -> -> * {% data variables.copilot.copilot_code-review %} is in {% data variables.release-phases.public_preview %} and subject to change. -> * To participate in the {% data variables.release-phases.public_preview %}, an administrator of your {% ifversion ghec %}enterprise or{% endif %} organization must opt in to the use of previews of {% data variables.product.prodname_copilot_short %} features. See {% ifversion ghec %}[AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise#copilot-in-githubcom) and{% endif %} [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization#enabling-copilot-features-in-your-organization). -> * Some functionality is available to all enabled {% data variables.product.prodname_copilot_short %} subscribers, but other functionality is only available to a limited number of users. To join the waitlist for additional functionality, see [Join the {% data variables.copilot.copilot_code-review_short %} waitlist](https://gh.io/copilot-code-review-waitlist). -> * The [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-pre-release-license-terms) apply to your use of this product. +{% data reusables.copilot.code-review.preview-note %} ## About {% data variables.copilot.copilot_code-review_short %} diff --git a/content/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot.md b/content/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot.md index 231ca6bf6dd9..58a41a587a48 100644 --- a/content/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot.md +++ b/content/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot.md @@ -11,15 +11,11 @@ topics: {% data reusables.copilot.claude-sonnet-preview-note %} -## {% data variables.copilot.copilot_claude_sonnet %} announcement and rollout +## About {% data variables.copilot.copilot_claude_sonnet %} in {% data variables.product.prodname_copilot %} -{% data variables.copilot.copilot_claude_sonnet %} availability in {% data variables.product.prodname_copilot %} was announced on October 29th at GitHub Universe 2024. Access to the model will roll out progressively over an estimated two-week period to all {% data variables.product.prodname_copilot_short %} plans. This new model will initially be available in {% data variables.product.prodname_copilot_chat_short %} for {% data variables.product.prodname_vscode %} and in immersive chat on the {% data variables.product.github %} website. +{% data variables.copilot.copilot_claude_sonnet %} is a large language model that you can use as an alternative to the default model used by {% data variables.product.prodname_copilot_chat_short %}. {% data variables.copilot.copilot_claude_sonnet %} excels at coding tasks across the entire software development lifecycle, from initial design to bug fixes, maintenance to optimizations. Learn more about the [model's capabilities](https://www.anthropic.com/claude/sonnet) or read the [model card](https://assets.anthropic.com/m/61e7d27f8c8f5919/original/Claude-3-Model-Card.pdf). -To know if you or your organization has access to enable {% data variables.copilot.copilot_claude_sonnet %}, you can check whether the policy is present at the bottom of [your personal {% data variables.product.prodname_copilot_short %} policy settings](https://github.com/settings/copilot). If you don't see a policy for **Anthropic {% data variables.copilot.copilot_claude_sonnet %} for {% data variables.product.prodname_copilot_short %}**, you have not yet received access via the rollout. - -## About {% data variables.copilot.copilot_claude_sonnet %} on GitHub - -{% data variables.copilot.copilot_claude_sonnet %} excels at coding tasks across the entire software development lifecycle, from initial design to bug fixes, maintenance to optimizations. Learn more about the [model's capabilities](https://www.anthropic.com/claude/sonnet) or read the [model card](https://assets.anthropic.com/m/61e7d27f8c8f5919/original/Claude-3-Model-Card.pdf). +{% data variables.copilot.copilot_claude_sonnet %} is currently available in {% data variables.product.prodname_copilot_chat_short %} for {% data variables.product.prodname_vscode %} and {% data variables.product.prodname_vs %}, and in immersive chat on the {% data variables.product.github %} website. {% data variables.product.prodname_copilot %} uses {% data variables.copilot.copilot_claude_sonnet %} hosted on Amazon Web Services. When using {% data variables.copilot.copilot_claude_sonnet %}, prompts and metadata are sent to Amazon's Bedrock service, which makes the [following data commitments](https://docs.aws.amazon.com/bedrock/latest/userguide/data-protection.html): _Amazon Bedrock doesn't store or log your prompts and completions. Amazon Bedrock doesn't use your prompts and completions to train any AWS models and doesn't distribute them to third parties_. @@ -33,7 +29,7 @@ You must enable access to {% data variables.copilot.copilot_claude_sonnet %} bef ### Setup for individual use -If you have a {% data variables.product.prodname_copilot_pro_short %} subscription, you can enable {% data variables.copilot.copilot_claude_sonnet %} in two ways: +If you have a {% data variables.product.prodname_copilot_free_short %} or {% data variables.product.prodname_copilot_pro_short %} subscription, you can enable {% data variables.copilot.copilot_claude_sonnet %} in two ways: * The first time you choose to use {% data variables.copilot.copilot_claude_sonnet %} with {% data variables.product.prodname_copilot_chat_short %} in {% data variables.product.prodname_vscode %}, or in the immersive view of {% data variables.product.prodname_copilot_chat_short %}, you will be prompted to allow access to the model. @@ -53,3 +49,7 @@ For details of how to change the model for {% data variables.product.prodname_co * [AUTOTITLE](/copilot/using-github-copilot/asking-github-copilot-questions-in-githubcom#changing-your-ai-model) * [AUTOTITLE](/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide#changing-your-ai-model) + +## Leaving feedback + +To leave feedback about Claude 3.5 Sonnet in {% data variables.product.prodname_copilot %}, or to ask a question, see the {% data variables.product.prodname_github_community %} discussion [Claude 3.5 Sonnet is now available to all {% data variables.product.prodname_copilot_short %} users in Public Preview](https://github.com/orgs/community/discussions/143337). diff --git a/content/desktop/adding-and-cloning-repositories/adding-a-repository-from-your-local-computer-to-github-desktop.md b/content/desktop/adding-and-cloning-repositories/adding-a-repository-from-your-local-computer-to-github-desktop.md index ec0e481313a1..e168e2532337 100644 --- a/content/desktop/adding-and-cloning-repositories/adding-a-repository-from-your-local-computer-to-github-desktop.md +++ b/content/desktop/adding-and-cloning-repositories/adding-a-repository-from-your-local-computer-to-github-desktop.md @@ -16,9 +16,9 @@ shortTitle: Add a repository {% mac %} 1. In the menu bar, select **File**, then click **Add Local Repository**. - ![Screenshot of the menu bar on a Mac. The "File" dropdown menu is open, and an option labeled "Add Local Repository" is highlighted with an orange outline.](/assets/images/help/desktop/add-local-repository-mac.png) + ![Screenshot of the menu bar on a Mac. The "File" dropdown menu is open, and an option labeled "Add Local Repository" is outlined in orange.](/assets/images/help/desktop/add-local-repository-mac.png) 1. In the "Add Local Repository" window, click **Choose...**, then use the Finder window to navigate to the local repository you want to add. - ![Screenshot of the "Add Local Repository" window. Next to the "repository path" field, a button, labeled "Choose", is highlighted with an orange outline.](/assets/images/help/desktop/add-repo-choose-button-mac.png) + ![Screenshot of the "Add Local Repository" window. Next to the "repository path" field, a button, labeled "Choose", is outlined in orange.](/assets/images/help/desktop/add-repo-choose-button-mac.png) 1. When you have chosen the local repository, in the "Add Local Repository" window, click **Add Repository**. {% endmac %} @@ -26,9 +26,9 @@ shortTitle: Add a repository {% windows %} 1. In the menu bar, select **File**, then click **Add local repository**. - ![Screenshot of the menu bar on Windows. The "File" dropdown menu is open, and an option labeled "Add local repository" is highlighted with an orange outline.](/assets/images/help/desktop/add-local-repository-windows.png) + ![Screenshot of the menu bar on Windows. The "File" dropdown menu is open, and an option labeled "Add local repository" is outlined in orange.](/assets/images/help/desktop/add-local-repository-windows.png) 1. In the "Add local repository" window, click **Choose...**, then use Windows Explorer to navigate to the local repository you want to add. - ![Screenshot of the "Add local repository" window. Next to the "repository path" field, a button, labeled "Choose", is highlighted with an orange outline.](/assets/images/help/desktop/add-repo-choose-button-mac.png) + ![Screenshot of the "Add local repository" window. Next to the "repository path" field, a button, labeled "Choose", is outlined in orange.](/assets/images/help/desktop/add-repo-choose-button-mac.png) 1. Click **Add repository**. {% endwindows %} diff --git a/content/desktop/adding-and-cloning-repositories/cloning-a-repository-from-github-to-github-desktop.md b/content/desktop/adding-and-cloning-repositories/cloning-a-repository-from-github-to-github-desktop.md index 4c8a2fef2fe5..c9cc81ded262 100644 --- a/content/desktop/adding-and-cloning-repositories/cloning-a-repository-from-github-to-github-desktop.md +++ b/content/desktop/adding-and-cloning-repositories/cloning-a-repository-from-github-to-github-desktop.md @@ -18,7 +18,7 @@ shortTitle: Clone a GitHub repo {% data reusables.repositories.open-with-github-desktop %} 1. Click **Choose...** and navigate to a local directory where you want to clone the repository. - ![Screenshot of the "URL" tab of the "Clone a Repository" window. Next to the "Local Path" field, a button, labeled "Choose", is highlighted with an orange outline.](/assets/images/help/desktop/clone-choose-button-url-mac.png) + ![Screenshot of the "URL" tab of the "Clone a Repository" window. Next to the "Local Path" field, a button, labeled "Choose", is outlined in orange.](/assets/images/help/desktop/clone-choose-button-url-mac.png) > [!NOTE] > If the repository is configured to use LFS, you will be prompted to initialize {% data variables.large_files.product_name_short %}. diff --git a/content/desktop/installing-and-authenticating-to-github-desktop/updating-github-desktop.md b/content/desktop/installing-and-authenticating-to-github-desktop/updating-github-desktop.md index a69f4d9b928c..88fad4aaa73a 100644 --- a/content/desktop/installing-and-authenticating-to-github-desktop/updating-github-desktop.md +++ b/content/desktop/installing-and-authenticating-to-github-desktop/updating-github-desktop.md @@ -19,7 +19,7 @@ versions: ![Screenshot of the menu bar on a Mac. Under the open "GitHub Desktop" dropdown menu, a cursor hovers over "About GitHub Desktop", highlighted in blue.](/assets/images/help/desktop/desktop-menu-about-desktop-mac.png) 1. In the modal window, click **Check for Updates**. - ![Screenshot of the "GitHub Desktop" window. Under version details and links to external resources, a button, labeled "Check for Updates", is outlined in orange.](/assets/images/help/desktop/check-for-updates.png) + ![Screenshot of the "GitHub Desktop" window. Under version details and links to external resources, a "Check for Updates" button is outlined in orange.](/assets/images/help/desktop/check-for-updates.png) 1. If an update is available, quit and relaunch {% data variables.product.prodname_desktop %} to install the update. ## Resolving a crash at launch by updating {% data variables.product.prodname_desktop %} @@ -41,11 +41,11 @@ If you encounter a crash when attempting to launch {% data variables.product.pro 1. In the menu bar, select **Help**, then click **About GitHub Desktop**. - ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the open "Help" dropdown menu, an option labeled "About GitHub Desktop" is outlined in orange.](/assets/images/help/desktop/help-about-desktop-win.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the open "Help" dropdown menu, the "About GitHub Desktop" option is outlined in orange.](/assets/images/help/desktop/help-about-desktop-win.png) 1. Click **Check for Updates**. - ![Screenshot of the "GitHub Desktop" window. Under version details and links to external resources, a button, labeled "Check for Updates", is outlined in orange.](/assets/images/help/desktop/check-for-updates.png) + ![Screenshot of the "GitHub Desktop" window. Under version details and links to external resources, a "Check for Updates" button is outlined in orange.](/assets/images/help/desktop/check-for-updates.png) 1. If an update is available, quit and relaunch {% data variables.product.prodname_desktop %} to install the update. diff --git a/content/desktop/making-changes-in-a-branch/managing-branches-in-github-desktop.md b/content/desktop/making-changes-in-a-branch/managing-branches-in-github-desktop.md index 5fcf9684598a..df455356987d 100644 --- a/content/desktop/making-changes-in-a-branch/managing-branches-in-github-desktop.md +++ b/content/desktop/making-changes-in-a-branch/managing-branches-in-github-desktop.md @@ -52,7 +52,7 @@ Repository administrators can also enable rulesets. Rulesets can be used to requ {% data reusables.desktop.history-tab %} 1. Right-click on the commit you would like to create a new branch from and select **Create Branch from Commit**. - ![Screenshot of a list of commits in the "History" tab. Next to a commit, in a context menu, the cursor hovers over the "Create Branch from Commit" option.](/assets/images/help/desktop/create-branch-from-commit-context-menu.png) + ![Screenshot of a list of commits in the "History" tab. Next to a commit, the cursor hovers the "Create Branch from Commit" option in a context menu.](/assets/images/help/desktop/create-branch-from-commit-context-menu.png) {% data reusables.desktop.name-branch %} {% data reusables.desktop.confirm-new-branch-button %} diff --git a/content/desktop/making-changes-in-a-branch/viewing-the-branch-history-in-github-desktop.md b/content/desktop/making-changes-in-a-branch/viewing-the-branch-history-in-github-desktop.md index 39c711ef2579..655e0af5ba6d 100644 --- a/content/desktop/making-changes-in-a-branch/viewing-the-branch-history-in-github-desktop.md +++ b/content/desktop/making-changes-in-a-branch/viewing-the-branch-history-in-github-desktop.md @@ -36,7 +36,7 @@ Each commit shows: 1. If there are multiple files in the commit or range of commits, click on an individual file to see the changes made to that file. - ![Screenshot of a commit view. To the right of the "History" tab, in a list of files, the "hello.txt" file is selected and highlighted with an orange outline.](/assets/images/help/desktop/branch-history-file.png) + ![Screenshot of a commit view. To the right of the "History" tab, the "hello.txt" file is selected from a list and highlighted with an orange outline.](/assets/images/help/desktop/branch-history-file.png) ## Further reading diff --git a/content/desktop/managing-commits/checking-out-a-commit-in-github-desktop.md b/content/desktop/managing-commits/checking-out-a-commit-in-github-desktop.md index 1cd2ac9f4665..97de8cb0d0b6 100644 --- a/content/desktop/managing-commits/checking-out-a-commit-in-github-desktop.md +++ b/content/desktop/managing-commits/checking-out-a-commit-in-github-desktop.md @@ -21,7 +21,7 @@ Checking out a commit puts your repository in a "detached HEAD" state. In Git te {% data reusables.desktop.history-tab %} 1. Right-click on the commit you would like to checkout and select **Checkout commit**. - ![Screenshot of a list of commits in the "History" tab. Next to a commit, in a context menu, the "Checkout Commit" option is highlighted with an orange outline.](/assets/images/help/desktop/checkout-commit.png) + ![Screenshot of a list of commits in the "History" tab. Next to a commit, in a context menu, the "Checkout Commit" option is outlined in orange.](/assets/images/help/desktop/checkout-commit.png) 1. The **{% octicon "git-branch" aria-hidden="true" %} Current Branch** item in the repository bar will now show "Detached HEAD", along with the SHA of the commit that was checked out. ![Screenshot of the repository bar. The "Current Branch" item shows a "Detached HEAD" state and is highlighted with an orange outline.](/assets/images/help/desktop/branch-item.png) 1. To exit the "detached HEAD" state you will need to switch branches. For more information, see [AUTOTITLE](/desktop/making-changes-in-a-branch/managing-branches-in-github-desktop#switching-between-branches). diff --git a/content/desktop/managing-commits/cherry-picking-a-commit-in-github-desktop.md b/content/desktop/managing-commits/cherry-picking-a-commit-in-github-desktop.md index 4901bd73d798..598a9ecd33f6 100644 --- a/content/desktop/managing-commits/cherry-picking-a-commit-in-github-desktop.md +++ b/content/desktop/managing-commits/cherry-picking-a-commit-in-github-desktop.md @@ -39,7 +39,7 @@ You can also use cherry-picking when collaborating with a team. Some projects in 1. Right-click the selected commit and click **Cherry pick commit**, then select the branch that you want to copy the commit to. You can also drag the commit that you want to cherry-pick from the "History" tab to the **{% octicon "git-branch" aria-hidden="true" %} Current Branch** dropdown menu, then drop the commit on the branch that you want to copy the commit to. - ![Screenshot of the "History" tab and the "Current Branch" dropdown view. The cursor hovers over the "my-feature" branch, and "plus one" icons indicate the addition of one commit.](/assets/images/help/desktop/cherry-picking.png) + ![Screenshot of the "History" tab and the "Current Branch" dropdown. The cursor hovers over "my-feature", and "plus one" icons show one extra commit.](/assets/images/help/desktop/cherry-picking.png) 1. The current branch changes to the branch onto which you cherry-picked the commit. You can now push the cherry-picked commit to the remote repository. diff --git a/content/desktop/managing-commits/managing-tags-in-github-desktop.md b/content/desktop/managing-commits/managing-tags-in-github-desktop.md index 588440638080..13d35d4a1d21 100644 --- a/content/desktop/managing-commits/managing-tags-in-github-desktop.md +++ b/content/desktop/managing-commits/managing-tags-in-github-desktop.md @@ -35,7 +35,7 @@ versions: 1. All tags associated with the commit are visible in that commit's metadata. - ![Screenshot of the detailed view of a commit. Above the commit's diff, in the commit's metadata, a tag icon and the label "hello-tag" are outlined in orange.](/assets/images/help/desktop/viewing-tags-in-commit.png) + ![Screenshot of the detailed view of a commit. Above the commit's diff, in the metadata, a tag icon and the label "hello-tag" are outlined in orange.](/assets/images/help/desktop/viewing-tags-in-commit.png) ## Deleting tags diff --git a/content/desktop/managing-commits/reordering-commits-in-github-desktop.md b/content/desktop/managing-commits/reordering-commits-in-github-desktop.md index 9e97bb7ff27b..5eb41ca94798 100644 --- a/content/desktop/managing-commits/reordering-commits-in-github-desktop.md +++ b/content/desktop/managing-commits/reordering-commits-in-github-desktop.md @@ -23,7 +23,7 @@ Reordering allows you to alter your commit history to provide a more meaningful {% data reusables.desktop.history-tab %} 1. Drag the commit that you want to reorder and drop it between two adjoining commits. - ![Screenshot of a list of commits in the "History" tab. The cursor hovers over a narrow horizontal line between two commits, with a "one" icon indicating one commit is being moved.](/assets/images/help/desktop/reorder-drag-and-drop.png) + ![Screenshot of a list of commits in the "History" tab. The cursor hovers over a narrow line between two commits as one commit is moved, see "one" icon.](/assets/images/help/desktop/reorder-drag-and-drop.png) While the application reorders the commits, a **Reorder in process** dialog indicates the progress of the change. diff --git a/content/desktop/managing-commits/squashing-commits-in-github-desktop.md b/content/desktop/managing-commits/squashing-commits-in-github-desktop.md index 3a6fdd202801..31dd11e07f2f 100644 --- a/content/desktop/managing-commits/squashing-commits-in-github-desktop.md +++ b/content/desktop/managing-commits/squashing-commits-in-github-desktop.md @@ -32,7 +32,7 @@ Squashing allows you to combine multiple commits in your branch's history into a {% endwindows %} - ![Screenshot of a list of commits in the "History" tab. The cursor hovers over a commit, highlighted in blue. A hover-over text box says, "Squash 2 commits".](/assets/images/help/desktop/squash-drag-and-drop.png) + ![Screenshot of a list of commits in the "History" tab. The cursor hovers over a commit, highlighted in blue. A hover-over box shows "Squash 2 commits".](/assets/images/help/desktop/squash-drag-and-drop.png) 1. Modify the commit message of your new commit. The commit messages of the selected commits you want to squash are pre-filled into the **Summary** and **Description** fields. 1. Click **Squash Commits**. diff --git a/content/desktop/overview/creating-your-first-repository-using-github-desktop.md b/content/desktop/overview/creating-your-first-repository-using-github-desktop.md index 50b307065c91..6c0ab00e27a7 100644 --- a/content/desktop/overview/creating-your-first-repository-using-github-desktop.md +++ b/content/desktop/overview/creating-your-first-repository-using-github-desktop.md @@ -60,7 +60,7 @@ In the file menu at the top of the screen, you can access settings and actions t At the top of the {% data variables.product.prodname_desktop %} app, you will see a bar that shows the current state of your repository. -![Screenshot of the GitHub Desktop app. A bar displaying details for the "hello-world" repository spans the top of the window, and is outlined in orange.](/assets/images/help/desktop/explore-github-desktop.png) +![Screenshot of the GitHub Desktop app. A bar showing details for the "hello-world" repository spans the top of the window, and is outlined in orange.](/assets/images/help/desktop/explore-github-desktop.png) * **Current repository** shows the name of the repository you're working on. You can click **Current repository** to switch to a different repository in {% data variables.product.prodname_desktop %}. * **Current branch** shows the name of the branch you're working on. You can click **Current branch** to view all the branches in your repository, switch to a different branch, or create a new branch. Once you create pull requests in your repository, you can also view these by clicking on **Current branch**. @@ -70,7 +70,7 @@ At the top of the {% data variables.product.prodname_desktop %} app, you will se In the left sidebar, you'll find the **Changes** and **History** views. -![Screenshot of the GitHub Desktop app. A sidebar on the left-hand side, with tabs labeled "Changes" and "History", is highlighted with an orange outline.](/assets/images/help/desktop/changes-and-history.png) +![Screenshot of the GitHub Desktop app. A sidebar on the left-hand side, with tabs labeled "Changes" and "History", is outlined in orange.](/assets/images/help/desktop/changes-and-history.png) * The **Changes** view shows changes you've made to files in your current branch but haven't committed to your local repository. At the bottom, there is a box with "Summary" and "Description" text boxes and a **Commit to BRANCH** button. This is where you'll commit new changes. The **Commit to BRANCH** button is dynamic and will display which branch you're committing your changes to. * The **History** view shows the previous commits on the current branch of your repository. You should see an "Initial commit" that was created by {% data variables.product.prodname_desktop %} when you created your repository. To the right of the commit, depending on the options you selected while creating your repository, you may see _.gitattributes_, _.gitignore_, LICENSE, or README files. You can click each file to see a diff for that file, which is the changes made to the file in that commit. The diff only shows the parts of the file that have changed, not the entire contents of the file diff --git a/content/desktop/overview/launching-github-desktop-from-the-command-line.md b/content/desktop/overview/launching-github-desktop-from-the-command-line.md index 367ed71abacb..4c665124bfc8 100644 --- a/content/desktop/overview/launching-github-desktop-from-the-command-line.md +++ b/content/desktop/overview/launching-github-desktop-from-the-command-line.md @@ -12,7 +12,7 @@ versions: {% mac %} 1. In the menu bar, select the **{% data variables.product.prodname_desktop %}** menu, then click **Install Command Line Tool**. -![Screenshot of the menu bar on a Mac. Under the expanded "GitHub Desktop" dropdown menu, the cursor hovers over "Install command line tool", highlighted in blue.](/assets/images/help/desktop/mac-install-command-line-tool.png) +![Screenshot of the menu bar on a Mac. Under the "GitHub Desktop" dropdown menu, the option "Install command line tool" is highlighted in blue.](/assets/images/help/desktop/mac-install-command-line-tool.png) 1. Open Terminal. 1. {% data reusables.desktop.launch-desktop-from-command-line %} diff --git a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/creating-an-issue-or-pull-request-from-github-desktop.md b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/creating-an-issue-or-pull-request-from-github-desktop.md index 411e1c851939..294c1c6c2d9f 100644 --- a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/creating-an-issue-or-pull-request-from-github-desktop.md +++ b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/creating-an-issue-or-pull-request-from-github-desktop.md @@ -37,7 +37,7 @@ Before you create a pull request, you'll need to push changes to a branch on {% {% windows %} - ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the expanded "Repository" dropdown menu, an option labeled "Create Issue on GitHub" is outlined in orange.](/assets/images/help/desktop/create-issue-windows.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the "Repository" dropdown menu, the "Create Issue on GitHub" option is outlined in orange.](/assets/images/help/desktop/create-issue-windows.png) {% endwindows %} diff --git a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/syncing-your-branch-in-github-desktop.md b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/syncing-your-branch-in-github-desktop.md index 0af01820e5f8..ef8b570f92bc 100644 --- a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/syncing-your-branch-in-github-desktop.md +++ b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/syncing-your-branch-in-github-desktop.md @@ -57,7 +57,7 @@ Some workflows require or benefit from rebasing instead of merging. By rebasing {% windows %} - ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the expanded "Branch" dropdown menu, an option labeled "Rebase Current Branch" is outlined in orange.](/assets/images/help/desktop/windows-rebase-current-branch.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the "Branch" dropdown menu, the "Rebase Current Branch" option is outlined in orange.](/assets/images/help/desktop/windows-rebase-current-branch.png) {% endwindows %} @@ -74,13 +74,13 @@ Some workflows require or benefit from rebasing instead of merging. By rebasing {% mac %} - ![Screenshot of the menu bar on a Mac. On the expanded "Branch" dropdown menu, the cursor hovers over an option labeled "Squash and Merge into Current Branch".](/assets/images/help/desktop/squash-and-merge-menu.png) + ![Screenshot of the menu bar on a Mac. On the expanded "Branch" dropdown menu, the cursor hovers over the "Squash and Merge into Current Branch" option.](/assets/images/help/desktop/squash-and-merge-menu.png) {% endmac %} {% windows %} - ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the expanded "Branch" dropdown menu, option labeled "Squash and merge into curre..." is outlined in orange.](/assets/images/help/desktop/windows-squash-and-merge-menu.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the "Branch" dropdown menu, the "Squash and merge into curre..." option is outlined.](/assets/images/help/desktop/windows-squash-and-merge-menu.png) {% endwindows %} diff --git a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-a-pull-request-in-github-desktop.md b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-a-pull-request-in-github-desktop.md index 1bc31310775d..3933691b4b96 100644 --- a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-a-pull-request-in-github-desktop.md +++ b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-a-pull-request-in-github-desktop.md @@ -41,7 +41,7 @@ You cannot comment on a pull request from {% data variables.product.prodname_des 1. In the list of pull requests, click the pull request that you would like to open in {% data variables.product.prodname_desktop %}. 1. To the right of the title of the pull request, click **{% octicon "code" aria-hidden="true" %} Code**, then, on the **Local** tab, click **Checkout with GitHub Desktop**. - ![Screenshot of a pull request on GitHub. The "Code" dropdown menu is expanded, and a button, labeled "Checkout with GitHub Desktop" is outlined in orange.](/assets/images/help/desktop/open-pr-in-desktop-button.png) + ![Screenshot of a pull request on GitHub. The "Code" dropdown menu is expanded, and the "Checkout with GitHub Desktop" button is outlined in orange.](/assets/images/help/desktop/open-pr-in-desktop-button.png) {% data reusables.desktop.checked-out-pr %} diff --git a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md index 6c76b104af4d..2f43e1407a5d 100644 --- a/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md +++ b/content/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md @@ -20,11 +20,11 @@ redirect_from: {% data reusables.desktop.choose-pr-from-list %} 1. Click on the pull request number, to the right of the pull request branch name. - ![Screenshot of the repository bar. Next to the "Current Branch" button, a numbered label, displayed with a red cross for failing checks, is outlined in orange.](/assets/images/help/desktop/checks-dialog.png) + ![Screenshot of the repository bar. Next to the "Current Branch" button, a numbered label, with a red cross for failing checks, is outlined in orange.](/assets/images/help/desktop/checks-dialog.png) 1. To re-run failed checks, click **{% octicon "sync" aria-hidden="true" %} Re-run** and select **Re-run Failed Checks**. - ![Screenshot of a dropdown view from a pull request label. Next to the message "Some checks were not successful", a button labeled "Re-run" is outlined in orange.](/assets/images/help/desktop/re-run-failed-checks.png) + ![Screenshot of a dropdown view from a pull request label. Next to "Some checks were not successful", a button labeled "Re-run" is outlined in orange.](/assets/images/help/desktop/re-run-failed-checks.png) 1. To re-run individual checks, hover over the individual check you want to re-run and select the {% octicon "sync" aria-label="The sync icon" %} icon to re-run the check. - ![Screenshot of a dropdown view from a pull request label. The cursor hovers over a check, and an icon of two arrows forming a circle is outlined in orange.](/assets/images/help/desktop/re-run-individual-checks.png) + ![Screenshot of a dropdown view from a pull request label. The cursor hovers over a check. An icon of two arrows forming a circle is outlined in orange.](/assets/images/help/desktop/re-run-individual-checks.png) 1. You will see a confirmation dialog with the summary of the checks that will be re-run. Click **Re-run Checks** to confirm that you want to perform the re-run. diff --git a/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md b/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md index 2b0b3a8df08a..82e81bcd846b 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md @@ -2,7 +2,9 @@ title: About discussions intro: 'Use discussions to ask and answer questions, share information, make announcements, and conduct or participate in a conversation about a project on {% data variables.product.product_name %}.' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' --- @@ -20,7 +22,7 @@ With {% data variables.product.prodname_discussions %}, the community for your p You might use repository discussions to discuss topics that are specific to the repository. If your project spans multiple repositories, you might use organization discussions to discuss topics that aren't specific to a single repository in your organization. -{% ifversion discussions-closable %}{% data reusables.discussions.closing-discussions %} For more information, see [Closing a discussion](/discussions/managing-discussions-for-your-community/managing-discussions#closing-a-discussion).{% else %}You don't need to close a discussion like you close an issue or a pull request.{% endif %} +{% data reusables.discussions.closing-discussions %} For more information, see [Closing a discussion](/discussions/managing-discussions-for-your-community/managing-discussions#closing-a-discussion). If a repository administrator or project maintainer enables {% data variables.product.prodname_discussions %} for a repository, anyone who has access to the repository can create and participate in discussions for the repository. If an organization owner enables {% data variables.product.prodname_discussions %} for an organization, anyone who can view the source repository can create an organization discussion. @@ -40,7 +42,7 @@ For more information on creating polls, see [AUTOTITLE](/discussions/collaborati ## About discussion organization -You can organize discussions with categories{% ifversion discussions-category-section %}, sections, {% endif %} and labels. +You can organize discussions with categories, sections, and labels. {% data reusables.discussions.you-can-categorize-discussions %} {% data reusables.discussions.about-categories-and-formats %} {% data reusables.discussions.repository-category-limit %} @@ -48,8 +50,7 @@ For discussions with a question/answer format, an individual comment within the {% data reusables.discussions.about-announcement-format %} -{% ifversion discussions-category-section %} -{% data reusables.discussions.category-sections %}{% endif %} +{% data reusables.discussions.category-sections %} For more information, see [AUTOTITLE](/discussions/managing-discussions-for-your-community/managing-categories-for-discussions). diff --git a/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md b/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md index 935da9e5dc14..5fa63656e2f3 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md @@ -4,7 +4,9 @@ shortTitle: Collaborating with maintainers intro: 'You can contribute to the goals, plans, health, and community for a project on {% data variables.product.product_name %} by communicating with the maintainers of the project in a discussion.' permissions: 'People with read access to a repository can start and participate in discussions and polls in the repository. People with read access to the source repository for organization discussions can start and participate in discussions and polls in the organization. {% data reusables.enterprise-accounts.emu-permission-interact %}' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' --- diff --git a/content/discussions/collaborating-with-your-community-using-discussions/index.md b/content/discussions/collaborating-with-your-community-using-discussions/index.md index 2cf3b3c07eac..36a29b5bc39d 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/index.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/index.md @@ -3,10 +3,11 @@ title: Collaborating with your community using discussions shortTitle: Collaborating using discussions intro: Gather and discuss your project with community members and other maintainers. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' children: - /about-discussions - /participating-in-a-discussion - /collaborating-with-maintainers-using-discussions --- - diff --git a/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md b/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md index 25dff1adc39b..01f96e743a9d 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md @@ -3,7 +3,9 @@ title: Participating in a discussion intro: 'You can converse with the community and maintainers in a forum within the repository for a project on {% data variables.product.product_name %}.' permissions: 'People with read access to a repository can participate in discussions and polls in the repository. People with read access to the source repository for organization discussions can participate in discussions and polls in that organization. {% data reusables.enterprise-accounts.emu-permission-interact %}' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' shortTitle: Participate in discussion --- diff --git a/content/discussions/guides/best-practices-for-community-conversations-on-github.md b/content/discussions/guides/best-practices-for-community-conversations-on-github.md index b8a4af08b43f..46682e87bacb 100644 --- a/content/discussions/guides/best-practices-for-community-conversations-on-github.md +++ b/content/discussions/guides/best-practices-for-community-conversations-on-github.md @@ -3,7 +3,9 @@ title: Best practices for community conversations on GitHub shortTitle: Best practices for community conversations intro: 'You can use discussions to brainstorm with your team, and eventually move the conversation to an issue when you are ready to scope out the work.' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' --- diff --git a/content/discussions/guides/finding-your-discussions.md b/content/discussions/guides/finding-your-discussions.md index 1e9bfc2fdf45..86eee41d4baa 100644 --- a/content/discussions/guides/finding-your-discussions.md +++ b/content/discussions/guides/finding-your-discussions.md @@ -2,7 +2,9 @@ title: Finding your discussions intro: You can easily access every discussion you've created or participated in. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' shortTitle: Find discussions redirect_from: - /discussions/guides/finding-discussions-across-multiple-repositories diff --git a/content/discussions/guides/granting-higher-permissions-to-top-contributors.md b/content/discussions/guides/granting-higher-permissions-to-top-contributors.md index 1e012e55c3ef..2a9813273a81 100644 --- a/content/discussions/guides/granting-higher-permissions-to-top-contributors.md +++ b/content/discussions/guides/granting-higher-permissions-to-top-contributors.md @@ -2,7 +2,9 @@ title: Granting higher permissions to top contributors intro: Repository administrators can promote any community member to a moderator and maintainer. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' shortTitle: Grant higher permissions --- diff --git a/content/discussions/guides/index.md b/content/discussions/guides/index.md index 803068ce873f..184058a24df3 100644 --- a/content/discussions/guides/index.md +++ b/content/discussions/guides/index.md @@ -3,10 +3,11 @@ title: Discussions guides shortTitle: Guides intro: Discover pathways to get started or learn best practices for participating or monitoring your community's discussions. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' children: - /best-practices-for-community-conversations-on-github - /finding-your-discussions - /granting-higher-permissions-to-top-contributors --- - diff --git a/content/discussions/index.md b/content/discussions/index.md index 20b2783df70b..58b91ca1361e 100644 --- a/content/discussions/index.md +++ b/content/discussions/index.md @@ -32,7 +32,9 @@ changelog: examples_source: data/product-examples/discussions/community-examples.yml layout: product-landing versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' communityRedirect: name: Provide GitHub Feedback href: 'https://github.com/orgs/community/discussions/categories/discussions' diff --git a/content/discussions/managing-discussions-for-your-community/creating-discussion-category-forms.md b/content/discussions/managing-discussions-for-your-community/creating-discussion-category-forms.md index a9f21fb83e73..8e973cc6196b 100644 --- a/content/discussions/managing-discussions-for-your-community/creating-discussion-category-forms.md +++ b/content/discussions/managing-discussions-for-your-community/creating-discussion-category-forms.md @@ -3,7 +3,9 @@ title: Creating discussion category forms shortTitle: Create discussion category forms intro: You can customize the templates that are available for community members to use when they open new discussions in your repository. versions: - feature: discussion-category-forms + fpt: '*' + ghes: '*' + ghec: '*' --- ## About discussion category forms diff --git a/content/discussions/managing-discussions-for-your-community/index.md b/content/discussions/managing-discussions-for-your-community/index.md index 3fabc834efc4..3b3b15f7cb99 100644 --- a/content/discussions/managing-discussions-for-your-community/index.md +++ b/content/discussions/managing-discussions-for-your-community/index.md @@ -3,7 +3,9 @@ title: Managing discussions for your community shortTitle: Managing discussions intro: 'You can enable and configure {% data variables.product.prodname_discussions %} for your repository, and you can use tools on {% data variables.product.product_name %} to moderate conversations among community members.' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' children: - /managing-discussions - /managing-categories-for-discussions @@ -12,4 +14,3 @@ children: - /creating-discussion-category-forms - /syntax-for-discussion-category-forms --- - diff --git a/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions.md b/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions.md index fe7324881dac..73fe1ec1609d 100644 --- a/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions.md +++ b/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions.md @@ -3,7 +3,9 @@ title: Managing categories for discussions intro: 'You can categorize discussions to organize conversations for your community members, and you can choose a format for each category.' permissions: Repository administrators and people with write or greater access to a repository can manage categories for discussions in the repository. Repository administrators and people with write or greater access to the source repository for organization discussions can manage categories for discussions in the organization. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' shortTitle: Manage categories redirect_from: - /discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository @@ -18,8 +20,7 @@ redirect_from: Each category must have a unique name and emoji pairing, and can be accompanied by a detailed description stating its purpose. Categories help maintainers organize how conversations are filed and are customizable to help distinguish categories that are Q&A or more open-ended conversations. {% data reusables.discussions.repository-category-limit %} For more information, see [AUTOTITLE](/discussions/collaborating-with-your-community-using-discussions/about-discussions#about-categories-and-formats-for-discussions). -{% ifversion discussions-category-section %} -{% data reusables.discussions.category-sections %}{% endif %} +{% data reusables.discussions.category-sections %} ## Default categories @@ -42,12 +43,9 @@ Each category must have a unique name and emoji pairing, and can be accompanied ![Screenshot of the "Manage discussion categories" page. A button, labeled "New category", is highlighted with an orange outline.](/assets/images/help/discussions/click-new-category-button.png) 1. {% data reusables.discussions.edit-category-details %} -{% ifversion discussions-category-section %} -{% data reusables.discussions.add-category-to-section %}{% endif %} +{% data reusables.discussions.add-category-to-section %} 1. Click **Create**. -{% ifversion discussions-category-section %} - ## Creating a section 1. Navigate to the main page of the repository or organization where you want to create a category. @@ -58,7 +56,6 @@ Each category must have a unique name and emoji pairing, and can be accompanied 1. Edit the emoji and title of the section. 1. Select the categories that you want to add to the section. A category can only belong to one section at a time. 1. Click **Create**. -{% endif %} ## Editing a category @@ -69,12 +66,9 @@ You can edit a category to change the category's emoji, title, description, and {% data reusables.discussions.edit-categories %} 1. To the right of a category in the list, click {% octicon "pencil" aria-label="The pencil icon" %}. 1. {% data reusables.discussions.edit-category-details %} -{% ifversion discussions-category-section %} -{% data reusables.discussions.add-category-to-section %}{% endif %} +{% data reusables.discussions.add-category-to-section %} 1. Click **Save changes**. -{% ifversion discussions-category-section %} - ## Editing a section You can edit a section to change the section's emoji and title, and to add and remove categories from the section. @@ -85,13 +79,12 @@ You can edit a section to change the section's emoji and title, and to add and r 1. To the right of a section in the list, click {% octicon "pencil" aria-label="The pencil icon" %}. 1. Edit the section's emoji and title, and select or deselect the categories that you want to add or remove from the section. 1. Click **Update**. -{% endif %} ## Deleting a category When you delete a category, {% data variables.product.product_name %} will move all discussions in the deleted category to an existing category that you choose. -{% ifversion discussions-category-section %}When you delete a section, all categories within the section will no longer belong to a section.{% endif %} +When you delete a section, all categories within the section will no longer belong to a section. 1. Navigate to the main page of the repository or organization where you want to delete a category. {% data reusables.discussions.discussions-tab %} @@ -99,8 +92,6 @@ When you delete a category, {% data variables.product.product_name %} will move 1. Select the dropdown menu, and click a new category for any discussions in the category you're deleting. 1. Click **Delete & Move**. -{% ifversion discussions-category-section %} - ## Deleting a section When you delete a section, all categories within the section will no longer belong to a section. @@ -109,4 +100,3 @@ When you delete a section, all categories within the section will no longer belo {% data reusables.discussions.discussions-tab %} 1. To the right of a section in the list, click {% octicon "trash" aria-label="The trash icon" %}. 1. In the dialog box, review the information about deleting a section, then click **Delete**. -{% endif %} diff --git a/content/discussions/managing-discussions-for-your-community/managing-discussions.md b/content/discussions/managing-discussions-for-your-community/managing-discussions.md index f33dbf25146d..cb0bc567f7eb 100644 --- a/content/discussions/managing-discussions-for-your-community/managing-discussions.md +++ b/content/discussions/managing-discussions-for-your-community/managing-discussions.md @@ -3,7 +3,9 @@ title: Managing discussions intro: 'You can categorize, spotlight, transfer, or delete the discussions.' permissions: Repository administrators and people with {% ifversion discussions-moderators-control-who-can-report %}triage{% else %}write{% endif %} or greater access to a repository can manage discussions in the repository. Repository administrators and people with {% ifversion discussions-moderators-control-who-can-report %}triage{% else %}write{% endif %} or greater access to the source repository for organization discussions can manage discussions in the organization. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' shortTitle: Manage discussions redirect_from: - /discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository @@ -20,7 +22,7 @@ As a discussions maintainer, you can create community resources to encourage dis When a discussion yields an idea or bug that is ready to be worked on, you can create a new issue from a discussion. For more information, see [AUTOTITLE](/issues/tracking-your-work-with-issues/creating-an-issue#creating-an-issue-from-a-discussion). -You can pin a discussion to the top of the list of discussions for the repository or organization. {% ifversion discussions-category-specific-pins %}You can also pin a discussion to a specific category.{% endif %} For more information, see [AUTOTITLE](/discussions/managing-discussions-for-your-community/managing-discussions#pinning-a-discussion). +You can pin a discussion to the top of the list of discussions for the repository or organization. You can also pin a discussion to a specific category. For more information, see [AUTOTITLE](/discussions/managing-discussions-for-your-community/managing-discussions#pinning-a-discussion). For more information on facilitating a healthy discussion, see [AUTOTITLE](/communities/moderating-comments-and-conversations). @@ -46,7 +48,6 @@ You can also move a discussion to a different category. It's not possible to mov ## Pinning a discussion -{% ifversion discussions-category-specific-pins %} You can pin a discussion above the list of discussions for the repository or organization. You can also pin a discussion to a specific category. The globally pinned discussions will be shown in addition to the discussions pinned to a specific category. This is what it looks like when you have a globally pinned discussion and a discussion pinned to the Ideas category. @@ -55,25 +56,18 @@ This is what it looks like when you have a globally pinned discussion and a disc ### Pinning a discussion globally -{% endif %} - You can pin up to four important discussions above the list of discussions for the repository or organization. {% data reusables.discussions.navigate-to-repo-or-org %} {% data reusables.discussions.discussions-tab %} {% data reusables.discussions.click-discussion-in-list %} 1. In the right sidebar, click **{% octicon "pin" aria-hidden="true" %} Pin discussion**. -{% ifversion discussions-category-specific-pins %} - - ![Screenshot of the right sidebar of a discussion. The "Pin discussion" option is highlighted with an orange outline.](/assets/images/help/discussions/click-pin-discussion-with-category-pins.png){% else %} - ![Screenshot of the right sidebar of a discussion. The "Pin discussion" option is highlighted with an orange outline.](/assets/images/help/discussions/click-pin-discussion.png){% endif %} + ![Screenshot of the right sidebar of a discussion. The "Pin discussion" option is highlighted with an orange outline.](/assets/images/help/discussions/click-pin-discussion-with-category-pins.png) 1. Optionally, customize the look of the pinned discussion. 1. Click **Pin discussion**. -{% ifversion discussions-category-specific-pins %} - ### Pinning a discussion to a category You can pin up to four important discussions above the list of discussions in a specific category. @@ -86,7 +80,6 @@ You can pin up to four important discussions above the list of discussions in a ![Screenshot of the right sidebar of a discussion. The "Pin discussion to Q&A" option is outlined in dark orange.](/assets/images/help/discussions/pin-discussion-to-category.png) 1. To confirm, click **Pin to CATEGORY**. -{% endif %} ## Editing a pinned discussion @@ -95,22 +88,19 @@ Editing a pinned discussion will not change the discussion's category. For more {% data reusables.discussions.navigate-to-repo-or-org %} {% data reusables.discussions.discussions-tab %} {% data reusables.discussions.click-discussion-in-list %} -1. In the right sidebar, click **{% octicon "pencil" aria-hidden="true" %} Edit pinned discussion**. {% ifversion discussions-category-specific-pins %} +1. In the right sidebar, click **{% octicon "pencil" aria-hidden="true" %} Edit pinned discussion**. - ![Screenshot of the right sidebar of a discussion. The "Edit pinned discussion" option is outlined in dark orange.](/assets/images/help/discussions/edit-pinned-discussion-with-category-pins.png){% endif %} + ![Screenshot of the right sidebar of a discussion. The "Edit pinned discussion" option is outlined in dark orange.](/assets/images/help/discussions/edit-pinned-discussion-with-category-pins.png) 1. Customize the look of the pinned discussion. 1. Click **Pin discussion**. ## Unpinning a discussion -{% ifversion discussions-category-specific-pins %} - You can unpin a discussion from the list of discussions for the repository or organization, or from the list of discussions in a specific category. ### Unpinning a globally pinned discussion You can unpin a globally pinned discussion. This will not delete the discussion, but the discussion will no longer be displayed above the list of discussions. -{% endif %} {% data reusables.discussions.navigate-to-repo-or-org %} {% data reusables.discussions.discussions-tab %} @@ -121,8 +111,6 @@ You can unpin a globally pinned discussion. This will not delete the discussion, 1. Read the warning, then click **Unpin discussion**. -{% ifversion discussions-category-specific-pins %} - ### Unpinning a discussion from a category You can unpin a discussion pinned to a specific category. This will not delete the discussion, but the discussion will no longer be displayed at the top of the category. @@ -135,7 +123,6 @@ You can unpin a discussion pinned to a specific category. This will not delete t ![Screenshot of the right sidebar of a discussion. The "Unpin discussion from this category" option is outlined in dark orange.](/assets/images/help/discussions/unpin-discussion-from-category.png) 1. Read the warning, then click **Unpin from this category**. -{% endif %} ## Transferring a discussion @@ -144,12 +131,9 @@ To transfer a discussion, you must have permissions to create discussions in the {% data reusables.discussions.navigate-to-repo-or-org %} {% data reusables.discussions.discussions-tab %} {% data reusables.discussions.click-discussion-in-list %} -1. In the right sidebar, click {% octicon "arrow-right" aria-hidden="true" %} {% ifversion discussions-category-specific-pins %}**Transfer this discussion**{% else %}**Transfer discussion**{% endif %}. -{% ifversion discussions-category-specific-pins %} +1. In the right sidebar, click {% octicon "arrow-right" aria-hidden="true" %}**Transfer this discussion**. - ![Screenshot of the right sidebar of a discussion. The "Transfer this discussion" option is outlined in dark orange.](/assets/images/help/discussions/transfer-discussion-with-category-pin.png) {% else %} - - ![Screenshot of the right sidebar of a discussion. The "Transfer this discussion" option is outlined in dark orange.](/assets/images/help/discussions/click-transfer-discussion.png){% endif %} + ![Screenshot of the right sidebar of a discussion. The "Transfer this discussion" option is outlined in dark orange.](/assets/images/help/discussions/transfer-discussion-with-category-pin.png) 1. Select the repository you want to transfer the discussion to. You can also search for repositories. If you want to transfer a discussion to an organization, choose the source repository for the organization's discussions. 1. Click **Transfer discussion**. @@ -160,14 +144,11 @@ To transfer a discussion, you must have permissions to create discussions in the {% data reusables.discussions.discussions-tab %} {% data reusables.discussions.click-discussion-in-list %} 1. In the right sidebar, click **{% octicon "trash" aria-hidden="true" %} Delete discussion**. -{% ifversion discussions-category-specific-pins %} - ![Screenshot of the right sidebar of a discussion. The "Delete discussion" option is outlined in dark orange.](/assets/images/help/discussions/delete-discussion-with-category-pins.png){% endif %} + ![Screenshot of the right sidebar of a discussion. The "Delete discussion" option is outlined in dark orange.](/assets/images/help/discussions/delete-discussion-with-category-pins.png) 1. Read the warning, then click **Delete this discussion**. -{% ifversion discussions-closable %} - ## Closing a discussion {% data reusables.discussions.closing-discussions %} @@ -178,10 +159,6 @@ To transfer a discussion, you must have permissions to create discussions in the 1. At the bottom of the discussion, below the comment box, click **Close discussion**. 1. Optionally, to change the reason for closing the discussion, select the {% octicon "triangle-down" aria-label="The down triangle octicon" %} dropdown next to "Close discussion" and click a reason. -{% endif %} - -{% ifversion converting-issues-to-discussions %} - ## Converting issues based on labels You can convert all issues with the same label to discussions in bulk. Future issues with this label will also automatically convert to the discussion and category you configure. @@ -192,4 +169,3 @@ You can convert all issues with the same label to discussions in bulk. Future is 1. Next to the label you want to convert to issues, click **Convert issues**. 1. Select the **Choose a category** drop-down menu, and click a category for your discussion. 1. Click **I understand, convert this issue to a discussion**. -{% endif %} diff --git a/content/discussions/managing-discussions-for-your-community/moderating-discussions.md b/content/discussions/managing-discussions-for-your-community/moderating-discussions.md index 7d9d9aa96c84..95c501e08f6d 100644 --- a/content/discussions/managing-discussions-for-your-community/moderating-discussions.md +++ b/content/discussions/managing-discussions-for-your-community/moderating-discussions.md @@ -3,7 +3,9 @@ title: Moderating discussions intro: 'You can promote healthy collaboration by marking comments as answers, locking or unlocking discussions, converting issues to discussions, and editing or deleting comments, discussions, and categories that don''t align with your{% ifversion fpt or ghec %} community''s code of conduct{% elsif ghes %} organization''s contribution guidelines{% endif %}.' permissions: People with triage access to a repository can moderate discussions in the repository. People with triage access to the source repository for organization discussions can moderate discussions in the organization. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' --- @@ -17,15 +19,11 @@ versions: ## Locking discussions -It's appropriate to lock a conversation when the entire conversation is not constructive or violates your community's code of conduct or {% data variables.product.prodname_dotcom %}'s [Community Guidelines](/free-pro-team@latest/site-policy/github-terms/github-community-guidelines). You can also lock a conversation to prevent comments on a discussion you want to use as an announcement to the community. When you lock a conversation, people with write access to the repository, or source repository for organization discussions, will still be able to comment on the discussion. {% ifversion discussions-lock-allow-reactions %}You can also allow emoji reactions to a locked discussion.{% endif %} - -{% ifversion discussions-closable %} +It's appropriate to lock a conversation when the entire conversation is not constructive or violates your community's code of conduct or {% data variables.product.prodname_dotcom %}'s [Community Guidelines](/free-pro-team@latest/site-policy/github-terms/github-community-guidelines). You can also lock a conversation to prevent comments on a discussion you want to use as an announcement to the community. When you lock a conversation, people with write access to the repository, or source repository for organization discussions, will still be able to comment on the discussion. You can also allow emoji reactions to a locked discussion. > [!NOTE] > You can also close a discussion. For more information, see [Closing a discussion](/discussions/managing-discussions-for-your-community/managing-discussions#closing-a-discussion). -{% endif %} - {% data reusables.discussions.navigate-to-repo-or-org %} {% data reusables.discussions.discussions-tab %} 1. In the list of discussions, click the discussion you want to lock. @@ -33,13 +31,11 @@ It's appropriate to lock a conversation when the entire conversation is not cons ![Screenshot of the list of discussions with an unanswered discussion.](/assets/images/help/discussions/unanswered-discussion.png) 1. In the right margin of a discussion, click **Lock conversation**. -1. Read the information about locking conversations.{% ifversion discussions-lock-allow-reactions %} -1. Optionally, to allow emoji reactions while the discussion is locked, select **Allow reactions**.{% endif %} +1. Read the information about locking conversations. +1. Optionally, to allow emoji reactions while the discussion is locked, select **Allow reactions**. 1. To lock the conversation, click **Lock conversation**. 1. When you're ready to unlock the conversation, click **Unlock conversation** in the right margin of a discussion, then click **Unlock conversation**. -{% ifversion converting-issues-to-discussions %} - ## Converting an issue to a discussion When you convert an issue to a discussion, the discussion is automatically created using the content from the issue. People with write access to a repository, or source repository for organization discussions, can bulk convert issues based on labels. For more information, see [AUTOTITLE](/discussions/managing-discussions-for-your-community/managing-discussions). @@ -50,7 +46,6 @@ When you convert an issue to a discussion, the discussion is automatically creat 1. In the right margin of an issue, click **Convert to discussion**. 1. Select the **Choose a category** drop-down menu, and click a category for your discussion. 1. Click **I understand, convert this issue to a discussion**. -{% endif %} {% ifversion discussions-hide-comments-on-block %} diff --git a/content/discussions/managing-discussions-for-your-community/syntax-for-discussion-category-forms.md b/content/discussions/managing-discussions-for-your-community/syntax-for-discussion-category-forms.md index 6a3c2c1c7503..8808c521d692 100644 --- a/content/discussions/managing-discussions-for-your-community/syntax-for-discussion-category-forms.md +++ b/content/discussions/managing-discussions-for-your-community/syntax-for-discussion-category-forms.md @@ -3,7 +3,9 @@ title: Syntax for discussion category forms shortTitle: Syntax for discussion category forms intro: You can use YAML syntax to define the fields in your discussion category forms. versions: - feature: discussion-category-forms + fpt: '*' + ghes: '*' + ghec: '*' --- ## About YAML syntax for discussion category forms diff --git a/content/discussions/managing-discussions-for-your-community/viewing-insights-for-your-discussions.md b/content/discussions/managing-discussions-for-your-community/viewing-insights-for-your-discussions.md index a72570d98147..07aea8acd308 100644 --- a/content/discussions/managing-discussions-for-your-community/viewing-insights-for-your-discussions.md +++ b/content/discussions/managing-discussions-for-your-community/viewing-insights-for-your-discussions.md @@ -3,7 +3,9 @@ title: Viewing insights for your discussions intro: 'Discussions insights provide data about your discussions'' activity, views, and contributors.' permissions: Repository administrators and people with maintain access to a repository can view the insights dashboard for discussions in that repository. Repository administrators and people with maintain access to the source repository for organization discussions can view the insights dashboard for discussions in that organization. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' topics: - Discussions shortTitle: View discussions insights diff --git a/content/discussions/quickstart.md b/content/discussions/quickstart.md index 3cc9c25bd75a..6c81c3e62fd4 100644 --- a/content/discussions/quickstart.md +++ b/content/discussions/quickstart.md @@ -3,7 +3,9 @@ title: Quickstart for GitHub Discussions intro: 'Enable {% data variables.product.prodname_discussions %} on an existing repository or organization and start conversations with your community.' allowTitleToDifferFromFilename: true versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' shortTitle: Quickstart --- diff --git a/content/get-started/accessibility/github-command-palette.md b/content/get-started/accessibility/github-command-palette.md index a80b7e7f0cab..97b71af6906d 100644 --- a/content/get-started/accessibility/github-command-palette.md +++ b/content/get-started/accessibility/github-command-palette.md @@ -41,8 +41,8 @@ When you open the command palette, it shows your location at the top left and us ![Screenshot of the command palette. "octo-org" is highlighted with an orange outline.](/assets/images/help/command-palette/command-palette-launch.png) > [!NOTE] -> * If you are editing Markdown text, open the command palette with Ctrl+Alt+K (Windows and Linux) or Command+Option+K (Mac).{% ifversion projects-v2 %} -> * If you are working on a {% data variables.projects.project_v2 %}, a project-specific command palette is displayed instead. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/customizing-views-in-your-project/changing-the-layout-of-a-view).{% endif %} +> * If you are editing Markdown text, open the command palette with Ctrl+Alt+K (Windows and Linux) or Command+Option+K (Mac). +> * If you are working on a {% data variables.projects.project_v2 %}, a project-specific command palette is displayed instead. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/customizing-views-in-your-project/changing-the-layout-of-a-view). ### Customizing your {% data variables.product.prodname_command_palette %} keyboard shortcuts diff --git a/content/get-started/accessibility/keyboard-shortcuts.md b/content/get-started/accessibility/keyboard-shortcuts.md index 385589ccce32..b509a15c0431 100644 --- a/content/get-started/accessibility/keyboard-shortcuts.md +++ b/content/get-started/accessibility/keyboard-shortcuts.md @@ -18,8 +18,7 @@ versions: Typing ? on {% data variables.product.prodname_dotcom %} brings up a dialog box that lists the keyboard shortcuts available for that page. You can use these keyboard shortcuts to perform actions across the site without using your mouse to navigate. -{% ifversion keyboard-shortcut-accessibility-setting %} -You can disable character key shortcuts, while still allowing shortcuts that use modifier keys, in your accessibility settings. For more information, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-accessibility-settings).{% endif %} +You can disable character key shortcuts, while still allowing shortcuts that use modifier keys, in your accessibility settings. For more information, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-accessibility-settings). {% ifversion command-palette %} The {% data variables.product.prodname_command_palette %} also gives you quick access to a wide range of actions, without the need to remember keyboard shortcuts. For more information, see [AUTOTITLE](/get-started/accessibility/github-command-palette). @@ -49,9 +48,7 @@ The following sections list some of the available keyboard shortcuts, organized |G B | Go to the **Projects** tab. For more information, see [AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards). | {% endif %} | |G W | Go to the **Wiki** tab. For more information, see [AUTOTITLE](/communities/documenting-your-project-with-wikis/about-wikis). | -| {% ifversion discussions %} | |G G | Go to the **Discussions** tab. For more information, see [AUTOTITLE](/discussions/collaborating-with-your-community-using-discussions/about-discussions). -| {% endif %} | ## Source code editing @@ -175,8 +172,6 @@ If you view a code file in a repository using the **Code** view and click on any |Option and click (Mac) or Alt and click (Windows/Linux) | Toggle between collapsing and expanding all outdated or resolved review comments in a pull request (for example, by holding down Alt and clicking **Show outdated** or **Hide outdated**) | |Click, then Shift and click | Comment on multiple lines of a pull request by clicking a line number, holding Shift, then clicking another line number. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request).| -{% ifversion projects-v2 %} - ## {% data variables.projects.projects_v2_caps %} ### Navigating a project @@ -197,13 +192,11 @@ If you view a code file in a repository using the **Code** view and click on any |Escape | Cancel editing for the focused cell | |Command+Shift+\ (Mac) or Ctrl+Shift+\ (Windows/Linux) | Open row actions menu | |Shift+Space | Select item | -|Shift+ | Add cell {% ifversion projects-v2-board-keyboard-shorts %} or card{% endif %} below to selection | -|Shift+ | Add cell {% ifversion projects-v2-board-keyboard-shorts %}or card{% endif %} above to selection | +|Shift+ | Add cell or card below to selection | +|Shift+ | Add cell or card above to selection | |Space | Open selected item | |e | Archive selected items | -{% ifversion projects-v2-board-keyboard-shorts %} - ### Moving cards on the board layout | Keyboard shortcut | Description | @@ -220,10 +213,6 @@ If you view a code file in a repository using the **Code** view and click on any | | Move card(s) right | |Command+ (Mac) or
    Ctrl+ (Windows/Linux) | Move card(s) to the rightmost column | -{% endif %} - -{% endif %} - {% ifversion projects-v1 %} ## {% data variables.product.prodname_projects_v1_caps %} diff --git a/content/get-started/exploring-integrations/featured-github-integrations.md b/content/get-started/exploring-integrations/featured-github-integrations.md index 659b215e3dfc..5df2f222233d 100644 --- a/content/get-started/exploring-integrations/featured-github-integrations.md +++ b/content/get-started/exploring-integrations/featured-github-integrations.md @@ -46,8 +46,6 @@ You can integrate Jira Cloud with your personal or organization account to scan {% endif %} -{% ifversion slack-and-team-integrations %} - ## Team communication tools You can integrate your {% ifversion fpt or ghec %}personal{% elsif ghes %}user{% endif %} or organization account on {% data variables.location.product_location %} with third-party team communication tools, such as Slack or Microsoft Teams. @@ -83,5 +81,3 @@ The {% data variables.product.prodname_dotcom %} for Teams app lets you subscrib You can also open and close issues, comment on your issues and pull requests, approve deployments, and see detailed references to issues and pull requests without leaving Microsoft Teams. The app will also ping you personally on Teams if you are mentioned as part of any {% data variables.product.prodname_dotcom %} notifications that you receive in your channels or personal chats. For more information, see the integration's [README](https://github.com/integrations/microsoft-teams/blob/master/Readme.md) in the `integrations/microsoft-teams` repository. - -{% endif %} diff --git a/content/get-started/getting-started-with-git/about-remote-repositories.md b/content/get-started/getting-started-with-git/about-remote-repositories.md index 426c966065fa..bb5b7357429f 100644 --- a/content/get-started/getting-started-with-git/about-remote-repositories.md +++ b/content/get-started/getting-started-with-git/about-remote-repositories.md @@ -52,7 +52,7 @@ For information on setting or changing your remote URL, see [AUTOTITLE](/get-sta The `https://` clone URLs are available on all repositories, regardless of visibility. `https://` clone URLs work even if you are behind a firewall or proxy. -When you `git clone`, `git fetch`, `git pull`, or `git push` to a remote repository using HTTPS URLs on the command line, Git will ask for your {% data variables.product.product_name %} username and password. {% data reusables.user-settings.password-authentication-deprecation %} +When you `git clone`, `git fetch`, `git pull`, or `git push` to a private remote repository using HTTPS URLs on the command line, Git will ask for your {% data variables.product.product_name %} username and password. {% data reusables.user-settings.password-authentication-deprecation %} {% data reusables.command_line.provide-an-access-token %} diff --git a/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md b/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md index 5a46547226dc..94e3760f6544 100644 --- a/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md +++ b/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md @@ -117,11 +117,10 @@ To ensure that all the line endings in your repository match your new configurat git commit -m "Saving files before refreshing line endings" ``` -1. To update all files on the current branch to reflect the new configuration, run the following commands. +1. To update all files on the current branch to reflect the new configuration, run the following command. ```shell copy - git rm -rf --cached . - git reset --hard HEAD + git add --renormalize . ``` 1. To display the rewritten, normalized files, run the following command. diff --git a/content/get-started/learning-about-github/githubs-plans.md b/content/get-started/learning-about-github/githubs-plans.md index fba86d51fbba..eeac97912f29 100644 --- a/content/get-started/learning-about-github/githubs-plans.md +++ b/content/get-started/learning-about-github/githubs-plans.md @@ -105,13 +105,13 @@ In addition to the features available with {% data variables.product.prodname_fr * Organization owners can choose to enable or disable {% data variables.product.prodname_github_codespaces %} for the organization's private {% ifversion ghec %}and internal {% endif %}repositories, and can pay for the usage of members and collaborators. For more information, see [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/enabling-or-disabling-github-codespaces-for-your-organization) and [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/choosing-who-owns-and-pays-for-codespaces-in-your-organization). {%- endif %} -{% data variables.product.company_short %} bills for {% data variables.product.prodname_team %} on a per-user basis. For more information, see "[About per-user pricing]({% ifversion not fpt %}/free-pro-team@latest{% endif %}/billing/managing-the-plan-for-your-github-account/about-per-user-pricing){% ifversion fpt %}."{% else %}" in the Free, Pro, & Team documentation.{% endif %} +{% data variables.product.company_short %} bills for {% data variables.product.prodname_team %} on a per-user basis. For more information, see [About per-user pricing]({% ifversion not fpt %}/free-pro-team@latest{% endif %}/billing/managing-the-plan-for-your-github-account/about-per-user-pricing){% ifversion fpt %}.{% else %} in the Free, Pro, & Team documentation.{% endif %} {% data reusables.actions.actions-billing %} ## {% data variables.product.prodname_enterprise %} -{% data variables.product.prodname_enterprise %} includes two deployment options: {% data variables.product.prodname_ghe_cloud %}, which is hosted by {% data variables.product.company_short %} in the cloud, and {% data variables.product.prodname_ghe_server %}, which is self-hosted. For more information, see "[About {% data variables.product.prodname_dotcom %} for enterprises]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/overview/about-github-for-enterprises){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +{% data variables.product.prodname_enterprise %} includes two deployment options: {% data variables.product.prodname_ghe_cloud %}, which is hosted by {% data variables.product.company_short %} in the cloud, and {% data variables.product.prodname_ghe_server %}, which is self-hosted. For more information, see [About {% data variables.product.prodname_dotcom %} for enterprises]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/overview/about-github-for-enterprises){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} In addition to the features available with {% data variables.product.prodname_team %}, {% data variables.product.prodname_enterprise %} includes: @@ -144,4 +144,4 @@ You can set up trials to evaluate {% data variables.product.prodname_ghe_cloud % ## Further reading -* "[About per-user pricing]({% ifversion not ghec %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/about-per-user-pricing)"{% ifversion not ghec %} in the {% data variables.product.prodname_ghe_cloud %} documentation{% endif %} +* [About per-user pricing]({% ifversion not ghec %}/enterprise-cloud@latest{% endif %}/billing/managing-the-plan-for-your-github-account/about-per-user-pricing){% ifversion not ghec %} in the {% data variables.product.prodname_ghe_cloud %} documentation{% endif %} diff --git a/content/get-started/onboarding/getting-started-with-the-github-enterprise-cloud-trial.md b/content/get-started/onboarding/getting-started-with-the-github-enterprise-cloud-trial.md new file mode 100644 index 000000000000..a9cbe85fe70a --- /dev/null +++ b/content/get-started/onboarding/getting-started-with-the-github-enterprise-cloud-trial.md @@ -0,0 +1,45 @@ +--- +title: Getting started with the GitHub Enterprise Cloud trial +intro: 'Set up the products available in your {% data variables.product.prodname_ghe_cloud %} trial.' +versions: + fpt: '*' + ghec: '*' +--- + +This guide will walk you through setting up the products in your {% data variables.product.prodname_ghe_cloud %} trial, and provide you with the resources you need to get the most out of the trial. + +## Part 1: Setting up your trial + +### 1. Learn about the {% data variables.product.prodname_ghe_cloud %} trial + +For full details of what is included in the trial, and what happens during, and after the trial, see [AUTOTITLE](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud). + +### 2. Sign up for the trial + +Go to the trial sign up page and follow the instructions on screen to sign up for the trial. + +Try {% data variables.product.prodname_ghe_cloud %} {% octicon "link-external" height:16 %} + +## Part 2: Setting up {% data variables.product.prodname_ghe_cloud %} + +You can find full instructions on setting up {% data variables.product.prodname_ghe_cloud %} in the [AUTOTITLE](/enterprise-cloud@latest/get-started/onboarding/getting-started-with-github-enterprise-cloud) guide. + +## Part 3: Setting up {% data variables.product.prodname_GH_advanced_security %} + +You can find information about planning a trial of {% data variables.product.prodname_GH_advanced_security %} and exploring the additional options available with {% data variables.product.prodname_ghe_cloud %} in the [AUTOTITLE](/code-security/trialing-github-advanced-security) articles. + +## Part 4: Setting up {% data variables.product.prodname_copilot_for_business %} + +Setting up your {% data variables.product.prodname_copilot_for_business %} trial involves three phases, and each phase must be completed by different people. + +### 1. Configuring {% data variables.product.prodname_copilot_for_business %} for your enterprise + +As an **enterprise owner**, you must first configure {% data variables.product.prodname_copilot_for_business %} for your enterprise. This phase involves setting policies for the use of {% data variables.product.prodname_copilot_for_business %} in your enterprise, and deciding which organizations in your enterprise can use {% data variables.product.prodname_copilot_for_business %}. For detailed instructions, see [AUTOTITLE](/enterprise-cloud@latest/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise). + +### 2. Enabling {% data variables.product.prodname_copilot_for_business %} for your organization + +Next, **organization owners** can enable {% data variables.product.prodname_copilot_for_business %} for their organizations. For detailed instructions, see [AUTOTITLE](/enterprise-cloud@latest/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-organization). + +### 3. Enabling {% data variables.product.prodname_copilot_for_business %} for individual users + +If your **personal account** has been granted a seat in an organization that has enabled {% data variables.product.prodname_copilot_for_business %}, you can now enable {% data variables.product.prodname_copilot_for_business %} for your personal account. For detailed instructions, see [AUTOTITLE](/enterprise-cloud@latest/copilot/setting-up-github-copilot/setting-up-github-copilot-for-yourself). diff --git a/content/get-started/onboarding/getting-started-with-your-github-account.md b/content/get-started/onboarding/getting-started-with-your-github-account.md index d4f58f00c467..7878f1ab204d 100644 --- a/content/get-started/onboarding/getting-started-with-your-github-account.md +++ b/content/get-started/onboarding/getting-started-with-your-github-account.md @@ -153,12 +153,9 @@ Notifications provide updates about the activity on {% data variables.product.pr You can use {% data variables.product.prodname_pages %} to create and host a website directly from a repository on {% data variables.location.product_location %}. For more information, see [AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages). -{% ifversion discussions %} - ### 9. Using {% data variables.product.prodname_discussions %} You can enable {% data variables.product.prodname_discussions %} for your repository to help build a community around your project. Maintainers, contributors and visitors can use discussions to share announcements, ask and answer questions, and participate in conversations around goals. For more information, see [AUTOTITLE](/discussions/collaborating-with-your-community-using-discussions/about-discussions). -{% endif %} ## Part 4: Customizing and automating your work on {% data variables.product.product_name %} diff --git a/content/get-started/onboarding/index.md b/content/get-started/onboarding/index.md index b1e6282fcc08..109f71479e8e 100644 --- a/content/get-started/onboarding/index.md +++ b/content/get-started/onboarding/index.md @@ -8,6 +8,7 @@ versions: children: - /getting-started-with-your-github-account - /getting-started-with-github-team + - /getting-started-with-the-github-enterprise-cloud-trial - /getting-started-with-github-enterprise-cloud - /getting-started-with-github-enterprise-server --- diff --git a/content/get-started/start-your-journey/hello-world.md b/content/get-started/start-your-journey/hello-world.md index da14964320f9..cb8412ce8a54 100644 --- a/content/get-started/start-your-journey/hello-world.md +++ b/content/get-started/start-your-journey/hello-world.md @@ -61,9 +61,9 @@ This diagram shows: * The `main` branch * A new branch called `feature` -* The journey that `feature` takes before it's merged into `main` +* The journey that `feature` takes through stages for "Commit changes," "Submit pull request," and "Discuss proposed changes" before it's merged into `main` -![Diagram of the two branches. The "feature" branch diverges from the "main" branch, goes through stages for "Commit changes," "Submit pull request," and "Discuss proposed changes," and is then merged back into main.](/assets/images/help/repository/branching.png) +![Diagram of the two branches. The "feature" branch diverges from the "main" branch and is then merged back into main.](/assets/images/help/repository/branching.png) ### Creating a branch diff --git a/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md b/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md index 8f0542ba7ac4..f65e84d8f366 100644 --- a/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md +++ b/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md @@ -40,10 +40,12 @@ If possible, create branch and tag names that don't contain special characters, * The English alphabet (`a` to `z` and `A` to `Z`) * Numbers (`0` to `9`) * A limited set of punctuation characters: + * period (`.`) * hyphen (`-`) * underscore (`_`) * forward slash (`/`) + To avoid confusion, you should start branch names with a letter. diff --git a/content/get-started/using-git/getting-changes-from-a-remote-repository.md b/content/get-started/using-git/getting-changes-from-a-remote-repository.md index 5f1a11663c69..7e6d6f6a4212 100644 --- a/content/get-started/using-git/getting-changes-from-a-remote-repository.md +++ b/content/get-started/using-git/getting-changes-from-a-remote-repository.md @@ -30,11 +30,11 @@ You can choose from [several different URLs](/get-started/getting-started-with-g {% ifversion global-nav-update %} - ![Screenshot of the main page of a repository. A green button, labeled "Code," is outlined in dark orange and expanded to show the HTTPS URL for the repository.](/assets/images/help/repository/remotes-url-global-nav-update.png) + ![Screenshot of the main page of a repository. A green "Code" button is outlined in orange and expanded to show the HTTPS URL for the repository.](/assets/images/help/repository/remotes-url-global-nav-update.png) {% else %} - ![Screenshot of the main page of a repository. A green button, labeled "Code," is outlined in dark orange and expanded to show the HTTPS URL for the repository.](/assets/images/help/repository/remotes-url.png) + ![Screenshot of the main page of a repository. A green "Code" button is outlined in orange and expanded to show the HTTPS URL for the repository.](/assets/images/help/repository/remotes-url.png) {% endif %} diff --git a/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md b/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md index 4b9e0de8a9a5..56d27f864e99 100644 --- a/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md +++ b/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md @@ -63,7 +63,7 @@ If you create a new clone of the repository, you won't lose any of your Git hist 1. At the top of your new repository on {% data variables.product.prodname_dotcom %}'s Quick Setup page, click {% octicon "copy" aria-label="Copy to clipboard" %} to copy the remote repository URL. - ![Screenshot of the "Quick Setup" header in a repository. Next to the remote URL, an icon of two overlapping squares is highlighted with an orange outline.](/assets/images/help/repository/copy-remote-repository-url-quick-setup.png) + ![Screenshot of the "Quick Setup" header in a repository. Next to the remote URL, an icon of two overlapping squares is outlined in orange.](/assets/images/help/repository/copy-remote-repository-url-quick-setup.png) > [!TIP] > For information on the difference between HTTPS and SSH URLs, see [AUTOTITLE](/get-started/getting-started-with-git/about-remote-repositories). diff --git a/content/get-started/using-github-docs/using-hover-cards-on-github-docs.md b/content/get-started/using-github-docs/using-hover-cards-on-github-docs.md index 42906722c7b6..80dbf2fd182c 100644 --- a/content/get-started/using-github-docs/using-hover-cards-on-github-docs.md +++ b/content/get-started/using-github-docs/using-hover-cards-on-github-docs.md @@ -14,9 +14,9 @@ redirect_from: When you're reading an article on {% data variables.product.prodname_docs %} and find a link to another article, you can open a hover card to get more information about the article. The hover card provides basic information about the article, so you can determine whether it will be useful to you without leaving the article you're reading. -If you navigate {% data variables.product.prodname_docs %} with a mouse, the hover card is displayed when you hover the cursor over a link. +If you navigate {% data variables.product.prodname_docs %} with a mouse, the hover card is displayed when you hover the cursor over a link. The card shows the article's location, title, and introduction. -![Screenshot of part of an article on {% data variables.product.prodname_docs %}. A cursor hovers over a link to an article called "Create a repo," and a hover card displays the article's location, title, and introduction.](/assets/images/help/docs/hover-card.png) +![Screenshot of part of an article on {% data variables.product.prodname_docs %}. The cursor hovers over a link to an article and a hover card is shown.](/assets/images/help/docs/hover-card.png) ## Using hover cards with a keyboard diff --git a/content/get-started/using-github/communicating-on-github.md b/content/get-started/using-github/communicating-on-github.md index d250cc79665b..420318410298 100644 --- a/content/get-started/using-github/communicating-on-github.md +++ b/content/get-started/using-github/communicating-on-github.md @@ -22,14 +22,10 @@ topics: {% data variables.product.product_name %} provides built-in collaborative communication tools allowing you to interact closely with your community. This quickstart guide will show you how to pick the right tool for your needs. -{% ifversion discussions %} - {% ifversion team-discussions %} - You can create and participate in issues, pull requests, {% data variables.product.prodname_discussions %}, and team discussions, depending on the type of conversation you'd like to have. - {% else %} - You can create and participate in issues, pull requests, and {% data variables.product.prodname_discussions %}, depending on the type of conversation you'd like to have. - {% endif %} +{% ifversion team-discussions %} +You can create and participate in issues, pull requests, {% data variables.product.prodname_discussions %}, and team discussions, depending on the type of conversation you'd like to have. {% else %} -You can create and participate in issues, pull requests and team discussions, depending on the type of conversation you'd like to have. +You can create and participate in issues, pull requests, and team discussions, depending on the type of conversation you'd like to have. {% endif %} ### {% data variables.product.prodname_github_issues %} @@ -109,8 +105,6 @@ The **Files changed** tab of the pull request shows the implemented fix. * The user creates a pull request with the fix. * A repository maintainer reviews the pull request, comments on it, and merges it. -{% ifversion discussions %} - ### Scenarios for {% data variables.product.prodname_discussions %} * I have a question that's not necessarily related to specific files in the repository. @@ -126,7 +120,6 @@ This example shows the {% data variables.product.prodname_discussions %} welcome This community maintainer started a discussion to welcome the community, and to ask members to introduce themselves. This post fosters an inviting atmosphere for visitors and contributors. The post also clarifies that the team's happy to help with contributions to the repository. -{% endif %} {% ifversion team-discussions %} ### Scenarios for team discussions @@ -140,7 +133,7 @@ This community maintainer started a discussion to welcome the community, and to This example shows a team post for the `octo-team` team. -![Example of team discussion.](/assets/images/help/projects/team-discussions-example.png) +![Screenshot of a team discussion that was created in a GitHub community repository.](/assets/images/help/projects/team-discussions-example.png) The `octocat` team member posted a team discussion, informing the team of various things: * A team member called Mona started remote game events. @@ -184,9 +177,7 @@ For issues, for example, you can tag issues with labels for quicker searching an For pull requests, you can create draft pull requests if your proposed changes are still a work in progress. Draft pull requests cannot be merged until they're marked as ready for review. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests). -{% ifversion discussions %} For {% data variables.product.prodname_discussions %}, you can{% ifversion fpt or ghec %} set up a code of conduct and{% endif %} pin discussions that contain important information for your community. For more information, see [AUTOTITLE](/discussions/collaborating-with-your-community-using-discussions/about-discussions). -{% endif %} {% ifversion team-discussions %}For team discussions, you can edit or delete discussions on a team's page, and you can configure notifications for team discussions. For more information, see [AUTOTITLE](/organizations/collaborating-with-your-team/about-team-discussions).{% endif %} diff --git a/content/get-started/using-github/github-flow.md b/content/get-started/using-github/github-flow.md index d17c3273f89e..90ecf0e58ce2 100644 --- a/content/get-started/using-github/github-flow.md +++ b/content/get-started/using-github/github-flow.md @@ -67,7 +67,7 @@ If your repository has checks configured to run on pull requests, you will see a ### Address review comments -Reviewers should leave questions, comments, and suggestions. Reviewers can comment on the whole pull request or add comments to specific lines{% ifversion pull-request-comment-on-file %} or files{% endif %}. You and reviewers can insert images or code suggestions to clarify comments. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests). +Reviewers should leave questions, comments, and suggestions. Reviewers can comment on the whole pull request or add comments to specific lines or files. You and reviewers can insert images or code suggestions to clarify comments. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests). You can continue to commit and push changes in response to the reviews. Your pull request will update automatically. diff --git a/content/get-started/using-github/github-mobile.md b/content/get-started/using-github/github-mobile.md index 6bb082fa2c15..2fecc0395e75 100644 --- a/content/get-started/using-github/github-mobile.md +++ b/content/get-started/using-github/github-mobile.md @@ -59,7 +59,7 @@ To access accounts on {% data variables.enterprise.data_residency %} using {% da You must install {% data variables.product.prodname_mobile %} 1.4 or later on your device to use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}. -To use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, {% data variables.product.prodname_dotcom %} must be version 3.0 or greater, and your enterprise owner must enable mobile support for your enterprise. For more information, see {% ifversion ghes %}[AUTOTITLE](/admin/release-notes) and {% endif %}"[Managing {% data variables.product.prodname_mobile %} for your enterprise]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise){% ifversion not ghes %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}."{% endif %} +To use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, {% data variables.product.prodname_dotcom %} must be version 3.0 or greater, and your enterprise owner must enable mobile support for your enterprise. For more information, see {% ifversion ghes %}[AUTOTITLE](/admin/release-notes) and {% endif %}[Managing {% data variables.product.prodname_mobile %} for your enterprise]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise){% ifversion not ghes %} in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}.{% endif %} During the {% data variables.release-phases.public_preview %} for {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, you must be signed in with a personal account on {% data variables.product.prodname_dotcom_the_website %}. diff --git a/content/get-started/writing-on-github/editing-and-sharing-content-with-gists/index.md b/content/get-started/writing-on-github/editing-and-sharing-content-with-gists/index.md index 6ae903404090..248b788a8cab 100644 --- a/content/get-started/writing-on-github/editing-and-sharing-content-with-gists/index.md +++ b/content/get-started/writing-on-github/editing-and-sharing-content-with-gists/index.md @@ -14,5 +14,6 @@ children: - /creating-gists - /forking-and-cloning-gists - /saving-gists-with-stars + - /moderating-gist-comments shortTitle: Share content with gists --- diff --git a/content/get-started/writing-on-github/editing-and-sharing-content-with-gists/moderating-gist-comments.md b/content/get-started/writing-on-github/editing-and-sharing-content-with-gists/moderating-gist-comments.md new file mode 100644 index 000000000000..1e2a3df5c860 --- /dev/null +++ b/content/get-started/writing-on-github/editing-and-sharing-content-with-gists/moderating-gist-comments.md @@ -0,0 +1,24 @@ +--- +title: Moderating gist comments +intro: 'You can moderate comments on gists by turning them off or deleting unwanted entries.' +versions: + fpt: '*' + ghes: '>=3.17' + ghec: '*' +--- +## Disabling comments + +You can hide existing comments and prevent new comments from being added to a gist by disabling comments for the gist. You can re-enable comments at any time. This will make existing comments visible. + +1. Navigate to {% data variables.gists.gist_user %} and select the gist you want to moderate. +1. In the top right corner, select **{% octicon "pencil" aria-hidden="true" %} Edit**. +1. In the top right corner, select **{% octicon "comment" aria-hidden="true" %} Disable comments**. + +## Deleting comments + +You can delete a comment on a gist if you are the author of the gist or the author of the comment. + +1. Navigate to {% data variables.gists.gist_user %} and select the gist you want to moderate. +1. On the upper-right corner of the comment box, select **{% octicon "kebab-horizontal" aria-label="Open dropdown menu" %}**. +1. From the dropdown menu select **Delete**. +1. Select **OK** to confirm. diff --git a/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md b/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md index c73327ecda60..483af9ad4c14 100644 --- a/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md +++ b/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md @@ -22,8 +22,6 @@ You can also interact with other users in pull requests and issues using feature Every comment field on {% data variables.product.product_name %} contains a text formatting toolbar, which allows you to format your text without learning Markdown syntax. In addition to Markdown formatting like bold and italic styles and creating headers, links, and lists, the toolbar includes {% data variables.product.product_name %}-specific features such as @-mentions, task lists, and links to issues and pull requests. -{% ifversion fixed-width-font-gfm-fields %} - ## Enabling fixed-width fonts in the editor You can enable a fixed-width font in every comment field on {% data variables.product.product_name %}. Each character in a fixed-width, or monospace, font occupies the same horizontal space. This can make it easier to edit advanced Markdown structures such as tables and code snippets. @@ -35,8 +33,6 @@ You can enable a fixed-width font in every comment field on {% data variables.pr 1. Under "Markdown editor font preference", select **Use a fixed-width (monospace) font when editing Markdown**. ![Screenshot of {% data variables.product.prodname_dotcom %} user settings for Markdown preference. The checkbox to use a fix-width font in Markdown is checked and outlined in dark orange.](/assets/images/help/writing/enable-fixed-width.png) -{% endif %} - ## Further reading * [{% data variables.product.prodname_dotcom %} Flavored Markdown Spec](https://github.github.com/gfm/) diff --git a/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md b/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md index ab9e23aa22e7..dc09efab7189 100644 --- a/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md +++ b/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md @@ -22,11 +22,11 @@ To create a heading, add one to six # symbols before your heading tex ### A third-level heading ``` -![Screenshot of rendered GitHub Markdown showing sample h1, h2, and h3 headers, which descend in type size and visual weight to indicate descending hierarchy level.](/assets/images/help/writing/headings-rendered.png) +![Screenshot of rendered GitHub Markdown showing sample h1, h2, and h3 headers, which descend in type size and visual weight to show hierarchy level.](/assets/images/help/writing/headings-rendered.png) When you use two or more headings, GitHub automatically generates a table of contents that you can access by clicking {% octicon "list-unordered" aria-label="The unordered list icon" %} within the file header. Each heading title is listed in the table of contents and you can click a title to navigate to the selected section. -![Screenshot of the README file in the GitHub Docs open source repository with the drop-down menu for the table of contents exposed. The table of contents icon is outlined in dark orange.](/assets/images/help/repository/headings-toc.png) +![Screenshot of a README file with the drop-down menu for the table of contents exposed. The table of contents icon is outlined in dark orange.](/assets/images/help/repository/headings-toc.png) ## Styling text @@ -53,9 +53,9 @@ Text that is not a quote > Text that is a quote ``` -Quoted text is indented, with a different type color. +Quoted text is indented with a vertical line on the left and displayed using gray type. -![Screenshot of rendered GitHub Markdown showing sample quoted text. The quote is indented with a vertical line on the left, and its text is dark gray rather than black.](/assets/images/help/writing/quoted-text-rendered.png) +![Screenshot of rendered GitHub Markdown showing the difference between normal and quoted text.](/assets/images/help/writing/quoted-text-rendered.png) > [!NOTE] > When viewing a conversation, you can automatically quote text in a comment by highlighting the text, then typing R. You can quote an entire comment by clicking {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then **Quote reply**. For more information about keyboard shortcuts, see [AUTOTITLE](/get-started/accessibility/keyboard-shortcuts). @@ -68,7 +68,7 @@ You can call out code or a command within a sentence with single backticks. The Use `git status` to list all new or modified files that haven't yet been committed. ``` -![Screenshot of rendered GitHub Markdown showing the appearance of characters surrounded by backticks. The words "git status" appear in a fixed-width typeface, highlighted in light gray.](/assets/images/help/writing/inline-code-rendered.png) +![Screenshot of rendered GitHub Markdown showing that characters surrounded by backticks are shown in a fixed-width typeface, highlighted in light gray.](/assets/images/help/writing/inline-code-rendered.png) To format code or text into its own distinct block, use triple backticks. @@ -81,7 +81,7 @@ git commit ``` ```` -![Screenshot of rendered GitHub Markdown showing a code block. The words "git status," "git add," and "git commit" appear in a fixed-width typeface, highlighted in light gray.](/assets/images/help/writing/code-block-rendered.png) +![Screenshot of rendered GitHub Markdown showing a simple code block without syntax highlighting.](/assets/images/help/writing/code-block-rendered.png) For more information, see [AUTOTITLE](/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks). @@ -95,7 +95,7 @@ In issues, pull requests, and discussions, you can call out colors within a sent The background color is `#ffffff` for light mode and `#000000` for dark mode. ``` -![Screenshot of rendered GitHub Markdown showing how HEX values within backticks create small circles of color. #ffffff shows a white circle, and #000000 shows a black circle.](/assets/images/help/writing/supported-color-models-rendered.png) +![Screenshot of rendered GitHub Markdown showing how HEX values within backticks create small circles of color, here white and then black.](/assets/images/help/writing/supported-color-models-rendered.png) Here are the currently supported color models. @@ -265,15 +265,9 @@ Here are some examples for using relative links to display an image. For more information, see [Relative Links](#relative-links). -### Specifying the theme an image is shown to +### The Picture element -You can specify the theme an image is displayed for in Markdown by using the HTML `` element in combination with the `prefers-color-scheme` media feature. We distinguish between light and dark color modes, so there are two options available. You can use these options to display images optimized for dark or light backgrounds. This is particularly helpful for transparent PNG images. - -For example, the following code displays a sun image for light themes and a moon for dark themes: - -{% data reusables.getting-started.picture-element-example %} - -The old method of specifying images based on the theme, by using a fragment appended to the URL (`#gh-dark-mode-only` or `#gh-light-mode-only`), is {% data variables.release-phases.closing_down %} and will be removed in favor of the new method described above. +The `` HTML element is supported. ## Lists @@ -312,9 +306,9 @@ To create a nested list using the web editor on {% data variables.product.produc > [!NOTE] > In the web-based editor, you can indent or dedent one or more lines of text by first highlighting the desired lines and then using Tab or Shift+Tab respectively. -![Screenshot of Markdown in {% data variables.product.prodname_vscode %} showing how indented bullets align vertically with the first letter of the text lines above them.](/assets/images/help/writing/nested-list-alignment.png) +![Screenshot of Markdown in {% data variables.product.prodname_vscode %} showing indentation of nested numbered lines and bullets.](/assets/images/help/writing/nested-list-alignment.png) -![Screenshot of rendered GitHub Markdown showing a numbered item followed by a bulleted item nested one level to the right, and another bulleted item nested yet further to the right.](/assets/images/help/writing/nested-list-example-1.png) +![Screenshot of rendered GitHub Markdown showing a numbered item followed by nested bullets at two different levels of nesting.](/assets/images/help/writing/nested-list-example-1.png) To create a nested list in the comment editor on {% data variables.product.product_name %}, which doesn't use a monospaced font, you can look at the list item immediately above the nested list and count the number of characters that appear before the content of the item. Then type that number of space characters in front of the nested list item. @@ -325,7 +319,7 @@ In this example, you could add a nested list item under the list item `100. Firs - First nested list item ``` -![Screenshot of rendered GitHub Markdown showing a list item prefaced by the number 100 followed by a bulleted item nested one level to the right.](/assets/images/help/writing/nested-list-example-3.png) +![Screenshot of rendered GitHub Markdown showing a numbered item prefaced by the number 100 followed by a bulleted item nested one level.](/assets/images/help/writing/nested-list-example-3.png) You can create multiple levels of nested lists using the same method. For example, because the first nested list item has seven characters (`␣␣␣␣␣-␣`) before the nested list content `First nested list item`, you would need to indent the second nested list item by at least two more characters (nine spaces minimum). @@ -335,7 +329,7 @@ You can create multiple levels of nested lists using the same method. For exampl - Second nested list item ``` -![Screenshot of rendered GitHub Markdown showing a list item prefaced by the number 100 followed by a bulleted item nested one level to the right, and another bulleted item nested yet further to the right.](/assets/images/help/writing/nested-list-example-2.png) +![Screenshot of rendered GitHub Markdown showing a numbered item prefaced by the number 100 followed by bullets at two different levels of nesting.](/assets/images/help/writing/nested-list-example-2.png) For more examples, see the [GitHub Flavored Markdown Spec](https://github.github.com/gfm/#example-265). @@ -464,7 +458,7 @@ You can tell {% data variables.product.product_name %} to ignore (or escape) Mar `Let's rename \*our-new-project\* to \*our-old-project\*.` -![Screenshot of rendered GitHub Markdown showing how backslashes prevent the conversion of asterisks to italics. The text reads, "Let's rename our-new-project to our-old-project."](/assets/images/help/writing/escaped-character-rendered.png) +![Screenshot of rendered GitHub Markdown showing how backslashes prevent the conversion of asterisks to italics.](/assets/images/help/writing/escaped-character-rendered.png) For more information on backslashes, see Daring Fireball's [Markdown Syntax](https://daringfireball.net/projects/markdown/syntax#backslash). diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/about-task-lists.md b/content/get-started/writing-on-github/working-with-advanced-formatting/about-task-lists.md index 1ad7172042c6..d15b996163de 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/about-task-lists.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/about-task-lists.md @@ -36,7 +36,7 @@ If you add a task list to the body of an issue, the list has added functionality * If a task requires further tracking or discussion, you can convert the task to an issue by hovering over the task and clicking {% octicon "issue-opened" aria-label="The issue opened icon" %} in the upper-right corner of the task. To add more details before creating the issue, you can use keyboard shortcuts to open the new issue form. For more information, see [AUTOTITLE](/get-started/accessibility/keyboard-shortcuts#issues-and-pull-requests). * Any issues referenced in the task list will specify that they are tracked in the referencing issue. -![Screenshot of a {% data variables.product.prodname_dotcom %} issue showing a task list under the header "Features." Some items are checked as done, others unchecked as undone. Three list items link to other {% data variables.product.prodname_github_issues %}.](/assets/images/help/writing/task-list-rendered.png) +![Screenshot of an issue showing a task list under the header "Features." Three list items link to other issues.](/assets/images/help/writing/task-list-rendered.png) {% endif %} @@ -44,7 +44,7 @@ If you add a task list to the body of an issue, the list has added functionality {% data reusables.repositories.task-list-markdown %} -> [!TIP] +> [!NOTE] > You cannot create task list items within closed issues or issues with linked pull requests. ## Reordering tasks @@ -61,13 +61,13 @@ You can reorder tasks across different lists in the same comment, but you cannot You can also convert tasks into issues. First, hover over one of the items in your task list and then click {% octicon "issue-opened" aria-label="Convert to issue" %}. - {% ifversion fpt or ghec %} ![Screenshot of a {% data variables.product.prodname_dotcom %} issue showing two tasks. The"Convert to issue" icon is highlighted with an orange outline.](/assets/images/help/writing/convert-task-lists-into-issues.png){% endif %} + {% ifversion fpt or ghec %} ![Screenshot of an issue showing two tasks. The "Convert to issue" icon is highlighted with an orange outline.](/assets/images/help/writing/convert-task-lists-into-issues.png){% endif %} ## Navigating tracked issues -Any issues that are referenced in a task list specify that they are tracked by the issue that contains the task list. To navigate to the tracking issue from the tracked issue, click on the tracking issue number in the **Tracked in** section next to the issue status. +Any issues that are referenced in a task list specify that they are tracked by the issue that contains the task list. To navigate to the tracking issue from the tracked issue, click on the tracking issue number in the **Tracked by** section next to the issue status. -![Screenshot of a {% data variables.product.prodname_dotcom %} issue named "Create relationships between issues" and numbered issue 3. A button below the issue title reading "Tracked by issue #2" is outlined in dark orange.](/assets/images/help/writing/task-list-tracked.png) +![Screenshot of issue 3 showing the issue status of "Open" and the text "Tracked by issue #2", which is outlined in orange.](/assets/images/help/writing/task-list-tracked.png) {% endif %} diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md b/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md index 917517952457..7adc557615e3 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md @@ -18,7 +18,7 @@ shortTitle: Auto linked references `Visit https://github.com` -![Screenshot of rendered {% data variables.product.prodname_dotcom %} Markdown showing how a URL beginning with "http" becomes as a blue clickable link. The text reads, "Visit https://github.com."](/assets/images/help/writing/url-autolink-rendered.png) +![Screenshot of rendered {% data variables.product.github %} Markdown showing how a URL is displayed as a blue clickable link, "Visit https://github.com."](/assets/images/help/writing/url-autolink-rendered.png) For more information on creating links, see [AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#links). diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md b/content/get-started/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md index 0907ce36a820..bba719eb3c9e 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md @@ -38,9 +38,9 @@ This type of permanent link will render as a code snippet only in the repository ## Linking to Markdown -You can link to specific lines in Markdown files by loading the Markdown file without Markdown rendering. To load a Markdown file without rendering, you can use the `?plain=1` parameter at the end of the url for the file. For example, `github.com///blob//README.md?plain=1`. +You can link to specific lines in Markdown files by loading the Markdown file without Markdown rendering. To load a Markdown file without rendering, you can use the `?plain=1` parameter at the end of the URL for the file. For example, `github.com///blob//README.md?plain=1`. -You can link to a specific line in the Markdown file the same way you can in code. Append `#L` with the line number or numbers at the end of the url. For example, `github.com///blob//README.md?plain=1#L14` will highlight line 14 in the plain README.md file. +You can link to a specific line in the Markdown file the same way you can in code. Append `#L` with the line number or numbers at the end of the URL. For example, `github.com///blob//README.md?plain=1#L14` will highlight line 14 in the plain README.md file. ## Further reading diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md b/content/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md index 415fdd8de958..765f4f7b731c 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md @@ -25,7 +25,7 @@ function test() { ``` ```` -![Screenshot of rendered {% data variables.product.prodname_dotcom %} Markdown showing how triple backticks render code blocks in raw formatting. The block begins with "function test() {."](/assets/images/help/writing/fenced-code-block-rendered.png) +![Screenshot of rendered {% data variables.product.github %} Markdown showing the use of triple backticks to create code blocks. The block begins with "function test() {."](/assets/images/help/writing/fenced-code-block-rendered.png) > [!TIP] > To preserve your formatting within a list, make sure to indent non-fenced code blocks by eight spaces. @@ -40,7 +40,7 @@ Look! You can see my backticks. ```` ````` -![Screenshot of rendered {% data variables.product.prodname_dotcom %} Markdown showing how quadruple backticks cause triple backticks surrounding a code block to remain visible. The block reads, "Look! You can see my backticks."](/assets/images/help/writing/fenced-code-show-backticks-rendered.png) +![Screenshot of rendered Markdown showing that when you write triple backticks between quadruple backticks they are visible in the rendered content.](/assets/images/help/writing/fenced-code-show-backticks-rendered.png) {% data reusables.user-settings.enabling-fixed-width-fonts %} diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams.md b/content/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams.md index 9fe4250cf5f5..7c82430e8e1f 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams.md @@ -134,7 +134,7 @@ For example, you can create a TopoJSON map by specifying coordinates and shapes. ``` ```` -![Screenshot of a rendered TopoJSON map of parts of Indonesia, Singapore, and Malaysia with a blue point, a purple rectangular overlay, and blue zigzag lines.](/assets/images/help/writing/fenced-topojson-rendered-map.png) +![Screenshot of a rendered TopoJSON map of Indonesia, Singapore, and Malaysia with a blue point, a purple rectangular overlay, and blue zigzag lines.](/assets/images/help/writing/fenced-topojson-rendered-map.png) For more information on working with `.geojson` and `.topojson` files, see [AUTOTITLE](/repositories/working-with-files/using-files/working-with-non-code-files#mapping-geojson-files-on-github). @@ -179,6 +179,6 @@ endsolid ``` ```` -![Screenshot of a 3D model of a blue pyramid atop a grid of black lines on a white ground. Options to select "Wireframe", "Surface Angle", or "Solid" appear at bottom.](/assets/images/help/writing/fenced-stl-rendered-object.png) +![Screenshot of a 3D model of a blue pyramid on a grid of black lines. Options "Wireframe", "Surface Angle", or "Solid" appear at bottom.](/assets/images/help/writing/fenced-stl-rendered-object.png) For more information on working with `.stl` files, see [AUTOTITLE](/repositories/working-with-files/using-files/working-with-non-code-files#3d-file-viewer). diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-collapsed-sections.md b/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-collapsed-sections.md index ced45526e5ba..5cbf022ed92a 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-collapsed-sections.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-collapsed-sections.md @@ -25,7 +25,7 @@ Within the `
    ` block, use the `` tag to let readers know what i ### You can add a header -You can add text within a collapsed section. +You can add text within a collapsed section. You can add an image or a code block, too. @@ -38,11 +38,11 @@ You can add an image or a code block, too. The Markdown inside the `` label will be collapsed by default: -![Screenshot of the Markdown above on this page as rendered on {% data variables.product.prodname_dotcom %}, showing a right-facing arrow and the header "Tips for collapsed sections."](/assets/images/help/writing/collapsed-section-view.png) +![Screenshot of the Markdown above on this page as rendered on {% data variables.product.github %}, showing a right-facing arrow and the header "Tips for collapsed sections."](/assets/images/help/writing/collapsed-section-view.png) After a reader clicks {% octicon "triangle-right" aria-label="The right triangle icon" %}, the details are expanded: -![Screenshot of the Markdown above on this page as rendered on {% data variables.product.prodname_dotcom %}, indicating that a collapsed section can contain headers, sentences of text, images, and code blocks.](/assets/images/help/writing/open-collapsed-section.png) +![Screenshot of the Markdown above on this page as rendered on {% data variables.product.github %}. The collapsed section contains headers, text, images, and code blocks.](/assets/images/help/writing/open-collapsed-section.png) Optionally, to make the section display as open by default, add the `open` attribute to the `
    ` tag: diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md b/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md index cd75dc6557af..7512a7862b30 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md @@ -24,7 +24,7 @@ You can create tables with pipes `|` and hyphens `-`. Hyphens are used to create | Content Cell | Content Cell | ``` -![Screenshot of a Markdown table with two columns of equal width as rendered on {% data variables.product.prodname_dotcom %}. Headers render in boldface, and alternate content rows have gray shading.](/assets/images/help/writing/table-basic-rendered.png) +![Screenshot of a {% data variables.product.github %} Markdown table rendered as two equal columns. Headers are shown in boldface, and alternate content rows have gray shading.](/assets/images/help/writing/table-basic-rendered.png) The pipes on either end of the table are optional. @@ -37,7 +37,7 @@ Cells can vary in width and do not need to be perfectly aligned within columns. | git diff | Show file differences that haven't been staged | ``` -![Screenshot of a Markdown table with two columns of differing width as rendered on {% data variables.product.prodname_dotcom %}. Rows list the commands "git status" and "git diff" and their descriptions.](/assets/images/help/writing/table-varied-columns-rendered.png) +![Screenshot of a {% data variables.product.github %} Markdown table with two columns of differing width. Rows list the commands "git status" and "git diff" and their descriptions.](/assets/images/help/writing/table-varied-columns-rendered.png) {% data reusables.user-settings.enabling-fixed-width-fonts %} @@ -52,7 +52,7 @@ You can use [formatting](/get-started/writing-on-github/getting-started-with-wri | `git diff` | Show file differences that **haven't been** staged | ``` -![Screenshot of a Markdown table with two columns of differing width as rendered on {% data variables.product.prodname_dotcom %}. The commands "git status" and "git diff" are formatting as code blocks.](/assets/images/help/writing/table-inline-formatting-rendered.png) +![Screenshot of a {% data variables.product.github %} Markdown table with the commands formatted as code blocks. Bold and italic formatting are used in the descriptions.](/assets/images/help/writing/table-inline-formatting-rendered.png) You can align text to the left, right, or center of a column by including colons `:` to the left, right, or on both sides of the hyphens within the header row. @@ -63,7 +63,7 @@ You can align text to the left, right, or center of a column by including colons | git diff | git diff | git diff | ``` -![Screenshot of a Markdown table with three columns as rendered on {% data variables.product.prodname_dotcom %}, showing how text within cells can be set to align left, center, or right.](/assets/images/help/writing/table-aligned-text-rendered.png) +![Screenshot of a Markdown table with three columns as rendered on {% data variables.product.github %}, showing how text within cells can be set to align left, center, or right.](/assets/images/help/writing/table-aligned-text-rendered.png) To include a pipe `|` as content within your cell, use a `\` before the pipe: @@ -74,9 +74,9 @@ To include a pipe `|` as content within your cell, use a `\` before the pipe: | Pipe | \| | ``` -![Screenshot of a Markdown table as rendered on {% data variables.product.prodname_dotcom %} showing how pipes, which normally close cells, can display inside cells when prefaced by a backslash.](/assets/images/help/writing/table-escaped-character-rendered.png) +![Screenshot of a Markdown table as rendered on {% data variables.product.github %} showing how pipes, which normally close cells, are shown when prefaced by a backslash.](/assets/images/help/writing/table-escaped-character-rendered.png) ## Further reading -* [{% data variables.product.prodname_dotcom %} Flavored Markdown Spec](https://github.github.com/gfm/) +* [{% data variables.product.github %} Flavored Markdown Spec](https://github.github.com/gfm/) * [AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax) diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md b/content/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md index faa2bf3d5355..895ba0f9767e 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md @@ -17,6 +17,7 @@ topics: To link a pull request to an issue to show that a fix is in progress and to automatically close the issue when someone merges the pull request, type one of the following keywords followed by a reference to the issue. For example, `Closes #10` or `Fixes octo-org/octo-repo#100`. + * close * closes * closed @@ -26,6 +27,7 @@ To link a pull request to an issue to show that a fix is in progress and to auto * resolve * resolves * resolved + For more information, see [AUTOTITLE](/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue). diff --git a/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md b/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md index 4e6e2251f3b6..49e0aa0deb33 100644 --- a/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md +++ b/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md @@ -1,6 +1,6 @@ --- title: Writing mathematical expressions -intro: 'Use Markdown to display mathematical expressions on {% data variables.product.company_short %}.' +intro: 'Use Markdown to display mathematical expressions on {% data variables.product.github %}.' product: '{% data reusables.gated-features.markdown-ui %}' versions: feature: math @@ -11,47 +11,38 @@ shortTitle: Mathematical expressions To enable clear communication of mathematical expressions, {% data variables.product.product_name %} supports LaTeX formatted math within Markdown. For more information, see [LaTeX/Mathematics](http://en.wikibooks.org/wiki/LaTeX/Mathematics) in Wikibooks. -{% data variables.product.company_short %}'s math rendering capability uses MathJax; an open source, JavaScript-based display engine. MathJax supports a wide range of LaTeX macros, and several useful accessibility extensions. For more information, see [the MathJax documentation](http://docs.mathjax.org/en/latest/input/tex/index.html#tex-and-latex-support) and [the MathJax Accessibility Extensions Documentation](https://mathjax.github.io/MathJax-a11y/docs/#reader-guide). +{% data variables.product.github %}'s math rendering capability uses MathJax; an open source, JavaScript-based display engine. MathJax supports a wide range of LaTeX macros, and several useful accessibility extensions. For more information, see [the MathJax documentation](http://docs.mathjax.org/en/latest/input/tex/index.html#tex-and-latex-support) and [the MathJax Accessibility Extensions Documentation](https://mathjax.github.io/MathJax-a11y/docs/#reader-guide). Mathematical expressions rendering is available in {% data variables.product.prodname_github_issues %}, {% data variables.product.prodname_discussions %}, pull requests, wikis, and Markdown files. ## Writing inline expressions -{% ifversion math-backtick-syntax %} There are two options for delimiting a math expression inline with your text. You can either surround the expression with dollar symbols (`$`), or start the expression with $\` and end it with \`$. The latter syntax is useful when the expression you are writing contains characters that overlap with markdown syntax. For more information, see [AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax). -{% else %} -To include a math expression inline within your text, delimit the expression with dollar symbols `$`. -{% endif %} ```text This sentence uses `$` delimiters to show math inline: $\sqrt{3x-1}+(1+x)^2$ ``` -![Screenshot of rendered Markdown showing how a mathematical expression displays on {% data variables.product.prodname_dotcom %}. The equation is the square root of 3 x minus 1 plus open paren 1 plus x close paren squared.](/assets/images/help/writing/inline-math-markdown-rendering.png) - -{% ifversion math-backtick-syntax %} +![Screenshot of rendered Markdown showing an inline mathematical expression: the square root of 3x minus 1 plus (1 plus x) squared.](/assets/images/help/writing/inline-math-markdown-rendering.png) ```text This sentence uses $\` and \`$ delimiters to show math inline: $`\sqrt{3x-1}+(1+x)^2`$ ``` -![Screenshot of rendered Markdown showing how a mathematical expression displays inline on {% data variables.product.prodname_dotcom %}. The equation is the square root of 3 x minus 1 plus open paren 1 plus x close paren squared.](/assets/images/help/writing/inline-backtick-math-markdown-rendering.png) -{% endif %} +![Screenshot of rendered Markdown showing an inline mathematical expression with backtick syntax: the square root of 3x minus 1 plus (1 plus x) squared.](/assets/images/help/writing/inline-backtick-math-markdown-rendering.png) ## Writing expressions as blocks To add a math expression as a block, start a new line and delimit the expression with two dollar symbols `$$`. ->[!TIP] If you're writing in an .md file, you will need to use specific formatting to create a line break, such as ending the line with a backslash as shown in the example below. For more information on line breaks in Markdown, see "[AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#line-breaks)." +>[!TIP] If you're writing in an .md file, you will need to use specific formatting to create a line break, such as ending the line with a backslash as shown in the example below. For more information on line breaks in Markdown, see [AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#line-breaks). ```text **The Cauchy-Schwarz Inequality**\ $$\left( \sum_{k=1}^n a_k b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)$$ ``` -![Screenshot of rendered Markdown showing how a complex equation displays on {% data variables.product.prodname_dotcom %}. The bolded text reads "The Cauchy-Schwarz Inequality". Below the text, there is an equation showing the The Cauchy-Schwarz Inequality formula.](/assets/images/help/writing/math-expression-as-a-block-rendering.png) - -{% ifversion math-fenced-blocks %} +![Screenshot of rendered Markdown showing a complex equation. Bold text reads "The Cauchy-Schwarz Inequality" above the formula for the inequality.](/assets/images/help/writing/math-expression-as-a-block-rendering.png) Alternatively, you can use the \`\`\`math code block syntax to display a math expression as a block. With this syntax, you don't need to use `$$` delimiters. The following will render the same as above: @@ -63,8 +54,6 @@ Alternatively, you can use the \`\`\`math code block syntax to disp ``` ```` -{% endif %} - ## Writing dollar signs in line with and within mathematical expressions To display a dollar sign as a character in the same line as a mathematical expression, you need to escape the non-delimiter `$` to ensure the line renders correctly. @@ -83,7 +72,7 @@ To display a dollar sign as a character in the same line as a mathematical expre To split $100 in half, we calculate $100/2$ ``` - ![Screenshot of rendered Markdown showing how span tags around a dollar sign display the sign as inline text rather than part of a mathematical equation.](/assets/images/help/writing/dollar-sign-inline-math-expression.png) + ![Screenshot of rendered Markdown showing how span tags around a dollar sign display the sign as inline text not as part of a mathematical equation.](/assets/images/help/writing/dollar-sign-inline-math-expression.png) ## Further reading diff --git a/content/get-started/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md b/content/get-started/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md index ee0d7968c378..5e98e756b8a9 100644 --- a/content/get-started/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md +++ b/content/get-started/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md @@ -14,9 +14,9 @@ versions: {% data reusables.user-settings.saved_replies %} 1. Under "Add a saved reply", add a title for your saved reply. 1. In the "Write" field, add the content you'd like to use for the saved reply. For information on using Markdown, see [AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax). -![Screenshot of a {% data variables.product.prodname_dotcom %} saved reply titled "Squirrel ship" showing Markdown in the "Write" box. The text reads, "This looks great. :shipit: it!"](/assets/images/help/writing/saved-replies-settings-adding.png) +![Screenshot of a {% data variables.product.github %} saved reply titled "Squirrel ship" showing Markdown in the "Write" box. The text reads, "This looks great. :shipit: it!"](/assets/images/help/writing/saved-replies-settings-adding.png) 1. To review your reply, click **Preview**. -![Screenshot of a GitHub saved reply titled "Squirrel ship" showing rendered Markdown in the "Preview" box. The text reads, "This looks great. :shipit: it!"](/assets/images/help/writing/saved-replies-preview.png) +![Screenshot of a {% data variables.product.github %} saved reply titled "Squirrel ship" showing rendered Markdown in the "Preview" box. The text and "ShipIt" icon are shown.](/assets/images/help/writing/saved-replies-preview.png) 1. Click **Add saved reply**. ## Further reading diff --git a/content/get-started/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md b/content/get-started/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md index 1568dae615cb..12e812e28905 100644 --- a/content/get-started/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md +++ b/content/get-started/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md @@ -12,5 +12,5 @@ versions: --- {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.saved_replies %} -1. Under "Saved replies", next to the saved reply you want to delete, click {% octicon "x" aria-label="The X" %}. -![Screenshot of {% data variables.product.prodname_dotcom %} settings for "Saved replies." To the right of the saved reply "Ship squirrel," a delete button with a red X is outlined in dark orange.](/assets/images/help/writing/saved-replies-delete-existing.png) +1. Under "Saved replies", next to the saved reply you want to delete, click {% octicon "x" aria-label="The X" %}. +![Screenshot of {% data variables.product.github %} settings for "Saved replies." To the right of the "Ship squirrel" reply, a delete button with a red X is outlined in orange.](/assets/images/help/writing/saved-replies-delete-existing.png) diff --git a/content/get-started/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md b/content/get-started/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md index 604badcf6201..97e08693f907 100644 --- a/content/get-started/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md +++ b/content/get-started/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md @@ -13,8 +13,8 @@ versions: --- {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.saved_replies %} -1. Under "Saved replies," next to the saved reply you want to edit, click {% octicon "pencil" aria-label="The pencil" %}. -![Screenshot of {% data variables.product.prodname_dotcom %} settings for "Saved replies." To the right of the saved reply "Ship squirrel," an edit button with a pencil icon is outlined in dark orange.](/assets/images/help/writing/saved-replies-edit-existing.png) +1. Under "Saved replies," next to the saved reply you want to edit, click {% octicon "pencil" aria-label="The pencil" %}. +![Screenshot of {% data variables.product.github %} settings for "Saved replies." To the right of the "Ship squirrel" reply, an edit button with a pencil icon is outlined in orange.](/assets/images/help/writing/saved-replies-edit-existing.png) 1. Under "Edit saved reply," edit the title or content of the saved reply. 1. Click **Update saved reply**. diff --git a/content/github-models/prototyping-with-ai-models.md b/content/github-models/prototyping-with-ai-models.md index a8c783a5b8e0..a420aa22ce02 100644 --- a/content/github-models/prototyping-with-ai-models.md +++ b/content/github-models/prototyping-with-ai-models.md @@ -12,40 +12,52 @@ See also [AUTOTITLE](/github-models/responsible-use-of-github-models). ## Finding AI models -To find AI models, go to [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace/models), then click **{% octicon "ai-model" aria-hidden="true" %} Models** in the sidebar. +To find an AI model: -To view details about a model, click on the model's name. +{% data reusables.models.steps-to-open-model-playground %} + +The model is opened in the model playground. Details of the model are displayed in the sidebar on the right. If the sidebar is not displayed, expand it by clicking the **{% octicon "sidebar-expand" aria-label="Show parameters setting" %}** icon at the right of the playground. {% data reusables.models.o1-models-preview-note %} ## Experimenting with AI models in the playground +The AI model playground is a free resource that allows you to adjust model parameters and submit prompts to see how a model responds. + >[!NOTE] > -> The playground is in {% data variables.release-phases.public_preview %} and subject to change. To request access, [join the waitlist](https://github.com/marketplace/models/waitlist). +> * The model playground is in {% data variables.release-phases.public_preview %} and subject to change. +> * The playground is rate limited. See [Rate limits](#rate-limits) below. + +To adjust parameters for the model, in the playground, select the **Parameters** tab in the sidebar. + +To see code that corresponds to the parameters that you selected, switch from the **Chat** tab to the **Code** tab. -{% data variables.product.prodname_marketplace %} provides a free playground where you can adjust model parameters and submit prompts to see how the model responds. +![Screenshot of the 'Code' tab button, highlighted with a dark orange outline, at the top left of the playground.](/assets/images/help/models/model-playground-code-tab.png) -To open the playground, go to [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace/models), then click **{% octicon "ai-model" aria-hidden="true" %} Models** in the sidebar. Click on a model's name, then click **{% octicon "command-palette" aria-hidden="true" %} Playground**. +### Comparing models -To adjust parameters for the model, select the **Parameters** tab in the sidebar. To see code that corresponds to the parameters that you selected, switch from the **Chat** tab to the **Code** tab. +You can submit a prompt to two models at the same time and compare the responses. -You can also compare two models at once. In the menu bar for your model, click **{% octicon "plus" aria-hidden="true" %} Compare**, then select a model for comparison using the **Model: MODEL-NAME** {% octicon "chevron-down" aria-hidden="true" %} dropdown menu in the second chat window. When you type a prompt in either chat window, the prompt will automatically be mirrored to the other window, and you can compare the responses from each model. +With one model open in the playground, click **Compare**, then, in the dropdown menu, select a model for comparison. The selected model opens in a second chat window. When you type a prompt in either chat window, the prompt is mirrored to the other window. The prompts are submitted simultaneously so that you can compare the responses from each model. -The playground is rate limited. See [Rate limits](#rate-limits) below. +Any parameters you set are used for both models. ## Experimenting with AI models using the API >[!NOTE] > -> The free API usage is in {% data variables.release-phases.public_preview %} and subject to change. To request access, [join the waitlist](https://github.com/marketplace/models/waitlist). +> The free API usage is in {% data variables.release-phases.public_preview %} and subject to change. {% data variables.product.company_short %} provides free API usage so that you can experiment with AI models in your own application. -To learn how to use a model in your application, go to [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace/models), then click **{% octicon "ai-model" aria-hidden="true" %} Models** in the sidebar. Click on a model's name, then click **{% octicon "command-palette" aria-hidden="true" %} Playground**. In the menu bar at the top of your chat window, click **{% octicon "code" aria-hidden="true" %} Code**. - The steps to use each model are similar. In general, you will need to: +{% data reusables.models.steps-to-open-model-playground %} + + The model opens in the model playground. + +1. Click the **Code** tab. 1. Optionally, use the language dropdown to select the programming language. 1. Optionally, use the SDK dropdown to select which SDK to use. @@ -67,7 +79,7 @@ You can save and share your progress in the playground with presets. Presets sav * Your parameters * Your chat history (optional) -To create a preset for your current context, select the **Preset: PRESET-NAME** {% octicon "triangle-down" aria-hidden="true" %} dropdown menu, then click **{% octicon "plus" aria-hidden="true" %} Create new preset**. You need to name your preset, and you can also choose to provide a preset description, include your chat history, and allow your preset to be shared. +To create a preset for your current context, select **Preset: PRESET-NAME** {% octicon "triangle-down" aria-hidden="true" %} at the top right of the playground, then click **{% octicon "plus" aria-hidden="true" %} Create new preset**. You need to name your preset, and you can also choose to provide a preset description, include your chat history, and allow your preset to be shared. There are two ways to load a preset: * Select the **Preset: PRESET-NAME** {% octicon "triangle-down" aria-hidden="true" %} dropdown menu, then click the preset you want to load. diff --git a/content/graphql/guides/using-the-graphql-api-for-discussions.md b/content/graphql/guides/using-the-graphql-api-for-discussions.md index 84f6b55bb60d..1f8f8b14ce19 100644 --- a/content/graphql/guides/using-the-graphql-api-for-discussions.md +++ b/content/graphql/guides/using-the-graphql-api-for-discussions.md @@ -2,7 +2,9 @@ title: Using the GraphQL API for Discussions intro: 'Learn how to use the {% data variables.product.prodname_discussions %} GraphQL API.' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' shortTitle: Use GraphQL for Discussions --- diff --git a/content/graphql/overview/rate-limits-and-node-limits-for-the-graphql-api.md b/content/graphql/overview/rate-limits-and-node-limits-for-the-graphql-api.md index deebb242896a..46623ad2b848 100644 --- a/content/graphql/overview/rate-limits-and-node-limits-for-the-graphql-api.md +++ b/content/graphql/overview/rate-limits-and-node-limits-for-the-graphql-api.md @@ -276,10 +276,6 @@ To avoid exceeding a rate limit, you should pause at least 1 second between muta You should also subscribe to webhook events instead of polling the API for data. For more information, see [AUTOTITLE](/webhooks). -{% ifversion audit-log-streaming %} - You can also stream the audit log in order to view API requests. This can help you troubleshoot integrations that are exceeding the rate limit. For more information, see [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise). {% endif %} - -{% endif %} diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md index 7ec3864ba3c3..73bec0a091b1 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md @@ -34,7 +34,7 @@ Types of {% data variables.projects.projects_v1_boards %}: To create a {% data variables.projects.projects_v1_board %} for your organization, you must be an organization member. Organization owners and people with {% data variables.projects.projects_v1_board %} admin permissions can customize access to the {% data variables.projects.projects_v1_board %}. -{% ifversion classic-project-visibility-permissions %}{% data reusables.projects.owners-can-limit-visibility-permissions %}{% endif %} +{% data reusables.projects.owners-can-limit-visibility-permissions %} {% endif %} diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md index f2aae0b95181..a109f0115437 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md @@ -17,8 +17,8 @@ allowTitleToDifferFromFilename: true {% data reusables.project-management.project-board-visibility %} > [!NOTE] -> {% ifversion classic-project-visibility-permissions %}{% data reusables.projects.owners-can-limit-visibility-permissions %} -> * {% endif %}When you make your {% data variables.projects.projects_v1_board %} public, organization members are given read access by default. You can give specific organization members write or admin permissions by giving access to teams they're on or by adding them to the {% data variables.projects.projects_v1_board %} as a collaborator. For more information, see [AUTOTITLE](/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization). +> {% data reusables.projects.owners-can-limit-visibility-permissions %} +> * When you make your {% data variables.projects.projects_v1_board %} public, organization members are given read access by default. You can give specific organization members write or admin permissions by giving access to teams they're on or by adding them to the {% data variables.projects.projects_v1_board %} as a collaborator. For more information, see [AUTOTITLE](/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization). 1. Navigate to the {% data variables.projects.projects_v1_board %} you want to make public or private. {% data reusables.project-management.click-menu %} diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md index 445b82bccf88..2f9d1d9891b8 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md @@ -59,13 +59,9 @@ You can also configure workflow automations to keep your {% data variables.proje {% data reusables.projects.classic-project-creation %} -{% ifversion classic-project-visibility-permissions %} - > [!NOTE] > {% data reusables.projects.owners-can-limit-visibility-permissions %} -{% endif %} - {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} diff --git a/content/issues/tracking-your-work-with-issues/about-issues.md b/content/issues/tracking-your-work-with-issues/about-issues.md index 50c8f5831eaa..61b37c2f06f8 100644 --- a/content/issues/tracking-your-work-with-issues/about-issues.md +++ b/content/issues/tracking-your-work-with-issues/about-issues.md @@ -54,11 +54,9 @@ To help contributors open meaningful issues that provide the information that yo You can @mention collaborators who have access to your repository in an issue to draw their attention to a comment. To link related issues in the same repository, you can type `#` followed by part of the issue title and then clicking the issue that you want to link. To communicate responsibility, you can assign issues. If you find yourself frequently typing the same comment, you can use saved replies. {% ifversion fpt or ghec %} See [AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax) and [AUTOTITLE](/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users). {% endif %} -{% ifversion discussions %} ## Comparing issues and discussions Some conversations are more suitable for {% data variables.product.prodname_discussions %}. {% data reusables.discussions.you-can-use-discussions %} For guidance on when to use an issue or a discussion, see [AUTOTITLE](/get-started/using-github/communicating-on-github). -{% ifversion converting-issues-to-discussions %}When a conversation in an issue is better suited for a discussion, you can convert the issue to a discussion.{% endif %} -{% endif %} +When a conversation in an issue is better suited for a discussion, you can convert the issue to a discussion. diff --git a/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md b/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md index 7ae8c8417eca..467fcf37ba89 100644 --- a/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md +++ b/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md @@ -97,8 +97,6 @@ You can open a new issue from a specific line or lines of code in a file or pull {% data reusables.repositories.assign-an-issue-as-project-maintainer %} {% data reusables.repositories.submit-new-issue %} -{% ifversion discussions %} - ## Creating an issue from discussion People with triage permission to a repository can create an issue from a discussion. @@ -115,8 +113,6 @@ When you create an issue from a discussion, the contents of the discussion post {% data reusables.repositories.assign-an-issue-as-project-maintainer %} {% data reusables.repositories.submit-new-issue %} -{% endif %} - {% ifversion projects-v2-create-issue-modal %} ## Creating an issue from a project diff --git a/content/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue.md b/content/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue.md index 3c090bd42abb..a11759f859e6 100644 --- a/content/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue.md +++ b/content/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue.md @@ -19,16 +19,16 @@ topics: shortTitle: Link PR to issue --- -> [!NOTE] -> The special keywords in a pull request description are interpreted when the pull request targets the repository's _default_ branch. However, if the PR's base is _any other branch_, then these keywords are ignored, no links are created and merging the PR has no effect on the issues. **If you want to link a pull request to an issue using a keyword, the PR must be on the default branch.** - ## About linked issues and pull requests -You can link an issue to a pull request manually or using a supported keyword in the pull request description. +You can link an issue to a pull request manually or using a supported keyword in the pull request description, that is, the summary text added by the author when they created the pull request. When you link a pull request to the issue the pull request addresses, collaborators can see that someone is working on the issue. -When you merge a linked pull request into the default branch of a repository, its linked issue is automatically closed. For more information about the default branch, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch). +When you merge a linked pull request into the **default branch** of a repository, its linked issue is automatically closed. For more information about the default branch, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch). + +> [!NOTE] +> The special keywords in a pull request description are interpreted only when the pull request targets the repository's _default_ branch. If the pull request targets _any other branch_, then these keywords are ignored, no links are created, and merging the PR has no effect on the issues. ## Linking a pull request to an issue using a keyword diff --git a/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/reclaiming-mannequins-for-github-enterprise-importer.md b/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/reclaiming-mannequins-for-github-enterprise-importer.md index cf032836b927..a28ae9dcbebf 100644 --- a/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/reclaiming-mannequins-for-github-enterprise-importer.md +++ b/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/reclaiming-mannequins-for-github-enterprise-importer.md @@ -53,6 +53,7 @@ The exact command you need to use depends on which extension of the {% data vari * [Reclaiming mannequins with the {% data variables.product.prodname_gei_cli_short %}](#reclaiming-mannequins-with-the-gei-extension) * [Reclaiming mannequins with the {% data variables.product.prodname_ado2gh_cli_short %}](#reclaiming-mannequins-with-the-ado2gh-extension) +* [Reclaiming mannequins with the {% data variables.product.prodname_bbs2gh_cli_short %}](#reclaiming-mannequins-with-the-bbs2gh-extension) #### Reclaiming mannequins with the {% data variables.product.prodname_gei_cli_short %} @@ -122,6 +123,40 @@ If your migration source is Azure DevOps, you can reclaim mannequins with the {% {% data reusables.enterprise-migration-tool.mannequin-reclaim-must-accept %} +#### Reclaiming mannequins with the {% data variables.product.prodname_bbs2gh_cli_short %} + +If your migration source is Bitbucket Server, you can reclaim mannequins with the {% data variables.product.prodname_bbs2gh_cli %}. + +* {% data reusables.enterprise-migration-tool.add-pat-to-reclaim-mannequins %} For {% data variables.product.pat_generic %} requirements, see [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-from-bitbucket-server-to-github-enterprise-cloud/managing-access-for-a-migration-from-bitbucket-server#required-scopes-for-personal-access-tokens). +* {% data reusables.enterprise-migration-tool.add-target-api-url %} + +{% data reusables.enterprise-migration-tool.create-csv-mannequins %} + + * To generate a CSV file with a list of mannequins for an organization, use the `gh bbs2gh generate-mannequin-csv` command, replacing DESTINATION with the destination organization and FILENAME with a file name for the resulting CSV file. + + {% data reusables.enterprise-migration-tool.include-reclaimed %} + + ```shell copy + gh bbs2gh generate-mannequin-csv --github-org DESTINATION --output FILENAME.csv + ``` + + {% data reusables.enterprise-migration-tool.edit-csv %} +1. To reclaim mannequins, use the `gh bbs2gh reclaim-mannequin` command. + + {% data reusables.enterprise-migration-tool.reclaim-bulk-csv %} + + ```shell copy + gh bbs2gh reclaim-mannequin --github-org DESTINATION --csv FILENAME.csv + ``` + + {% data reusables.enterprise-migration-tool.reclaim-individual-mannequin %} + + ```shell copy + gh bbs2gh reclaim-mannequin --github-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME + ``` + +{% data reusables.enterprise-migration-tool.mannequin-reclaim-must-accept %} + ### Reclaiming mannequins in your browser {% data reusables.profile.access_org %} diff --git a/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/troubleshooting-your-migration-with-github-enterprise-importer.md b/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/troubleshooting-your-migration-with-github-enterprise-importer.md index 22d8cd3d3e22..2cef5626cfae 100644 --- a/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/troubleshooting-your-migration-with-github-enterprise-importer.md +++ b/content/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/troubleshooting-your-migration-with-github-enterprise-importer.md @@ -81,7 +81,7 @@ First, try excluding releases from the migration by using the `--skip-releases` If that doesn't work, we'd recommend upgrading to {% data variables.product.prodname_ghe_server %} 3.8.0 or later. If you're unable to upgrade, another option is to generate your repository archives manually using `ghe-migrator`: -1. Generate a migration archive for your repository. You must only export one repository at a time. For instructions, see "[Exporting migration data from your enterprise]({% ifversion fpt or ghec %}/enterprise-server@latest{% endif %}/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-your-enterprise){% ifversion ghes %}."{% else %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% endif %} +1. Generate a migration archive for your repository. You must only export one repository at a time. For instructions, see [Exporting migration data from your enterprise]({% ifversion fpt or ghec %}/enterprise-server@latest{% endif %}/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-your-enterprise){% ifversion ghes %}.{% else %} in the {% data variables.product.prodname_ghe_server %} documentation.{% endif %} 1. Upload your migration archive to your choice of blob storage provider. 1. Generate a short-lived URL for your migration archive which is accessible to {% data variables.product.prodname_dotcom %}, such as an AWS S3 pre-signed URL or Azure Blob Storage SAS URL. 1. Call the `migrate-repo` command with the `--git-archive-url` and `--metadata-archive-url` flags both set to the URL of your archive from the previous step. diff --git a/content/migrations/using-github-enterprise-importer/migrating-between-github-products/migrating-repositories-from-github-enterprise-server-to-github-enterprise-cloud.md b/content/migrations/using-github-enterprise-importer/migrating-between-github-products/migrating-repositories-from-github-enterprise-server-to-github-enterprise-cloud.md index eee12e29249d..0f9cad1c8a98 100644 --- a/content/migrations/using-github-enterprise-importer/migrating-between-github-products/migrating-repositories-from-github-enterprise-server-to-github-enterprise-cloud.md +++ b/content/migrations/using-github-enterprise-importer/migrating-between-github-products/migrating-repositories-from-github-enterprise-server-to-github-enterprise-cloud.md @@ -211,7 +211,7 @@ For more information, see [Get an organization migration status](/rest/migration > [!NOTE] > If your migration moves to the `failed` state rather than the `exported` state, try starting the migration again. If the migration fails repeatedly, we recommend generating the archives using `ghe-migrator` instead of the API. > ->Follow the steps in "[Exporting migration data from your enterprise]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-your-enterprise)," adding only one repository to the migration. At the end of the process, you will have a single migration archive with your Git source and metadata, and you can move to step 6 in this article. +>Follow the steps in [Exporting migration data from your enterprise]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-your-enterprise), adding only one repository to the migration. At the end of the process, you will have a single migration archive with your Git source and metadata, and you can move to step 6 in this article. After the `state` of a migration moves to `exported`, you can fetch the migration's URL using the "Download an organization migration archive" API. diff --git a/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md b/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md index ab157f28c0b4..0730427ddeea 100644 --- a/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md @@ -123,7 +123,7 @@ To search for specific events, use the `action` qualifier in your query. Actions | {% ifversion fpt or ghec %} | | `repository_vulnerability_alerts` | Contains repository-level configuration activities for {% data variables.product.prodname_dependabot_alerts %}. | {% endif %} | -| {% ifversion custom-repository-roles %} | +| {% ifversion ghec or ghes %} | | `role` | Contains all activities related to [custom repository roles](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization). | {% endif %} | | {% ifversion ghes or ghec %} | diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md b/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md index dc543857c27c..66baaa209f71 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md @@ -36,7 +36,7 @@ For example, if an organization owner has given all organization members read pe ## {% data variables.projects.projects_v1_board_caps %} visibility -{% ifversion classic-project-visibility-permissions %}{% data reusables.projects.owners-can-limit-visibility-permissions %}{% endif %} +{% data reusables.projects.owners-can-limit-visibility-permissions %} {% data reusables.project-management.project-board-visibility %} You can change the {% data variables.projects.projects_v1_board %}'s visibility from private to public and back again. For more information, see [AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility). diff --git a/content/organizations/managing-oauth-access-to-your-organizations-data/about-oauth-app-access-restrictions.md b/content/organizations/managing-oauth-access-to-your-organizations-data/about-oauth-app-access-restrictions.md index 050825348c59..1c24860a48f9 100644 --- a/content/organizations/managing-oauth-access-to-your-organizations-data/about-oauth-app-access-restrictions.md +++ b/content/organizations/managing-oauth-access-to-your-organizations-data/about-oauth-app-access-restrictions.md @@ -19,8 +19,7 @@ shortTitle: '{% data variables.product.prodname_oauth_app %} restrictions' {% data reusables.apps.oauth-app-access-restrictions %} -{% ifversion limit-app-access-requests %} -{% data reusables.organizations.restricted-app-access-requests %}{% endif %} +{% data reusables.organizations.restricted-app-access-requests %} Even if you restrict {% data variables.product.prodname_oauth_apps %} access in your organization, users can still authorize internal {% data variables.product.prodname_oauth_apps %} apps and use them to access data from the organization. For more information, see [AUTOTITLE](/apps/oauth-apps/using-oauth-apps/internal-oauth-apps). diff --git a/content/organizations/managing-oauth-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md b/content/organizations/managing-oauth-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md index b1656a8d5553..16f77317046b 100644 --- a/content/organizations/managing-oauth-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md +++ b/content/organizations/managing-oauth-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md @@ -16,8 +16,7 @@ shortTitle: Approve {% data variables.product.prodname_oauth_app %} access --- When {% data variables.product.prodname_oauth_app %} access restrictions are enabled, organization members and outside collaborators must [request approval](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/requesting-organization-approval-for-oauth-apps) from an organization owner before they can authorize an {% data variables.product.prodname_oauth_app %} that has access to the organization's resources. -{% ifversion limit-app-access-requests %} -{% data reusables.organizations.restricted-app-access-requests %}{% endif %} +{% data reusables.organizations.restricted-app-access-requests %} {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} diff --git a/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md b/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md index 40c436b01101..8d800f8cde68 100644 --- a/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md +++ b/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md @@ -2,7 +2,9 @@ title: Allowing project visibility changes in your organization intro: 'Organization owners can allow members with admin permissions to adjust the visibility of {% data variables.projects.projects_v2_and_v1 %} in their organization.' versions: - feature: classic-project-visibility-permissions-or-projects-v2 + fpt: '*' + ghes: '*' + ghec: '*' topics: - Organizations - Projects diff --git a/content/organizations/managing-organization-settings/creating-an-announcement-banner-for-your-organization.md b/content/organizations/managing-organization-settings/creating-an-announcement-banner-for-your-organization.md index 3d7111b3f3fe..35b9b8554522 100644 --- a/content/organizations/managing-organization-settings/creating-an-announcement-banner-for-your-organization.md +++ b/content/organizations/managing-organization-settings/creating-an-announcement-banner-for-your-organization.md @@ -3,7 +3,8 @@ title: Creating an announcement banner for your organization shortTitle: Create an announcement banner intro: Organization owners can create announcement banners for the organization. versions: - feature: custom-banner-messages + ghes: '*' + ghec: '*' type: how_to topics: - Maintenance diff --git a/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md b/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md index c2da6e554cf9..d29dc52582e6 100644 --- a/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md +++ b/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md @@ -98,7 +98,7 @@ You can configure this behavior for an organization using the procedure below. M {% data reusables.actions.workflows.required-workflow-beta %} -You can configure required workflows to run in all or selected repositories in an organization where you are an owner. Required workflows are triggered by {% ifversion actions-required-workflow-improvements %}`pull_request` and `pull_request_target` default events{% else %}pull requests{% endif %} and must pass before a pull request can be merged. For more information, see [AUTOTITLE](/actions/using-workflows/required-workflows). +You can configure required workflows to run in all or selected repositories in an organization where you are an owner. Required workflows are triggered by `pull_request` and `pull_request_target` default events and must pass before a pull request can be merged. For more information, see [AUTOTITLE](/actions/using-workflows/required-workflows). ### Prerequisites @@ -125,7 +125,7 @@ Note the following restrictions and behaviors for the target repositories: {% data reusables.organizations.settings-sidebar-actions-general %} 1. To the right of "Required Workflows", click **Add workflow**. -1. Under "Required workflow", use the drop-down menu to select the repository that contains the workflow. Then, enter the path to the workflow in the text field. {% ifversion actions-required-workflow-improvements %}You can reference any branch, tag, or commit SHA from the repository containing the workflow file using the `{path}@{ref}` syntax.{% endif %} +1. Under "Required workflow", use the drop-down menu to select the repository that contains the workflow. Then, enter the path to the workflow in the text field. You can reference any branch, tag, or commit SHA from the repository containing the workflow file using the `{path}@{ref}` syntax. 1. Under "Apply to repositories...", use the drop-down menu to select which repositories the required workflow applies to. Select **All repositories** to apply the required workflow to all repositories in your organization, or **Selected repositories** to choose which repositories it will apply to. @@ -160,9 +160,7 @@ You can set the default permissions for the `GITHUB_TOKEN` in the settings for y ### Configuring the default `GITHUB_TOKEN` permissions -{% ifversion actions-default-workflow-permissions-restrictive %} By default, when you create a new organization,{% ifversion ghec or ghes %} the setting is inherited from what is configured in the enterprise settings.{% else %} `GITHUB_TOKEN` only has read access for the `contents` and `packages` scopes.{% endif %} -{% endif %} {% data reusables.profile.access_profile %} {% data reusables.profile.access_org %} @@ -171,26 +169,22 @@ By default, when you create a new organization,{% ifversion ghec or ghes %} the {% data reusables.actions.workflows.github-token-access %} 1. Click **Save** to apply the settings. -{% ifversion allow-actions-to-approve-pr %} - -### Preventing {% data variables.product.prodname_actions %} from {% ifversion allow-actions-to-approve-pr-with-ent-repo %}creating or {% endif %}approving pull requests +### Preventing {% data variables.product.prodname_actions %} from creating or approving pull requests {% data reusables.actions.workflow-pr-approval-permissions-intro %} -By default, when you create a new organization, workflows are not allowed to {% ifversion allow-actions-to-approve-pr-with-ent-repo %}create or {% endif %}approve pull requests. +By default, when you create a new organization, workflows are not allowed to create or approve pull requests. {% data reusables.profile.access_profile %} {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.settings-sidebar-actions-general %} -1. Under "Workflow permissions", use the **Allow GitHub Actions to {% ifversion allow-actions-to-approve-pr-with-ent-repo %}create and {% endif %}approve pull requests** setting to configure whether `GITHUB_TOKEN` can {% ifversion allow-actions-to-approve-pr-with-ent-repo %}create and {% endif %}approve pull requests. +1. Under "Workflow permissions", use the **Allow GitHub Actions to create and approve pull requests** setting to configure whether `GITHUB_TOKEN` can create and approve pull requests. 1. Click **Save** to apply the settings. -{% endif %} - ## 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. +Organization administrators can view {% ifversion ghes %}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 @@ -202,7 +196,7 @@ For each repository in your organization, you can see how much cache storage a r 1. In the left sidebar, click **{% octicon "play" aria-hidden="true" %} 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 %} +{% ifversion ghes %} ### Configuring {% data variables.product.prodname_actions %} cache storage for your organization diff --git a/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md b/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md index b9b002d00c24..28bb9498c7b7 100644 --- a/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md +++ b/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md @@ -3,7 +3,9 @@ title: Enabling or disabling GitHub Discussions for an organization intro: 'You can use {% data variables.product.prodname_discussions %} in an organization as a place for your organization to have conversations that aren''t specific to a single repository within your organization.' permissions: 'Organization owners can enable {% data variables.product.prodname_discussions %} for their organization.' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' topics: - Organizations shortTitle: Organization discussions diff --git a/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md b/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md index e51bdadacc55..a47424e41dd7 100644 --- a/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md @@ -5,7 +5,9 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/managing-discussion-creation-for-repositories-in-your-organization permissions: Organization owners can manage discussion creation for repositories owned by the organization. versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md b/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md index a77bbd9dd15c..f4c145018038 100644 --- a/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md @@ -2,7 +2,9 @@ title: Managing the commit signoff policy for your organization intro: 'You can require users to automatically sign off all commits they make in {% data variables.product.product_name %}''s web interface to repositories owned by your organization.' versions: - feature: commit-signoffs + fpt: '*' + ghec: '*' + ghes: '*' permissions: Organization owners can require all commits to repositories owned by the organization be signed off by the commit author. topics: - Organizations diff --git a/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md b/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md index 181d0ccb738f..0e6de09c0aa2 100644 --- a/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md +++ b/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md @@ -27,7 +27,7 @@ By default, anyone with admin access to a repository can invite outside collabor {% endif %} -{% ifversion ghec %}If your organization is owned by an enterprise account, you{% else %}You{% endif %} may not be able to configure this setting for your organization, if an enterprise owner has set a policy at the enterprise level. For more information, see "[Enforcing repository management policies in your enterprise]{% ifversion ghec %}(/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-collaborators-to-repositories)"{% else %}(/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories){% endif %}." +{% ifversion ghec %}If your organization is owned by an enterprise account, you{% else %}You{% endif %} may not be able to configure this setting for your organization, if an enterprise owner has set a policy at the enterprise level. For more information, see [Enforcing repository management policies in your enterprise]{% ifversion ghec %}(/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-collaborators-to-repositories){% else %}(/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories){% endif %}. {% data reusables.organizations.outside-collaborators-use-seats %} diff --git a/content/organizations/managing-programmatic-access-to-your-organization/about-programmatic-access-in-your-organization.md b/content/organizations/managing-programmatic-access-to-your-organization/about-programmatic-access-in-your-organization.md index 238f0a0a429f..78f84356120f 100644 --- a/content/organizations/managing-programmatic-access-to-your-organization/about-programmatic-access-in-your-organization.md +++ b/content/organizations/managing-programmatic-access-to-your-organization/about-programmatic-access-in-your-organization.md @@ -22,7 +22,7 @@ versions: Organization owners can install {% data variables.product.prodname_github_apps %} on their organization. Repository admins can also install a {% data variables.product.prodname_github_app %} on the organization if the app does not request organization resources and if they only grant the app access to repositories where they are an admin. Organization members can submit a request for their organization owner to install a {% data variables.product.prodname_github_app %} on the organization. For more information, see {% ifversion fpt or ghec %}[AUTOTITLE](/apps/using-github-apps/installing-an-app-in-your-organization).{% else %}[AUTOTITLE](/apps/maintaining-github-apps/installing-github-apps).{% endif %} -{% ifversion limit-app-access-requests %}Organization owners can prevent outside collaborators from requesting {% data variables.product.prodname_github_apps %} or from installing a {% data variables.product.prodname_github_app %} even if the collaborator is a repository admin. For more information, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/limiting-oauth-app-and-github-app-access-requests).{% endif %} +Organization owners can prevent outside collaborators from requesting {% data variables.product.prodname_github_apps %} or from installing a {% data variables.product.prodname_github_app %} even if the collaborator is a repository admin. For more information, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/limiting-oauth-app-and-github-app-access-requests). Organization owners can review the {% data variables.product.prodname_github_apps %} that are installed on their organization and modify the repositories that each app can access. For more information, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/reviewing-github-apps-installed-in-your-organization). diff --git a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/converting-an-organization-member-to-an-outside-collaborator.md b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/converting-an-organization-member-to-an-outside-collaborator.md index b29635d4581d..0d9d8dbb047d 100644 --- a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/converting-an-organization-member-to-an-outside-collaborator.md +++ b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/converting-an-organization-member-to-an-outside-collaborator.md @@ -23,7 +23,7 @@ shortTitle: Convert member to collaborator You can convert a member of an organization to an outside collaborator. For more information about outside collaborators, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/adding-outside-collaborators-to-repositories-in-your-organization). -{% ifversion fpt or ghec %}If the organization is owned by an enterprise, converting{% elsif ghes %}Converting{% endif %} an organization member to an outside collaborator may be restricted. For more information, see "[Enforcing repository management policies in your enterprise]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-{% ifversion fpt or ghec %}outside-{% endif %}collaborators-to-repositories){% ifversion ghec or ghes %}."{% elsif fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} +{% ifversion fpt or ghec %}If the organization is owned by an enterprise, converting{% elsif ghes %}Converting{% endif %} an organization member to an outside collaborator may be restricted. For more information, see [Enforcing repository management policies in your enterprise]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-{% ifversion fpt or ghec %}outside-{% endif %}collaborators-to-repositories){% ifversion ghec or ghes %}.{% elsif fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} {% data reusables.organizations.outside-collaborators-use-seats %} {% data reusables.organizations.outside_collaborator_forks %} diff --git a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/about-custom-repository-roles.md b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/about-custom-repository-roles.md index 72742a5cff76..0b62b9a0eaed 100644 --- a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/about-custom-repository-roles.md +++ b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/about-custom-repository-roles.md @@ -2,7 +2,8 @@ title: About custom repository roles intro: You can more granularly control access to your organization's repositories with custom repository roles. versions: - feature: custom-repository-roles + ghes: '*' + ghec: '*' topics: - Organizations - Teams @@ -19,16 +20,12 @@ To perform any actions on {% data variables.product.product_name %}, such as cre Within an organization, you can assign roles at the organization, team, and repository level. For more information about the different levels of roles, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization). -You can have more granular control over the permissions you grant at the repository level by creating up to {% ifversion authz-increased-custom-repo-roles %}five {% else %}three {% endif %} custom repository roles. {% data reusables.organizations.about-custom-repo-roles %} For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization). +You can have more granular control over the permissions you grant at the repository level by creating up to five custom repository roles. {% data reusables.organizations.about-custom-repo-roles %} For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization). After you create a custom role, anyone with admin access to a repository can assign the role to an individual or team. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-an-individuals-access-to-an-organization-repository) and [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-team-access-to-an-organization-repository). -{% ifversion custom-repo-role-api %} - You can also use the REST API to create and manage custom repository roles. For more information, see [AUTOTITLE](/rest/orgs/custom-roles). -{% endif %} - {% ifversion custom-org-roles %} Custom repository roles manage access to specific repositories in your organization. To {% ifversion org-custom-role-with-repo-permissions %}grant access to all repositories, and to {% endif %}control access to your organization's administration settings, you can use custom organization roles. See [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles). diff --git a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization.md b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization.md index 7a3879de291e..5f22c3161dc5 100644 --- a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization.md +++ b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization.md @@ -3,7 +3,8 @@ title: Managing custom repository roles for an organization intro: 'Learn how to create, edit, or delete custom repository roles for your organization.' permissions: Organization owners. versions: - feature: custom-repository-roles + ghes: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization.md b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization.md index b53a7cc60334..6d7a92a8c0da 100644 --- a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization.md +++ b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization.md @@ -120,7 +120,7 @@ Some of the features listed below are limited to organizations using {% data var | {% ifversion repo-rules %} | | View [rulesets for a repository](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets) | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | | {% endif %} | -| [Push to protected branches](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches) | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | +| [Push to protected branches](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches)
    {% ifversion repo-rules %}Doesn't apply to rulesets as these have a different bypass model. See [Granting bypass permissions for your branch or tag ruleset](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#granting-bypass-permissions-for-your-branch-or-tag-ruleset).{% endif %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | | Merge pull requests on protected branches, even if there are no approving reviews | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | | {% ifversion ghes < 3.16 %} | | Create tags that match a [tag protection rule](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules) | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | diff --git a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/setting-base-permissions-for-an-organization.md b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/setting-base-permissions-for-an-organization.md index b4d697d4f463..f94b067e809e 100644 --- a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/setting-base-permissions-for-an-organization.md +++ b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/setting-base-permissions-for-an-organization.md @@ -24,7 +24,7 @@ You can set base permissions that apply to all members of an organization when a If someone with admin access to an organization's repository grants a member a higher level of access for the repository, the higher level of access overrides the base permission. -{% ifversion custom-repository-roles %} +{% ifversion ghec or ghes %} If you've created a custom repository role with an inherited role that is lower access than your organization's base permissions, any members assigned to that role will default to the organization's base permissions rather than the inherited role. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization). {% endif %} diff --git a/content/packages/index.md b/content/packages/index.md index 83a912082e79..1d364c104fdc 100644 --- a/content/packages/index.md +++ b/content/packages/index.md @@ -12,11 +12,11 @@ featuredLinks: - /packages/learn-github-packages/installing-a-package popular: - /packages/working-with-a-github-packages-registry/working-with-the-npm-registry - - '{% ifversion docker-ghcr-enterprise-migration %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' + - '{% ifversion ghes %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' - /packages/learn-github-packages - /packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry guideCards: - - '{% ifversion docker-ghcr-enterprise-migration %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' + - '{% ifversion ghes %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-container-registry - '{% ifversion packages-npm-v2 %}/packages/working-with-a-github-packages-registry/working-with-the-npm-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry diff --git a/content/packages/learn-github-packages/about-permissions-for-github-packages.md b/content/packages/learn-github-packages/about-permissions-for-github-packages.md index 08708e1cf0a6..d99086095eed 100644 --- a/content/packages/learn-github-packages/about-permissions-for-github-packages.md +++ b/content/packages/learn-github-packages/about-permissions-for-github-packages.md @@ -19,7 +19,7 @@ The following {% data variables.product.prodname_registry %} registries support * {% data variables.product.prodname_container_registry %} {%- ifversion packages-npm-v2 %} -* npm registry +* npm registry {%- endif %} {%- ifversion packages-nuget-v2 %} * NuGet registry @@ -38,7 +38,7 @@ The following {% data variables.product.prodname_registry %} registries **only** * Docker registry (`docker.pkg.github.com`) {%- endif %} {%- ifversion packages-npm-v2 %}{% else %} -* npm registry +* npm registry {%- endif %} * Apache Maven registry * Gradle registry @@ -49,7 +49,7 @@ The following {% data variables.product.prodname_registry %} registries **only** * RubyGems registry {%- endif %} -For {% ifversion ghes %}the {% data variables.product.prodname_container_registry %}{% else %}other registries{% endif %}, you can choose to allow packages to be scoped to a user or an organization, or linked to a repository. {% ifversion docker-ghcr-enterprise-migration %}For information about migration to the {% data variables.product.prodname_container_registry %}, see [AUTOTITLE](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry).{% endif %} +For {% ifversion ghes %}the {% data variables.product.prodname_container_registry %}{% else %}other registries{% endif %}, you can choose to allow packages to be scoped to a user or an organization, or linked to a repository. {% ifversion ghes %}For information about migration to the {% data variables.product.prodname_container_registry %}, see [AUTOTITLE](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry).{% endif %} ## Visibility and access permissions for packages diff --git a/content/packages/learn-github-packages/deleting-and-restoring-a-package.md b/content/packages/learn-github-packages/deleting-and-restoring-a-package.md index 2fcf4da0c4c2..9cc8d0726299 100644 --- a/content/packages/learn-github-packages/deleting-and-restoring-a-package.md +++ b/content/packages/learn-github-packages/deleting-and-restoring-a-package.md @@ -19,10 +19,10 @@ shortTitle: Delete & restore a package ## Package deletion and restoration support on {% data variables.product.prodname_dotcom %} On {% data variables.product.prodname_dotcom %} if you have the required access, you can delete: -* an entire private package -* an entire public package, if there's not more than 5000 downloads of any version of the package -* a specific version of a private package -* a specific version of a public package, if the package version doesn't have more than 5,000 downloads +* An entire private package +* An entire public package, if there's not more than 5000 downloads of any version of the package +* A specific version of a private package +* A specific version of a public package, if the package version doesn't have more than 5,000 downloads > [!NOTE] > * You cannot delete a public package if any version of the package has more than 5,000 downloads. In this scenario, contact us through the {% data variables.contact.contact_support_portal %} for further assistance. diff --git a/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md b/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md index e0634257703f..9c277f2eef4f 100644 --- a/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md +++ b/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md @@ -1,6 +1,6 @@ --- title: Migrating to the Container registry from the Docker registry -intro: '{% ifversion docker-ghcr-enterprise-migration %}An enterprise owner can{% else %}{% data variables.product.company_short %} will{% endif %} migrate Docker images previously stored in the Docker registry on {% data variables.product.github %} to the {% data variables.product.prodname_container_registry %}.' +intro: '{% ifversion ghes %}An enterprise owner can{% else %}{% data variables.product.company_short %} will{% endif %} migrate Docker images previously stored in the Docker registry on {% data variables.product.github %} to the {% data variables.product.prodname_container_registry %}.' product: '{% data reusables.gated-features.packages %}' redirect_from: - /packages/getting-started-with-github-container-registry/migrating-to-github-container-registry-for-docker-images @@ -9,7 +9,7 @@ redirect_from: versions: fpt: '*' ghec: '*' - feature: docker-ghcr-enterprise-migration + ghes: '*' shortTitle: Migration to Container registry topics: - Containers @@ -25,9 +25,9 @@ topics: ## About migration from the Docker registry -{% data reusables.package_registry.container-registry-replaces-docker-registry %} If you've stored Docker images in the Docker registry, {% ifversion docker-ghcr-enterprise-migration %}an enterprise owner{% else %}{% data variables.product.company_short %}{% endif %} will gradually migrate the images to the {% data variables.product.prodname_container_registry %}. No action is required on your part. +{% data reusables.package_registry.container-registry-replaces-docker-registry %} If you've stored Docker images in the Docker registry, {% ifversion ghes %}an enterprise owner{% else %}{% data variables.product.company_short %}{% endif %} will gradually migrate the images to the {% data variables.product.prodname_container_registry %}. No action is required on your part. -{% ifversion docker-ghcr-enterprise-migration %} +{% ifversion ghes %} > [!NOTE] > {% data reusables.package_registry.container-registry-ghes-migration-availability %} For more information about finding the version of {% data variables.product.product_name %} that you use, see [AUTOTITLE](/get-started/learning-about-github/about-versions-of-github-docs#github-enterprise-server). @@ -53,9 +53,7 @@ After migration, you'll no longer be able to use the GraphQL API to query for pa For more information about billing for the {% data variables.product.prodname_container_registry %}, see [AUTOTITLE](/billing/managing-billing-for-github-packages/about-billing-for-github-packages). -{% endif %} - -{% ifversion docker-ghcr-enterprise-migration %} +{% else %} ## Further reading diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md index eb971e2eeb29..f44cbde6f1e1 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md @@ -58,9 +58,9 @@ This registry supports granular permissions. {% data reusables.package_registry. {% data reusables.package_registry.required-scopes %} -You can authenticate to {% data variables.product.prodname_registry %} with npm by either editing your per-user _~/.npmrc_ file to include your {% data variables.product.pat_v1 %} or by logging in to npm on the command line using your username and {% data variables.product.pat_generic %}. +You can authenticate to {% data variables.product.prodname_registry %} with npm by either editing your per-user `~/.npmrc` file to include your {% data variables.product.pat_v1 %} or by logging in to npm on the command line using your username and {% data variables.product.pat_generic %}. -To authenticate by adding your {% data variables.product.pat_v1 %} to your _~/.npmrc_ file, edit the _~/.npmrc_ file for your project to include the following line, replacing {% ifversion ghes %}HOSTNAME with the host name of {% data variables.location.product_location %} and {% endif %}TOKEN with your {% data variables.product.pat_generic %}. Create a new _~/.npmrc_ file if one doesn't exist. +To authenticate by adding your {% data variables.product.pat_v1 %} to your `~/.npmrc` file, edit the `~/.npmrc` file for your project to include the following line, replacing {% ifversion ghes %}HOSTNAME with the host name of {% data variables.location.product_location %} and {% endif %}TOKEN with your {% data variables.product.pat_generic %}. Create a new `~/.npmrc` file if one doesn't exist. {% ifversion ghes %} If your instance has subdomain isolation enabled: @@ -137,9 +137,9 @@ You can set up the scope mapping for your project using either a local `.npmrc` {% data reusables.package_registry.viewing-packages %} -### Publishing a package using a local _.npmrc_ file +### Publishing a package using a local `.npmrc` file -You can use an _.npmrc_ file to configure the scope mapping for your project. In the _.npmrc_ file, use the {% data variables.product.prodname_registry %} URL and account owner so {% data variables.product.prodname_registry %} knows where to route package requests. Using an _.npmrc_ file prevents other developers from accidentally publishing the package to npmjs.org instead of {% data variables.product.prodname_registry %}. +You can use an `.npmrc` file to configure the scope mapping for your project. In the `.npmrc` file, use the {% data variables.product.prodname_registry %} URL and account owner so {% data variables.product.prodname_registry %} knows where to route package requests. Using an `.npmrc` file prevents other developers from accidentally publishing the package to npmjs.org instead of {% data variables.product.prodname_registry %}. {% data reusables.package_registry.authenticate-step %} {% data reusables.package_registry.create-npmrc-owner-step %} @@ -194,7 +194,7 @@ You can install packages from {% data variables.product.prodname_registry %} by By default, you can add packages from one organization. For more information, see [Installing packages from other organizations](#installing-packages-from-other-organizations). -You also need to add the _.npmrc_ file to your project so that all requests to install packages will go through {% data variables.product.prodname_registry %}. When you route all package requests through {% data variables.product.prodname_registry %}, you can use both scoped and unscoped packages from _npmjs.org_. For more information, see [npm-scope](https://docs.npmjs.com/misc/scope) in the npm documentation. +You also need to add the `.npmrc` file to your project so that all requests to install packages will go through {% data variables.product.prodname_registry %}. When you route all package requests through {% data variables.product.prodname_registry %}, you can use both scoped and unscoped packages from _npmjs.org_. For more information, see [npm-scope](https://docs.npmjs.com/misc/scope) in the npm documentation. {% data reusables.package_registry.authenticate-step %} {% data reusables.package_registry.create-npmrc-owner-step %} @@ -223,7 +223,7 @@ You also need to add the _.npmrc_ file to your project so that all requests to i ### Installing packages from other organizations -By default, you can only use {% data variables.product.prodname_registry %} packages from one organization. If you'd like to route package requests to multiple organizations and users, you can add additional lines to your _.npmrc_ file, replacing {% ifversion ghes %}`HOSTNAME` with the host name of {% data variables.location.product_location %} and {% endif %}`NAMESPACE` with the name of the personal account or organization {% ifversion packages-npm-v2 %}to which the package is scoped{% else %}that owns the repository containing the project{% endif %}. +By default, you can only use {% data variables.product.prodname_registry %} packages from one organization. If you'd like to route package requests to multiple organizations and users, you can add additional lines to your `.npmrc` file, replacing {% ifversion ghes %}`HOSTNAME` with the host name of {% data variables.location.product_location %} and {% endif %}`NAMESPACE` with the name of the personal account or organization {% ifversion packages-npm-v2 %}to which the package is scoped{% else %}that owns the repository containing the project{% endif %}. {% ifversion ghes %} If your instance has subdomain isolation enabled: diff --git a/content/pages/getting-started-with-github-pages/about-github-pages.md b/content/pages/getting-started-with-github-pages/about-github-pages.md index 5fe9a21bb32b..124da7cc4d53 100644 --- a/content/pages/getting-started-with-github-pages/about-github-pages.md +++ b/content/pages/getting-started-with-github-pages/about-github-pages.md @@ -10,6 +10,7 @@ redirect_from: - /articles/should-i-rename-usernamegithubcom-repositories-to-usernamegithubio - /articles/about-github-pages - /github/working-with-github-pages/about-github-pages + - /early-access/github/articles/managing-your-disabled-github-pages-site product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' @@ -28,7 +29,7 @@ You can host your site on {% data variables.product.prodname_dotcom %}'s `github {% endif %} {% ifversion fpt or ghec %} -{% data reusables.pages.about-private-publishing %} For more information, see "[Changing the visibility of your {% data variables.product.prodname_pages %} site]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +{% data reusables.pages.about-private-publishing %} For more information, see [Changing the visibility of your {% data variables.product.prodname_pages %} site]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} {% endif %} To get started, see [AUTOTITLE](/pages/getting-started-with-github-pages/creating-a-github-pages-site). @@ -117,7 +118,7 @@ Using {% data variables.product.prodname_pages %} to create a copy of an existin {% data variables.product.prodname_pages %} sites are subject to the following usage limits: -* {% data variables.product.prodname_pages %} source repositories have a recommended limit of 1 GB.{% ifversion fpt or ghec %} For more information, see [AUTOTITLE](/repositories/working-with-files/managing-large-files/about-large-files-on-github#file-and-repository-size-limitations){% endif %} +* {% data variables.product.prodname_pages %} source repositories have a recommended limit of 1 GB.{% ifversion fpt or ghec %} For more information, see [AUTOTITLE](/repositories/working-with-files/managing-large-files/about-large-files-on-github#file-and-repository-size-limitations){% endif %}. * Published {% data variables.product.prodname_pages %} sites may be no larger than 1 GB. * {% data variables.product.prodname_pages %} deployments will timeout if they take longer than 10 minutes. {% ifversion fpt or ghec %} diff --git a/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md b/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md index 53741c38af94..40a407842b71 100644 --- a/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md +++ b/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md @@ -46,7 +46,7 @@ If you enable HTTPS for your {% data variables.product.prodname_pages %} site bu To remove your site's mixed content, make sure all your assets are served over HTTPS by changing `http://` to `https://` in your site's HTML. Assets are commonly found in the following locations: -* If your site uses Jekyll, your HTML files will probably be found in the __layouts_ folder. +* If your site uses Jekyll, your HTML files will probably be found in the `_layouts` folder. * CSS is usually found in the `` section of your HTML file. * JavaScript is usually found in the `` section or just before the closing `` tag. * Images are often found in the `` section. diff --git a/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md b/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md index 53fe3929bb37..e2a6314aec56 100644 --- a/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md +++ b/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md @@ -18,7 +18,7 @@ If the repository for your {% data variables.product.prodname_pages %} site cont You can only use submodules that point to public repositories, because the {% data variables.product.prodname_pages %} server cannot access private repositories. -Use the `https://` read-only URL for your submodules, including nested submodules. You can make this change in your _.gitmodules_ file. +Use the `https://` read-only URL for your submodules, including nested submodules. You can make this change in your `.gitmodules` file. ## Further reading diff --git a/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md b/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md index 03d8cbb022b5..734b229c3f92 100644 --- a/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md +++ b/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md @@ -25,10 +25,10 @@ People with write permissions for a repository can add a theme to a {% data vari {% data reusables.pages.navigate-site-repo %} {% data reusables.pages.navigate-publishing-source %} -1. Navigate to __config.yml_. +1. Navigate to `_config.yml`. {% data reusables.repositories.edit-file %} 1. Add a new line to the file for the theme name. - * To use a supported theme, type `theme: THEME-NAME`, replacing _THEME-NAME_ with the name of the theme as shown in the `_config.yml` of the theme's repository (most themes follow a `jekyll-theme-NAME` naming convention). For a list of supported themes, see [Supported themes](https://pages.github.com/themes/) on the {% data variables.product.prodname_pages %} site. For example, to select the Minimal theme, type `theme: jekyll-theme-minimal`. + * To use a supported theme, type `theme: THEME-NAME`, replacing THEME-NAME with the name of the theme as shown in the `_config.yml` of the theme's repository (most themes follow a `jekyll-theme-NAME` naming convention). For a list of supported themes, see [Supported themes](https://pages.github.com/themes/) on the {% data variables.product.prodname_pages %} site. For example, to select the Minimal theme, type `theme: jekyll-theme-minimal`. * To use any other Jekyll theme hosted on {% data variables.product.prodname_dotcom %}, type `remote_theme: THEME-NAME`, replacing THEME-NAME with the name of the theme as shown in the README of the theme's repository. {% data reusables.files.write_commit_message %} {% data reusables.files.choose-commit-email %} @@ -43,7 +43,7 @@ People with write permissions for a repository can add a theme to a {% data vari {% data reusables.pages.navigate-site-repo %} {% data reusables.pages.navigate-publishing-source %} -1. Create a new file called _/assets/css/style.scss_. +1. Create a new file called `/assets/css/style.scss`. 1. Add the following content to the top of the file: ```scss @@ -61,12 +61,12 @@ People with write permissions for a repository can add a theme to a {% data vari {% data reusables.pages.theme-customization-help %} -1. On {% data variables.product.prodname_dotcom %}, navigate to your theme's source repository. For example, the source repository for Minimal is https://github.com/pages-themes/minimal. -1. In the __layouts_ folder, navigate to your theme's _default.html_ file. +1. On {% data variables.product.prodname_dotcom %}, navigate to your theme's source repository. For example, the source repository for Minimal is `https://github.com/pages-themes/minimal`. +1. In the `_layouts` folder, navigate to your theme's `_default.html` file. 1. Copy the contents of the file. {% data reusables.pages.navigate-site-repo %} {% data reusables.pages.navigate-publishing-source %} -1. Create a file called __layouts/default.html_. +1. Create a file called `_layouts/default.html`. 1. Paste the default layout content you copied earlier. 1. Customize the layout as you'd like. diff --git a/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md b/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md index dfd555912433..16c5b62fc1c1 100644 --- a/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md +++ b/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md @@ -24,25 +24,14 @@ topics: ### Merge message for a squash merge -{% ifversion default-merge-squash-commit-message %} When you squash and merge, {% data variables.product.prodname_dotcom %} generates a default commit message, which you can edit. Depending on how the repository is configured and the number of commits in the pull request, not including merge commits, this message may include the pull request title, pull request description, or information about the commits. -{% else %} -When you squash and merge, {% data variables.product.prodname_dotcom %} generates a default commit message, which you can edit. The default message depends on the number of commits in the pull request, not including merge commits. | Number of commits | Summary | Description | | ----------------- | ------- | ----------- | | One commit | The title of the commit message for the single commit, followed by the pull request number | The body text of the commit message for the single commit | | More than one commit | The pull request title, followed by the pull request number | A list of the commit messages for all of the squashed commits, in date order | -{% endif %} - -| Number of commits | Summary | Description | -| ----------------- | ------- | ----------- | -| One commit | The title of the commit message for the single commit, followed by the pull request number | The body text of the commit message for the single commit | -| More than one commit | The pull request title, followed by the pull request number | A list of the commit messages for all of the squashed commits, in date order | - -{% ifversion default-merge-squash-commit-message %} -People with maintainer or admin access to a repository can configure their repository's default merge message for all squashed commits to use the pull request title, the pull request title and commit details, or the pull request title and description. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests).{% endif %} +People with maintainer or admin access to a repository can configure their repository's default merge message for all squashed commits to use the pull request title, the pull request title and commit details, or the pull request title and description. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests). ### Squashing and merging a long-running branch diff --git a/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md b/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md index 2461808b870a..4c1538949aeb 100644 --- a/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md +++ b/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md @@ -55,7 +55,7 @@ Now when you merge the `feature2` pull request, it'll be merged into the `main` ## Working with protected branches -Repository administrators {% ifversion edit-repository-rules %}or custom roles with the "edit repository rules" permission {% endif %}can enable protections on a branch. If you're working on a branch that's protected, you won't be able to delete or force push to the branch. Repository administrators can additionally enable several other protected branch settings to enforce various workflows before a branch can be merged. +Repository administrators or custom roles with the "edit repository rules" permission can enable protections on a branch. If you're working on a branch that's protected, you won't be able to delete or force push to the branch. Repository administrators can additionally enable several other protected branch settings to enforce various workflows before a branch can be merged. > [!NOTE] > If you're a repository administrator, you can merge pull requests on branches with branch protections enabled even if the pull request does not meet the requirements, unless branch protections have been set to "Include administrators." diff --git a/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md b/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md index dc9e2053965e..9a0af64cb18f 100644 --- a/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md +++ b/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md @@ -16,8 +16,7 @@ versions: {% data reusables.commits.about-commits %} -{% ifversion commit-signoffs %} -If the repository you are committing to has compulsory commit signoffs enabled, and you are committing via the web interface, you will automatically sign off on the commit as part of the commit process. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository). {% endif %} +If the repository you are committing to has compulsory commit signoffs enabled, and you are committing via the web interface, you will automatically sign off on the commit as part of the commit process. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository). You can add a co-author on any commits you collaborate on. For more information, see [AUTOTITLE](/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors). @@ -43,8 +42,6 @@ Once the commit is on the default branch, any tags that contain the commit will ![Screenshot of a commit summary. The tag icon and "v2.3.4" are highlighted with an orange outline.](/assets/images/help/commits/commit-tag-label.png) -{% ifversion commit-tree-view %} - ## Using the file tree You can use the file tree to navigate between files in a commit. @@ -60,8 +57,6 @@ You can use the file tree to navigate between files in a commit. ![Screenshot of the "Files changed" tab of a pull request. In the left sidebar, the file tree is outlined in dark orange.](/assets/images/help/repository/file-tree.png) 1. To filter by file path, enter part or all of the file path in the **Filter changed files** search box. -{% endif %} - ## Further reading * [AUTOTITLE](/desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project-in-github-desktop#about-commits) on {% data variables.product.prodname_desktop %} diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md index c8df319a2761..6458525d22d2 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md @@ -14,11 +14,9 @@ shortTitle: Configure commit merging {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} 1. Under "Pull Requests", select **Allow merge commits**. This allows contributors to merge a pull request with a full history of commits. -{% ifversion default-merge-squash-commit-message %} 1. Optionally, under **Allow merge commits**, select the dropdown menu, then click the format of the commit message presented to contributors when merging. The default message includes the pull request number and title. For example, `Merge pull request #123 from patch-1`. You can also choose to use just the pull request title, or the pull request title and description. -{% endif %} If you select more than one merge method, collaborators can choose which type of merge commit to use when they merge a pull request. {% data reusables.repositories.squash-and-rebase-linear-commit-history %} diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md index a4bb93c9b5d0..97f70146c93a 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md @@ -21,11 +21,9 @@ shortTitle: Configure commit squashing {% data reusables.repositories.sidebar-settings %} 1. On the "General" settings page (which is selected by default), scroll down to the section marked "Pull Requests". 1. Under "Pull Requests", select **Allow squash merging**. This allows contributors to merge a pull request by squashing all commits into a single commit. The default commit message presented to contributors when merging is the commit title and message if the pull request contains only 1 commit, or the pull request title and list of commits if the pull request contains 2 or more commits. -{% ifversion default-merge-squash-commit-message %} 1. Optionally, under **Allow squash merging**, select the dropdown menu, then click the format of the default squash commit message presented to contributors when merging. The default message uses the commit title and message if the pull request contains only 1 commit, or the pull request title and list of commits if the pull request contains 2 or more commits. You can also choose to use just the pull request title, the pull request title and commit details, or the pull request title and description. -{% endif %} If you select more than one merge method, collaborators can choose which type of merge commit to use when they merge a pull request. {% data reusables.repositories.squash-and-rebase-linear-commit-history %} diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule.md index 2be8383a9b46..696bb3ac0d99 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule.md @@ -23,7 +23,7 @@ versions: fpt: '*' ghes: '*' ghec: '*' -permissions: 'People with admin permissions {% ifversion edit-repository-rules %}or a custom role with the "edit repository rules" permission{% endif %} to a repository can manage branch protection rules.' +permissions: 'People with admin permissions or a custom role with the "edit repository rules" permission to a repository can manage branch protection rules.' topics: - Repositories shortTitle: Branch protection rule diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets.md index b567e9988f4f..dae01d187de8 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets.md @@ -18,7 +18,7 @@ When you create a ruleset, you can allow certain users to bypass the rules in th {% ifversion not ghes %} -For organizations on the {% data variables.product.prodname_enterprise %} plan, you can set up rulesets at the organization level to target multiple repositories in your organization. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/managing-rulesets-for-repositories-in-your-organization){% ifversion ghec %}."{% else %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} +For organizations on the {% data variables.product.prodname_enterprise %} plan, you can set up rulesets at the {% ifversion enterprise-code-rulesets %} enterprise or {% endif %}organization level to target multiple repositories in your organization. See [AUTOTITLE](/enterprise-cloud@latest/organizations/managing-organization-settings/managing-rulesets-for-repositories-in-your-organization){% ifversion not ghec %} in the {% data variables.product.prodname_ghe_cloud %} documentation{% endif %}. {% endif %} diff --git a/content/repositories/creating-and-managing-repositories/about-repositories.md b/content/repositories/creating-and-managing-repositories/about-repositories.md index b432cf3f8a77..c3ff3a39562b 100644 --- a/content/repositories/creating-and-managing-repositories/about-repositories.md +++ b/content/repositories/creating-and-managing-repositories/about-repositories.md @@ -39,7 +39,7 @@ Fork | A new repository that shares code and visibility settings with the origin Merge | To take the changes from one branch and apply them to another. Pull request | A request to merge changes from one branch into another. Remote | A repository stored on {% data variables.product.product_name %}, not on your computer. -Upstream | The branch on an original repository that has been forked or cloned. The corresponding branch on the cloned or forked branch is called the "downstream." +Upstream | The branch on an original repository that has been forked or cloned. The corresponding branch on the cloned or forked repository is called the "downstream." {% endrowheaders %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md index 9eb8d6120aeb..0ba50f664bf9 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md @@ -3,7 +3,9 @@ title: Enabling or disabling GitHub Discussions for a repository intro: 'You can use {% data variables.product.prodname_discussions %} in a repository as a place for your community to have conversations, ask questions, and post answers without scoping work in an issue.' permissions: 'People with admin permissions to a repository can enable {% data variables.product.prodname_discussions %} for the repository.' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' topics: - Repositories redirect_from: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md index e33f5143da4e..b112f5929900 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md @@ -91,9 +91,7 @@ The default permissions can also be configured in the organization settings. If ### Configuring the default `GITHUB_TOKEN` permissions -{% ifversion actions-default-workflow-permissions-restrictive %} By default, when you create a new repository in your personal account, `GITHUB_TOKEN` only has read access for the `contents` and `packages` scopes. If you create a new repository in an organization, the setting is inherited from what is configured in the organization settings. -{% endif %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} @@ -101,22 +99,17 @@ By default, when you create a new repository in your personal account, `GITHUB_T {% data reusables.actions.workflows.github-token-access %} 1. Click **Save** to apply the settings. -{% ifversion allow-actions-to-approve-pr-with-ent-repo %} - ### Preventing {% data variables.product.prodname_actions %} from creating or approving pull requests {% data reusables.actions.workflow-pr-approval-permissions-intro %} -{% ifversion actions-default-workflow-permissions-restrictive %} By default, when you create a new repository in your personal account, workflows are not allowed to create or approve pull requests. If you create a new repository in an organization, the setting is inherited from what is configured in the organization settings. -{% endif %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.settings-sidebar-actions-general %} 1. Under "Workflow permissions", use the **Allow GitHub Actions to create and approve pull requests** setting to configure whether `GITHUB_TOKEN` can create and approve pull requests. 1. Click **Save** to apply the settings. -{% endif %} {% ifversion ghes or ghec %} @@ -203,15 +196,13 @@ You can also define a custom retention period for a specific artifact created by {% data reusables.repositories.settings-sidebar-actions-general %} {% data reusables.actions.change-retention-period-for-artifacts-logs %} -{% ifversion actions-cache-policy-apis %} +{% ifversion ghes %} ## Configuring cache storage for a repository {% 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 {% ifversion actions-cache-admin-ui %}organization or{% endif %} enterprise policy setting{% ifversion actions-cache-admin-ui %}s{% endif %}. - -{% ifversion actions-cache-admin-ui %} +You can set a total cache storage size for your repository up to the maximum size allowed by the organization or enterprise policy settings. {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} @@ -219,4 +210,3 @@ You can set a total cache storage size for your repository up to the maximum siz {% data reusables.actions.change-cache-size-limit %} {% endif %} -{% endif %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md index f5c2a2a1ea18..becde5bd19ec 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md @@ -19,13 +19,11 @@ shortTitle: Configure autolinks Anyone with admin permissions to a repository can configure autolink references to link issues, pull requests, commit messages, and release descriptions to external third-party services. -{% ifversion autolink-reference-alphanumeric %} Autolink references can now accept alphanumeric characters. When originally introduced, custom autolinks were limited to external resources that used numeric identifiers. Custom autolinks now work with alphanumeric and numeric identifiers. You define custom autolinks by specifying a reference prefix and a target URL. * Reference prefixes cannot have overlapping names. For example, a repository cannot have two custom autolinks with prefixes such as `TICKET` and `TICK`, since both prefixes would match the string `TICKET123a`. * Target URLs include a `` variable which represents the reference identifier of the linked resource. -{% endif %} ## Configuring autolinks to reference external resources @@ -37,9 +35,7 @@ This procedure demonstrates how to configure autolinks to reference external res 1. At the top right of the page, click **Add autolink reference**. ![Screenshot of the "autolink references" page. The "Add autolink reference" button is highlighted by a dark orange outline.](/assets/images/help/repository/add-autolink-reference-details.png) -{% ifversion autolink-reference-alphanumeric %} 1. Select the format of the reference identifier used in the external resource, either **Alphanumeric** or **Numeric**. -{% endif %} 1. Under "Reference prefix", type a short, meaningful prefix. Collaborators will use this text to generate autolinks for the external resource. 1. Under "Target URL", type the format of the link to the external system you want to create. Use the `` variable as a placeholder for the reference identifier. 1. Review the preview and verify that the autolink and external reference are both correct, then click **Add autolink reference** to define the link. diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md index b519586577fe..789f89459bcf 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules.md @@ -10,8 +10,7 @@ versions: When you add a tag protection rule, all tags that match the pattern provided will be protected. Only users with admin or maintain permissions, or custom roles with the "edit repository rules" permission in the repository will be able to create protected tags, and only users with admin permissions or custom roles with the "edit repository rules" permission in the repository will be able to delete protected tags. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization#permissions-for-each-role). {% data variables.product.prodname_github_apps %} require the `Repository administration: write` permission to modify a protected tag. -{% ifversion custom-repository-roles %} -Additionally, you can create custom repository roles to allow other groups of users to create or delete tags that match tag protection rules. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization).{% endif %} +Additionally, you can create custom repository roles to allow other groups of users to create or delete tags that match tag protection rules. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization). {% ifversion tag-protection-rules-import %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md index e4ca417bbd8e..79b580e4bcc9 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md @@ -2,7 +2,9 @@ title: Managing the commit signoff policy for your repository intro: 'You can require users to automatically sign off on the commits they make to your repository using {% data variables.product.product_name %}''s web interface.' versions: - feature: commit-signoffs + fpt: '*' + ghec: '*' + ghes: '*' permissions: Organization owners and repository administrators can require all commits to a repository to be signed off by the commit author. topics: - Repositories diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md index 4b238fd8964f..7e7d647adc1b 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md @@ -1,7 +1,7 @@ --- title: Viewing traffic to a repository intro: 'Anyone with push access to a repository can view its traffic, including full clones (not fetches), visitors from the past 14 days, referring sites, and popular content in the traffic graph.' -product: 'This repository insights graph is available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, and {% data variables.product.prodname_ghe_cloud %}.{% ifversion fpt %} For more information, see "[About repository graphs](/articles/about-repository-graphs)" and "[{% data variables.product.prodname_dotcom %}''s products](/articles/github-s-products)."{% endif %}' +product: 'This repository insights graph is available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, and {% data variables.product.prodname_ghe_cloud %}.{% ifversion fpt %} For more information, see [About repository graphs](/articles/about-repository-graphs) and [{% data variables.product.prodname_dotcom %}''s products](/articles/github-s-products).{% endif %}' redirect_from: - /articles/viewing-traffic-to-a-repository - /github/visualizing-repository-data-with-graphs/viewing-traffic-to-a-repository diff --git a/content/rest/copilot/copilot-usage.md b/content/rest/copilot/copilot-usage.md index 6e80ecf0b665..4182176d47f6 100644 --- a/content/rest/copilot/copilot-usage.md +++ b/content/rest/copilot/copilot-usage.md @@ -2,6 +2,8 @@ title: REST API endpoints for GitHub Copilot usage metrics shortTitle: Copilot usage intro: 'Use the REST API to access {% data variables.product.prodname_copilot_short %} usage metrics for an enterprise, an organization, or a team.' +redirect_from: + - /early-access/copilot/copilot-usage-api versions: # DO NOT MANUALLY EDIT. CHANGES WILL BE OVERWRITTEN BY A 🤖 fpt: '*' ghec: '*' diff --git a/content/rest/enterprise-admin/manage-ghes.md b/content/rest/enterprise-admin/manage-ghes.md index 9f6fab3d0e49..b30c11b97697 100644 --- a/content/rest/enterprise-admin/manage-ghes.md +++ b/content/rest/enterprise-admin/manage-ghes.md @@ -32,8 +32,6 @@ To authenticate requests to endpoints for the Manage {% data variables.product.p curl -L -u "api_key:ROOT-SITE-ADMINISTRATOR-PASSWORD" 'http(s)://HOSTNAME:ADMINISTRATION-PORT/manage' ``` -{% ifversion enterprise-management-console-multi-user-auth %} - ### Authentication as a {% data variables.enterprise.management_console %} user {% data variables.enterprise.management_console %} user accounts can also authenticate to access these endpoints. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console#management-console-user). @@ -44,8 +42,6 @@ To authenticate with the password for a {% data variables.enterprise.management_ curl -L -u "YOUR_USER_NAME:YOUR_PASSWORD" 'http(s)://HOSTNAME:ADMINISTRATION-PORT/manage' ``` -{% endif %} - ### Query parameters By default, the response includes information from about all configured nodes for the instance. On an instance with multiple nodes, the details originate from `/data/user/common/cluster.conf`. You can use the following query parameters to filter the response for information about specific nodes. diff --git a/content/rest/enterprise-admin/management-console.md b/content/rest/enterprise-admin/management-console.md index 8ec31f43c713..ba5cb868332a 100644 --- a/content/rest/enterprise-admin/management-console.md +++ b/content/rest/enterprise-admin/management-console.md @@ -44,9 +44,9 @@ If you cannot provide a port number, you'll need to configure your tool to autom You may also need to add the [`-k` flag](http://curl.haxx.se/docs/manpage.html#-k) when using `curl`, since {% data variables.product.product_name %} uses a self-signed certificate before you [add your own TLS certificate](/admin/configuration/configuring-network-settings/configuring-tls). -### Authentication {% ifversion enterprise-management-console-multi-user-auth %}as the root site administrator{% endif %} +### Authentication as the root site administrator -You need to pass your [{% ifversion enterprise-management-console-multi-user-auth %}root site administrator{% else %}{% data variables.enterprise.management_console %}{% endif %} password](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console) as an authentication token to every endpoint in this category except [Create a {% data variables.product.github %} license](#create-a-github-license). +You need to pass your [root site administrator password](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console) as an authentication token to every endpoint in this category except [Create a {% data variables.product.github %} license](#create-a-github-license). Use the `api_key` parameter to send this token with each request. For example: @@ -60,8 +60,6 @@ You can also use standard HTTP authentication to send this token. For example: curl -L -u "api_key:YOUR_PASSWORD" 'https://HOSTNAME:ADMIN-PORT/setup/api' ``` -{% ifversion enterprise-management-console-multi-user-auth %} - ### Authentication as a {% data variables.enterprise.management_console %} user [Management Console user accounts](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console#management-console-user) can also authenticate to access this endpoint. @@ -72,6 +70,4 @@ To authenticate with the password for a {% data variables.enterprise.management_ curl -L -u "YOUR_USER_NAME:YOUR_PASSWORD" 'https://HOSTNAME:ADMIN-PORT/setup/api' ``` -{% endif %} - diff --git a/content/rest/index.md b/content/rest/index.md index 6322d88ce478..9987a9f92c42 100644 --- a/content/rest/index.md +++ b/content/rest/index.md @@ -75,6 +75,7 @@ children: - /orgs - /packages - /pages + - /private-registries - /projects - /pulls - /rate-limit diff --git a/content/rest/orgs/bypass-requests.md b/content/rest/orgs/bypass-requests.md index 3b3674476326..158acb1432b2 100644 --- a/content/rest/orgs/bypass-requests.md +++ b/content/rest/orgs/bypass-requests.md @@ -1,7 +1,8 @@ --- -title: TODOCS -shortTitle: TODOCS -intro: TODOCS +title: REST API endpoints for organization push rule bypass requests +shortTitle: Bypass requests +intro: >- + Use the REST API to manage organization push rule bypass requests. versions: # DO NOT MANUALLY EDIT. CHANGES WILL BE OVERWRITTEN BY A 🤖 ghec: '*' topics: diff --git a/content/rest/private-registries/index.md b/content/rest/private-registries/index.md new file mode 100644 index 000000000000..2532d3ce1501 --- /dev/null +++ b/content/rest/private-registries/index.md @@ -0,0 +1,13 @@ +--- +title: Private registries +topics: + - API +autogenerated: rest +allowTitleToDifferFromFilename: true +children: + - /organization-configurations +versions: + fpt: '*' + ghec: '*' +--- + diff --git a/content/rest/private-registries/organization-configurations.md b/content/rest/private-registries/organization-configurations.md new file mode 100644 index 000000000000..649e5a58edbc --- /dev/null +++ b/content/rest/private-registries/organization-configurations.md @@ -0,0 +1,17 @@ +--- +title: Organization configurations +shortTitle: Organization configurations +intro: Use the REST API to manage private registry configurations for organizations. +versions: # DO NOT MANUALLY EDIT. CHANGES WILL BE OVERWRITTEN BY A 🤖 + fpt: '*' + ghec: '*' +topics: + - API +autogenerated: rest +allowTitleToDifferFromFilename: true +--- + +> [!NOTE] +> The ability to use the REST API to manage private registries is currently in {% data variables.release-phases.public_preview %} and subject to change. + + diff --git a/content/rest/repos/bypass-requests.md b/content/rest/repos/bypass-requests.md index 3b3674476326..9e676b0b3dd9 100644 --- a/content/rest/repos/bypass-requests.md +++ b/content/rest/repos/bypass-requests.md @@ -1,7 +1,8 @@ --- -title: TODOCS -shortTitle: TODOCS -intro: TODOCS +title: REST API endpoints for repository push rule bypass requests +shortTitle: Bypass requests +intro: >- + Use the REST API to manage repository push rule bypass requests. versions: # DO NOT MANUALLY EDIT. CHANGES WILL BE OVERWRITTEN BY A 🤖 ghec: '*' topics: diff --git a/content/rest/search/search.md b/content/rest/search/search.md index e9f2c47fc48d..324c8290c4bd 100644 --- a/content/rest/search/search.md +++ b/content/rest/search/search.md @@ -31,7 +31,7 @@ Unless another sort option is provided as a query parameter, results are sorted {% data reusables.enterprise.rate_limit %} The REST API has a custom rate limit for searching. For authenticated requests, you can make up to -30 requests per minute{% ifversion fpt or ghec %} for all search endpoints except for the [Search code](/rest/search/search#search-code) endpoint. The "[Search code](/rest/search/search#search-code)" endpoint requires you to authenticate and limits you to 10 requests per minute{% endif %}. For unauthenticated requests, the rate limit allows you to make up to 10 requests per minute. +30 requests per minute{% ifversion fpt or ghec %} for all search endpoints except for the [Search code](/rest/search/search#search-code) endpoint. The [Search code](/rest/search/search#search-code) endpoint requires you to authenticate and limits you to 10 requests per minute{% endif %}. For unauthenticated requests, the rate limit allows you to make up to 10 requests per minute. For information about how to determine your current rate limit status, see [Rate Limit](/rest/rate-limit/rate-limit). diff --git a/content/rest/using-the-rest-api/rate-limits-for-the-rest-api.md b/content/rest/using-the-rest-api/rate-limits-for-the-rest-api.md index e8e54e17fd4c..5927acbc1c01 100644 --- a/content/rest/using-the-rest-api/rate-limits-for-the-rest-api.md +++ b/content/rest/using-the-rest-api/rate-limits-for-the-rest-api.md @@ -109,7 +109,7 @@ Continuing to make requests while you are rate limited may result in the banning You should follow best practices to help you stay under the rate limits. See [AUTOTITLE](/rest/guides/best-practices-for-using-the-rest-api). -{% ifversion audit-log-streaming %} +{% ifversion ghec or ghes %} You can also stream the audit log in order to view API requests. This can help you troubleshoot integrations that are exceeding the rate limit. See [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise). diff --git a/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md b/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md index e71b8acb0ce8..49980748888c 100644 --- a/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md +++ b/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md @@ -36,7 +36,7 @@ After typing a search query, you can press **Enter** to go to the full search re > [!NOTE] > * {% data reusables.search.required_login %} -> * {% data variables.product.prodname_pages %} sites are not searchable on {% data variables.product.product_name %}. However you can search the source content if it exists in the default branch of a repository, using code search. For more information, see "[AUTOTITLE]{% ifversion code-search-upgrade %}(/search-github/github-code-search/understanding-github-code-search-syntax){% else %}(/search-github/searching-on-github/searching-code){% endif %}." For more information about {% data variables.product.prodname_pages %}, see [AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages) +> * {% data variables.product.prodname_pages %} sites are not searchable on {% data variables.product.product_name %}. However you can search the source content if it exists in the default branch of a repository, using code search. For more information, see [AUTOTITLE]{% ifversion code-search-upgrade %}(/search-github/github-code-search/understanding-github-code-search-syntax){% else %}(/search-github/searching-on-github/searching-code){% endif %}. For more information about {% data variables.product.prodname_pages %}, see [AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages) > * Currently our search doesn't support exact matching.{% ifversion ghes %} > * Whenever you are searching in code files, only the first two results in each file will be returned.{% endif %} diff --git a/content/search-github/searching-on-github/searching-discussions.md b/content/search-github/searching-on-github/searching-discussions.md index 9403ef01cfd7..4d7f5764b06d 100644 --- a/content/search-github/searching-on-github/searching-discussions.md +++ b/content/search-github/searching-on-github/searching-discussions.md @@ -2,7 +2,9 @@ title: Searching discussions intro: 'You can search for discussions on {% data variables.product.product_name %} and narrow the results using search qualifiers.' versions: - feature: discussions + fpt: '*' + ghes: '*' + ghec: '*' topics: - GitHub search redirect_from: diff --git a/content/search-github/searching-on-github/searching-for-repositories.md b/content/search-github/searching-on-github/searching-for-repositories.md index 1fca0748719f..211ccf86598b 100644 --- a/content/search-github/searching-on-github/searching-for-repositories.md +++ b/content/search-github/searching-on-github/searching-for-repositories.md @@ -36,7 +36,7 @@ With the `in` qualifier you can restrict your search to the repository name, rep You can find a repository by searching for content in the repository's README file using the `in:readme` qualifier. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes). -Besides using `in:readme`, it's not possible to find repositories by searching for specific content within the repository. To search for a specific file or content within a repository, you can use the file finder or code-specific search qualifiers. For more information, see [AUTOTITLE](/search-github/searching-on-github/finding-files-on-github) and "[AUTOTITLE]{% ifversion code-search-upgrade %}(/search-github/github-code-search/understanding-github-code-search-syntax){% else %}(/search-github/searching-on-github/searching-code){% endif %}." +Besides using `in:readme`, it's not possible to find repositories by searching for specific content within the repository. To search for a specific file or content within a repository, you can use the file finder or code-specific search qualifiers. For more information, see [AUTOTITLE](/search-github/searching-on-github/finding-files-on-github) and [AUTOTITLE]{% ifversion code-search-upgrade %}(/search-github/github-code-search/understanding-github-code-search-syntax){% else %}(/search-github/searching-on-github/searching-code){% endif %}. | Qualifier | Example | ------------- | ------------- diff --git a/content/search-github/searching-on-github/searching-issues-and-pull-requests.md b/content/search-github/searching-on-github/searching-issues-and-pull-requests.md index f141f75541f3..8a5cf00bfbff 100644 --- a/content/search-github/searching-on-github/searching-issues-and-pull-requests.md +++ b/content/search-github/searching-on-github/searching-issues-and-pull-requests.md @@ -21,7 +21,7 @@ You can search for issues and pull requests globally across all of {% data varia > * This article contains example searches on the {% data variables.product.prodname_dotcom %}.com website, but you can use the same search filters on {% data variables.location.product_location %}. {% endif %} {% ifversion issues-advanced-search %} -> * If your organization has opted-in to the {% data variables.release-phases.public_preview %} of advanced issue search, you can use boolean and nested queries on your repository's issues page. See [AUTOTITLE](/issues/tracking-your-work-with-issues/using-issues/filtering-and-searching-issues-and-pull-requests#building-advanced-filters-for-issues). +> * You can build advanced filters using boolean and nested queries on your repository's issues page. See [AUTOTITLE](/issues/tracking-your-work-with-issues/using-issues/filtering-and-searching-issues-and-pull-requests#building-advanced-filters-for-issues). {% endif %} > * For a list of search syntaxes that you can add to any search qualifier to further improve your results, see [AUTOTITLE](/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax). > * Use quotations around multi-word search terms. For example, if you want to search for issues with the label "In progress," you'd search for `label:"in progress"`. Search is not case sensitive. diff --git a/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md b/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md index 633d5f78939b..6ad07a563607 100644 --- a/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md +++ b/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md @@ -116,7 +116,7 @@ Your use of GitHub Copilot is subject to the GitHub [Acceptable Use Policies](/s _Data_ -GitHub Copilot (i) may collect and process data based on your settings and the sepcific GitHub Copilot Service you use - this may include Prompts, Suggestions, and code snippets, and (ii) will collect additional usage information through the GitHub Copilot Service you use tied to your Account - this may include Service Usage Information, Website Usage Data, and Feedback Data. Upon your instructions, we may share this data with third-party applications such as those on the [GitHub Marketplace](https://github.com/marketplace) or third-party AI models of your choosing. This may include personal data, as referenced in the [GitHub Privacy Statement](/site-policy/privacy-policies/github-privacy-statement). You can learn more about the collection and use of GitHub Copilot data in the [GitHub Copilot Trust Center](https://resources.github.com/copilot-trust-center/). +GitHub Copilot (i) may collect and process data based on your settings and the specific GitHub Copilot Service you use - this may include Prompts, Suggestions, and code snippets, and (ii) will collect additional usage information through the GitHub Copilot Service you use tied to your Account - this may include Service Usage Information, Website Usage Data, and Feedback Data. Upon your instructions, we may share this data with third-party applications such as those on the [GitHub Marketplace](https://github.com/marketplace) or third-party AI models of your choosing. This may include personal data, as referenced in the [GitHub Privacy Statement](/site-policy/privacy-policies/github-privacy-statement). You can learn more about the collection and use of GitHub Copilot data in the [GitHub Copilot Trust Center](https://resources.github.com/copilot-trust-center/). For GitHub Copilot Free users, the data collected by GitHub Copilot may be used for AI Model training where permitted and if you allow in your settings. diff --git a/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-github-app-webhook.md b/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-github-app-webhook.md index 9309fe1181fe..c2c23ded569b 100644 --- a/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-github-app-webhook.md +++ b/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-github-app-webhook.md @@ -86,7 +86,7 @@ jobs: # - Replace `YOUR_APP_ID_SECRET_NAME` with the name of the secret where you stored your app ID. # - Replace `YOUR_PRIVATE_KEY_SECRET_NAME` with the name of the secret where you stored your private key. # - Replace `YOUR_TOKEN_SECRET_NAME` with the name of the secret where you stored your {% data variables.product.pat_generic %}. - # - Replace `YOUR_LAST_REDELIVERY_VARIABLE_NAME` with the name that you want to use for a configuration variable that will be stored in the repository where this workflow is stored. The name can be any string that contains only alphanumeric characters and `_`, and does not start with `GITHUB_` or a number. For more information, see "[AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows)." + # - Replace `YOUR_LAST_REDELIVERY_VARIABLE_NAME` with the name that you want to use for a configuration variable that will be stored in the repository where this workflow is stored. The name can be any string that contains only alphanumeric characters and `_`, and does not start with `GITHUB_` or a number. For more information, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows). {% ifversion ghes %}# - Replace `YOUR_HOSTNAME` with the name of {% data variables.location.product_location %}.{% endif %} - name: Run script env: @@ -108,7 +108,7 @@ This section demonstrates how you can write a script to find and redeliver faile Copy this script into a file called `.github/workflows/scripts/redeliver-failed-deliveries.mjs` in the same repository where you saved the {% data variables.product.prodname_actions %} workflow file above. ```javascript copy annotate -// This script uses {% data variables.product.company_short %}'s Octokit SDK to make API requests. For more information, see "[AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript)." +// This script uses {% data variables.product.company_short %}'s Octokit SDK to make API requests. For more information, see [AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript). import { App, Octokit } from "octokit"; // @@ -218,7 +218,7 @@ async function checkAndRedeliverWebhooks() { } // This function will fetch all of the webhook deliveries that were delivered since `lastWebhookRedeliveryTime`. -// It uses the `octokit.paginate.iterator()` method to iterate through paginated results. For more information, see "[AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript#making-paginated-requests)." +// It uses the `octokit.paginate.iterator()` method to iterate through paginated results. For more information, see [AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript#making-paginated-requests). // // If a page of results includes deliveries that occurred before `lastWebhookRedeliveryTime`, // it will store only the deliveries that occurred after `lastWebhookRedeliveryTime` and then stop. @@ -291,7 +291,7 @@ async function getVariable({ variableName, repoOwner, repoName, octokit }) { } } -// This function will update a configuration variable (or create the variable if it doesn't already exist). For more information, see "[AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows)." +// This function will update a configuration variable (or create the variable if it doesn't already exist). For more information, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows). async function updateVariable({ variableName, value, diff --git a/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-repository-webhook.md b/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-repository-webhook.md index d129e4741e8c..336c24dfca51 100644 --- a/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-repository-webhook.md +++ b/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-a-repository-webhook.md @@ -83,7 +83,7 @@ jobs: # - Replace `YOUR_REPO_OWNER` with the owner of the repository where the webhook was created. # - Replace `YOUR_REPO_NAME` with the name of the repository where the webhook was created. # - Replace `YOUR_HOOK_ID` with the ID of the webhook. - # - Replace `YOUR_LAST_REDELIVERY_VARIABLE_NAME` with the name that you want to use for a configuration variable that will be stored in the repository where this workflow is stored. The name can be any string that contains only alphanumeric characters and `_`, and does not start with `GITHUB_` or a number. For more information, see "[AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows)." + # - Replace `YOUR_LAST_REDELIVERY_VARIABLE_NAME` with the name that you want to use for a configuration variable that will be stored in the repository where this workflow is stored. The name can be any string that contains only alphanumeric characters and `_`, and does not start with `GITHUB_` or a number. For more information, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows). {% ifversion ghes %}# - Replace `YOUR_HOSTNAME` with the name of {% data variables.location.product_location %}.{% endif %} - name: Run script env: @@ -106,7 +106,7 @@ This section demonstrates how you can write a script to find and redeliver faile Copy this script into a file called `.github/workflows/scripts/redeliver-failed-deliveries.js` in the same repository where you saved the {% data variables.product.prodname_actions %} workflow file above. ```javascript copy annotate -// This script uses {% data variables.product.company_short %}'s Octokit SDK to make API requests. For more information, see "[AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript)." +// This script uses {% data variables.product.company_short %}'s Octokit SDK to make API requests. For more information, see [AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript). const { Octokit } = require("octokit"); // @@ -215,7 +215,7 @@ async function checkAndRedeliverWebhooks() { } // This function will fetch all of the webhook deliveries that were delivered since `lastWebhookRedeliveryTime`. -// It uses the `octokit.paginate.iterator()` method to iterate through paginated results. For more information, see "[AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript#making-paginated-requests)." +// It uses the `octokit.paginate.iterator()` method to iterate through paginated results. For more information, see [AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript#making-paginated-requests). // // If a page of results includes deliveries that occurred before `lastWebhookRedeliveryTime`, // it will store only the deliveries that occurred after `lastWebhookRedeliveryTime` and then stop. @@ -309,7 +309,7 @@ async function getVariable({ variableName, repoOwner, repoName, octokit }) { } } -// This function will update a configuration variable (or create the variable if it doesn't already exist). For more information, see "[AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows)." +// This function will update a configuration variable (or create the variable if it doesn't already exist). For more information, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows). async function updateVariable({ variableName, value, diff --git a/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-an-organization-webhook.md b/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-an-organization-webhook.md index a026e1e5320b..b71fbddb162b 100644 --- a/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-an-organization-webhook.md +++ b/content/webhooks/using-webhooks/automatically-redelivering-failed-deliveries-for-an-organization-webhook.md @@ -82,7 +82,7 @@ jobs: # - Replace `YOUR_SECRET_NAME` with the name of the secret where you stored your {% data variables.product.pat_generic %}. # - Replace `YOUR_ORGANIZATION_NAME` with the name of the organization where the webhook was created. # - Replace `YOUR_HOOK_ID` with the ID of the webhook. - # - Replace `YOUR_LAST_REDELIVERY_VARIABLE_NAME` with the name that you want to use for a configuration variable that will be stored in the repository where this workflow is stored. The name can be any string that contains only alphanumeric characters and `_`, and does not start with `GITHUB_` or a number. For more information, see "[AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows)." + # - Replace `YOUR_LAST_REDELIVERY_VARIABLE_NAME` with the name that you want to use for a configuration variable that will be stored in the repository where this workflow is stored. The name can be any string that contains only alphanumeric characters and `_`, and does not start with `GITHUB_` or a number. For more information, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows). {% ifversion ghes %}# - Replace `YOUR_HOSTNAME` with the name of {% data variables.location.product_location %}.{% endif %} - name: Run script env: @@ -104,7 +104,7 @@ This section demonstrates how you can write a script to find and redeliver faile Copy this script into a file called `.github/workflows/scripts/redeliver-failed-deliveries.js` in the same repository where you saved the {% data variables.product.prodname_actions %} workflow file above. ```javascript copy annotate -// This script uses {% data variables.product.company_short %}'s Octokit SDK to make API requests. For more information, see "[AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript)." +// This script uses {% data variables.product.company_short %}'s Octokit SDK to make API requests. For more information, see [AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript). const { Octokit } = require("octokit"); // @@ -210,7 +210,7 @@ async function checkAndRedeliverWebhooks() { } // This function will fetch all of the webhook deliveries that were delivered since `lastWebhookRedeliveryTime`. -// It uses the `octokit.paginate.iterator()` method to iterate through paginated results. For more information, see "[AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript#making-paginated-requests)." +// It uses the `octokit.paginate.iterator()` method to iterate through paginated results. For more information, see [AUTOTITLE](/rest/guides/scripting-with-the-rest-api-and-javascript#making-paginated-requests). // // If a page of results includes deliveries that occurred before `lastWebhookRedeliveryTime`, // it will store only the deliveries that occurred after `lastWebhookRedeliveryTime` and then stop. @@ -300,7 +300,7 @@ async function getVariable({ variableName, repoOwner, repoName, octokit }) { } } -// This function will update a configuration variable (or create the variable if it doesn't already exist). For more information, see "[AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows)." +// This function will update a configuration variable (or create the variable if it doesn't already exist). For more information, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows). async function updateVariable({ variableName, value, diff --git a/content/webhooks/using-webhooks/delivering-webhooks-to-private-systems.md b/content/webhooks/using-webhooks/delivering-webhooks-to-private-systems.md index 5f4352f34217..db3a0092c105 100644 --- a/content/webhooks/using-webhooks/delivering-webhooks-to-private-systems.md +++ b/content/webhooks/using-webhooks/delivering-webhooks-to-private-systems.md @@ -14,11 +14,11 @@ You may want to deliver {% data variables.product.company_short %} webhooks to p A reverse proxy is a web server that sits between a client and an application. The reverse proxy receives requests from the client and forwards them to the application. This ensures no direct communication occurs between clients on the internet and the underlying application. A variety of systems can serve a reverse proxy, including: -* web servers, like [nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/) +* Web servers, like [nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/) * API gateways -* free, open-source overlay networks, like [OpenZiti](https://openziti.io) -* commercial ingress management tools, like [ngrok](https://ngrok.com/partners/github) -* free, open-source ingress management tools, like [zrok](https://zrok.io) +* Free, open-source overlay networks, like [OpenZiti](https://openziti.io) +* Commercial ingress management tools, like [ngrok](https://ngrok.com/partners/github) +* Free, open-source ingress management tools, like [zrok](https://zrok.io) How you configure your reverse proxy varies based on the system you're using. diff --git a/content/webhooks/using-webhooks/handling-webhook-deliveries.md b/content/webhooks/using-webhooks/handling-webhook-deliveries.md index ca0699505b49..a05155fe7f26 100644 --- a/content/webhooks/using-webhooks/handling-webhook-deliveries.md +++ b/content/webhooks/using-webhooks/handling-webhook-deliveries.md @@ -119,11 +119,11 @@ To use this example, you must install the sinatra gem in your Ruby project. For Create a Ruby file with the following contents. Modify the code to handle the event types that your webhook is subscribed to, as well as the `ping` event that {% data variables.product.company_short %} sends when you create a webhook. This example handles the `issues` and `ping` events. ```ruby copy annotate -# These are the dependencies for this code. You installed the `sinatra` gem earlier. For more information, see "[Ruby example: Install dependencies](#ruby-example-install-dependencies)." The `json` library is a standard Ruby library, so you don't need to install it. +# These are the dependencies for this code. You installed the `sinatra` gem earlier. For more information, see [Ruby example: Install dependencies](#ruby-example-install-dependencies). The `json` library is a standard Ruby library, so you don't need to install it. require 'sinatra' require 'json' -# The `/webhook` route matches the path that you specified for the smee.io forwarding. For more information, see "[Forward webhooks](#forward-webhooks)." +# The `/webhook` route matches the path that you specified for the smee.io forwarding. For more information, see [Forward webhooks](#forward-webhooks). # # Once you deploy your code to a server and update your webhook URL, you should change this to match the path portion of the URL for your webhook. post '/webhook' do @@ -142,7 +142,7 @@ post '/webhook' do # If any events have an `action` field, you should also add logic to handle each action that you are interested in. # For example, this code handles the `opened` and `closed` actions for the `issue` event. # - # For more information about the data that you can expect for each event type, see "[AUTOTITLE](/webhooks/webhook-events-and-payloads)." + # For more information about the data that you can expect for each event type, see [AUTOTITLE](/webhooks/webhook-events-and-payloads). if github_event == "issues" data = JSON.parse(request.body.read) action = data['action'] @@ -203,13 +203,13 @@ npm install express Create a JavaScript file with the following contents. Modify the code to handle the event types that your webhook is subscribed to, as well as the `ping` event that {% data variables.product.company_short %} sends when you create a webhook. This example handles the `issues` and `ping` events. ```javascript copy annotate -// You installed the `express` library earlier. For more information, see "[JavaScript example: Install dependencies](#javascript-example-install-dependencies)." +// You installed the `express` library earlier. For more information, see [JavaScript example: Install dependencies](#javascript-example-install-dependencies). const express = require('express'); // This initializes a new Express application. const app = express(); -// This defines a POST route at the `/webhook` path. This path matches the path that you specified for the smee.io forwarding. For more information, see "[Forward webhooks](#forward-webhooks)." +// This defines a POST route at the `/webhook` path. This path matches the path that you specified for the smee.io forwarding. For more information, see [Forward webhooks](#forward-webhooks). // // Once you deploy your code to a server and update your webhook URL, you should change this to match the path portion of the URL for your webhook. app.post('/webhook', express.json({type: 'application/json'}), (request, response) => { @@ -227,7 +227,7 @@ app.post('/webhook', express.json({type: 'application/json'}), (request, respons // If any events have an `action` field, you should also add logic to handle each action that you are interested in. // For example, this code handles the `opened` and `closed` actions for the `issue` event. // - // For more information about the data that you can expect for each event type, see "[AUTOTITLE](/webhooks/webhook-events-and-payloads)." + // For more information about the data that you can expect for each event type, see [AUTOTITLE](/webhooks/webhook-events-and-payloads). if (githubEvent === 'issues') { const data = request.body; const action = data.action; @@ -246,7 +246,7 @@ app.post('/webhook', express.json({type: 'application/json'}), (request, respons }); // This defines the port where your server should listen. -// 3000 matches the port that you specified for webhook forwarding. For more information, see "[Forward webhooks](#forward-webhooks)." +// 3000 matches the port that you specified for webhook forwarding. For more information, see [Forward webhooks](#forward-webhooks). // // Once you deploy your code to a server, you should change this to match the port where your server is listening. const port = 3000; diff --git a/content/webhooks/using-webhooks/validating-webhook-deliveries.md b/content/webhooks/using-webhooks/validating-webhook-deliveries.md index 75cb20c2b573..ab853f7a31e4 100644 --- a/content/webhooks/using-webhooks/validating-webhook-deliveries.md +++ b/content/webhooks/using-webhooks/validating-webhook-deliveries.md @@ -57,12 +57,12 @@ There are a few important things to keep in mind when validating webhook payload You can use the following `secret` and `payload` values to verify that your implementation is correct: -* `secret`: "It's a Secret to Everybody" -* `payload`: "Hello, World!" +* `secret`: `It's a Secret to Everybody` +* `payload`: `Hello, World!` If your implementation is correct, the signatures that you generate should match the following signature values: -* signature: `757107ea0eb2509fc211221cce984b8a37570b6d7586c22c46f4379c8b043e17` +* signature: `757107ea0eb2509fc211221cce984b8a37570b6d7586c22c46f4379c8b043e17` * X-Hub-Signature-256: `sha256=757107ea0eb2509fc211221cce984b8a37570b6d7586c22c46f4379c8b043e17` ### Examples @@ -182,12 +182,12 @@ const webhooks = new Webhooks({ const handleWebhook = async (req, res) => { const signature = req.headers["x-hub-signature-256"]; const body = await req.text(); - + if (!(await webhooks.verify(body, signature))) { res.status(401).send("Unauthorized"); return; } - + // The rest of your logic here }; ``` diff --git a/contributing/README.md b/contributing/README.md index 4d4322240dbd..848e3d1474e8 100644 --- a/contributing/README.md +++ b/contributing/README.md @@ -2,7 +2,7 @@ Check out our [contributing guide](../.github/CONTRIBUTING.md) to see all the ways you can participate in the GitHub docs community :sparkling_heart: -Visit "[Contributing to GitHub Docs documentation](https://docs.github.com/en/contributing)" for additional information about how to write and collaborate the GitHub Docs way. +Visit [Contributing to GitHub Docs documentation](https://docs.github.com/en/contributing) for additional information about how to write and collaborate the GitHub Docs way. Here, you'll find additional information that might be helpful as you work on a pull request in this repo. diff --git a/contributing/code-annotations.md b/contributing/code-annotations.md index ffa0071ee9c7..0f318d3018be 100644 --- a/contributing/code-annotations.md +++ b/contributing/code-annotations.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Annotating code examples](https://docs.github.com/en/contributing/writing-for-github-docs/annotating-code-examples)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Annotating code examples](https://docs.github.com/en/contributing/writing-for-github-docs/annotating-code-examples) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/codespace.md b/contributing/codespace.md index 5ca5171d051a..ee9349ef1598 100644 --- a/contributing/codespace.md +++ b/contributing/codespace.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Working on a GitHub Docs in a codespace](https://docs.github.com/en/contributing/setting-up-your-environment-to-work-on-github-docs/working-on-github-docs-in-a-codespace)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Working on a GitHub Docs in a codespace](https://docs.github.com/en/contributing/setting-up-your-environment-to-work-on-github-docs/working-on-github-docs-in-a-codespace) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/content-markup-reference.md b/contributing/content-markup-reference.md index 1d113fa84256..39684f83096a 100644 --- a/contributing/content-markup-reference.md +++ b/contributing/content-markup-reference.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Using Markdown and Liquid in GitHub Docs](https://docs.github.com/en/contributing/writing-for-github-docs/using-markdown-and-liquid-in-github-docs)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Using Markdown and Liquid in GitHub Docs](https://docs.github.com/en/contributing/writing-for-github-docs/using-markdown-and-liquid-in-github-docs) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/content-model.md b/contributing/content-model.md index 4bfe68ee0d32..ce214bbc8065 100644 --- a/contributing/content-model.md +++ b/contributing/content-model.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Style guide and content model](https://docs.github.com/en/contributing/style-guide-and-content-model)" in the GitHub Docs for the maintained version of this content. \ No newline at end of file +The content in the `contributing` directory has been deprecated. See [Style guide and content model](https://docs.github.com/en/contributing/style-guide-and-content-model) in the GitHub Docs for the maintained version of this content. \ No newline at end of file diff --git a/contributing/content-style-guide.md b/contributing/content-style-guide.md index 0608681e6c22..33ceb7ae80e3 100644 --- a/contributing/content-style-guide.md +++ b/contributing/content-style-guide.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Style guide](https://docs.github.com/contributing/style-guide-and-content-model/style-guide)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Style guide](https://docs.github.com/contributing/style-guide-and-content-model/style-guide) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/content-templates.md b/contributing/content-templates.md index a23749f93d24..0f3e3cae589e 100644 --- a/contributing/content-templates.md +++ b/contributing/content-templates.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Templates](https://docs.github.com/en/contributing/writing-for-github-docs/templates)" in the GitHub Docs for the maintained version of this content. +The content in the `contributing` directory has been deprecated. See [Templates](https://docs.github.com/en/contributing/writing-for-github-docs/templates) in the GitHub Docs for the maintained version of this content. diff --git a/contributing/development.md b/contributing/development.md index c1c027e96428..ed0e53c5b4b5 100644 --- a/contributing/development.md +++ b/contributing/development.md @@ -32,7 +32,7 @@ Power users may want to read more about [debugging the docs application](./debug ### Using GitHub Codespaces -As an alternative, you can simply use [GitHub Codespaces](https://docs.github.com/en/codespaces/overview). For more information about using a codespace for working on GitHub documentation, see "[Working in a codespace](https://github.com/github/docs/blob/main/contributing/codespace.md)." +As an alternative, you can simply use [GitHub Codespaces](https://docs.github.com/en/codespaces/overview). For more information about using a codespace for working on GitHub documentation, see [Working in a codespace](https://github.com/github/docs/blob/main/contributing/codespace.md). In a matter of minutes, you will be ready to edit, preview and test your changes directly from the comfort of your browser. diff --git a/contributing/how-to-use-labels.md b/contributing/how-to-use-labels.md index be900ffd37c8..41e557fd8b18 100644 --- a/contributing/how-to-use-labels.md +++ b/contributing/how-to-use-labels.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Label reference](https://docs.github.com/en/contributing/collaborating-on-github-docs/label-reference)" in the GitHub Docs for the maintained version of this content. +The content in the `contributing` directory has been deprecated. See [Label reference](https://docs.github.com/en/contributing/collaborating-on-github-docs/label-reference) in the GitHub Docs for the maintained version of this content. diff --git a/contributing/images-and-versioning.md b/contributing/images-and-versioning.md index 26e9025c19ff..bd7e117c2322 100644 --- a/contributing/images-and-versioning.md +++ b/contributing/images-and-versioning.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Creating screenshots](https://docs.github.com/en/contributing/writing-for-github-docs/creating-screenshots)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Creating screenshots](https://docs.github.com/en/contributing/writing-for-github-docs/creating-screenshots) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/liquid-helpers.md b/contributing/liquid-helpers.md index 74c04bb32ff8..bba0c5fcc0ff 100644 --- a/contributing/liquid-helpers.md +++ b/contributing/liquid-helpers.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Versioning documentation](https://docs.github.com/en/contributing/writing-for-github-docs/versioning-documentation#versioning-with-liquid-conditional-operators)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Versioning documentation](https://docs.github.com/en/contributing/writing-for-github-docs/versioning-documentation#versioning-with-liquid-conditional-operators) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/redirects.md b/contributing/redirects.md index eaa8eea18770..4ec4f0e2faf5 100644 --- a/contributing/redirects.md +++ b/contributing/redirects.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Configuring redirects](https://docs.github.com/en/contributing/writing-for-github-docs/configuring-redirects)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Configuring redirects](https://docs.github.com/en/contributing/writing-for-github-docs/configuring-redirects) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/self-review.md b/contributing/self-review.md index 77b24ecbdf86..cb800716dd82 100644 --- a/contributing/self-review.md +++ b/contributing/self-review.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Self review checklist](https://docs.github.com/en/contributing/collaborating-on-github-docs/self-review-checklist)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Self review checklist](https://docs.github.com/en/contributing/collaborating-on-github-docs/self-review-checklist) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/tool-switcher.md b/contributing/tool-switcher.md index 1ce4a3e33ab2..20a718809047 100644 --- a/contributing/tool-switcher.md +++ b/contributing/tool-switcher.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Creating tool switchers in articles](https://docs.github.com/en/contributing/writing-for-github-docs/creating-tool-switchers-in-articles)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Creating tool switchers in articles](https://docs.github.com/en/contributing/writing-for-github-docs/creating-tool-switchers-in-articles) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/translations-for-writers.md b/contributing/translations-for-writers.md index 78a9cdd9cde6..5fa14a3cf1e9 100644 --- a/contributing/translations-for-writers.md +++ b/contributing/translations-for-writers.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Writing content to be translated](https://docs.github.com/en/contributing/writing-for-github-docs/writing-content-to-be-translated)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Writing content to be translated](https://docs.github.com/en/contributing/writing-for-github-docs/writing-content-to-be-translated) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/troubleshooting.md b/contributing/troubleshooting.md index b9c236c77f15..a2613075d955 100644 --- a/contributing/troubleshooting.md +++ b/contributing/troubleshooting.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Troubleshooting your environment](https://docs.github.com/en/contributing/setting-up-your-environment-to-work-on-github-docs/troubleshooting-your-environment)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Troubleshooting your environment](https://docs.github.com/en/contributing/setting-up-your-environment-to-work-on-github-docs/troubleshooting-your-environment) in the GitHub Docs for the maintained version of this article. diff --git a/contributing/videos.md b/contributing/videos.md index c922e6b35af8..41e64cf17d72 100644 --- a/contributing/videos.md +++ b/contributing/videos.md @@ -1 +1 @@ -The content in the `contributing` directory has been deprecated. See "[Using videos in GitHub Docs](https://docs.github.com/en/contributing/writing-for-github-docs/using-videos-in-github-docs)" in the GitHub Docs for the maintained version of this article. +The content in the `contributing` directory has been deprecated. See [Using videos in GitHub Docs](https://docs.github.com/en/contributing/writing-for-github-docs/using-videos-in-github-docs) in the GitHub Docs for the maintained version of this article. diff --git a/data/features/default-setup-pre-enablement-ghes.yml b/data/features/default-setup-pre-enablement-ghes.yml deleted file mode 100644 index ce0b2a3e3b11..000000000000 --- a/data/features/default-setup-pre-enablement-ghes.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Default setup for code scanning can now be enabled on any repository, including repositories that don't contain a -# CodeQL-supported language, and scans will begin automatically if/when a CodeQL-supported language is added. This -# versioning pairs with `default-setup-pre-enablement` and was created to future-proof GHES-specific sections. -# Reference: #12363 - -versions: - ghes: '>3.12' diff --git a/data/features/dependabot-alerts-vulnerable-calls.yml b/data/features/dependabot-alerts-vulnerable-calls.yml deleted file mode 100644 index a67e03d32def..000000000000 --- a/data/features/dependabot-alerts-vulnerable-calls.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Reference: Issue #6076 introduction of label for "vulnerable calls" in Dependabot alerts -versions: - fpt: '*' - ghec: '*' diff --git a/data/features/enterprise-code-rulesets.yml b/data/features/enterprise-code-rulesets.yml new file mode 100644 index 000000000000..db8739941b3d --- /dev/null +++ b/data/features/enterprise-code-rulesets.yml @@ -0,0 +1,4 @@ +# Reference: #16569 +# Enterprise code rulesets +versions: + ghec: '*' diff --git a/data/features/security-overview-feature-specific-alert-page.yml b/data/features/security-overview-feature-specific-alert-page.yml deleted file mode 100644 index 68f589e9ef4d..000000000000 --- a/data/features/security-overview-feature-specific-alert-page.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Reference: #7028. -# Documentation for feature-specific page for security overview at enterprise-level. -versions: - fpt: '*' - ghec: '*' - ghes: '>= 3.7' diff --git a/data/features/status-check-retention.yml b/data/features/status-check-retention.yml deleted file mode 100644 index c58c3f3fc122..000000000000 --- a/data/features/status-check-retention.yml +++ /dev/null @@ -1,4 +0,0 @@ -versions: - fpt: '*' - ghec: '*' - ghes: '>= 3.8' diff --git a/data/features/supply-chain-features-swift-support.yml b/data/features/supply-chain-features-swift-support.yml deleted file mode 100644 index c1a48b16fe64..000000000000 --- a/data/features/supply-chain-features-swift-support.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Reference: #10144. -# Advisory Database + Dependency Graph + Dependabot Alerts support Swift [GA] -versions: - fpt: '*' - ghec: '*' - ghes: '>=3.10' diff --git a/data/features/tag-protection-rules-deprecation.yml b/data/features/tag-protection-rules-deprecation.yml deleted file mode 100644 index 3b72b415a07c..000000000000 --- a/data/features/tag-protection-rules-deprecation.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Reference: Issue #12436 - Tag protection rules deprecation - -versions: - fpt: '*' - ghec: '*' - ghes: '>=3.16' diff --git a/data/features/viewscreen-and-notebooks.yml b/data/features/viewscreen-and-notebooks.yml deleted file mode 100644 index 4fe043a4479a..000000000000 --- a/data/features/viewscreen-and-notebooks.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Issues #7825 -# Standing up Viewscreen and Notebooks services to replace Render service -versions: - fpt: '*' - ghec: '*' - ghes: '>=3.7' diff --git a/data/release-notes/enterprise-server/3-15/1.yml b/data/release-notes/enterprise-server/3-15/1.yml index bf92ed5bcde1..c1e73f15d0cb 100644 --- a/data/release-notes/enterprise-server/3-15/1.yml +++ b/data/release-notes/enterprise-server/3-15/1.yml @@ -50,6 +50,8 @@ sections: - | When exporting repositories using the migrations REST API, prior to blob storage upload the tarball is staged in the root volume. For more disk capacity, the tarball will now be staged in the data volume. known_issues: + - | + Syntax highlighting does not work on the "Code" view of a file. This error will be fixed in the next release. [Updated: 2025-01-10] - | Admins setting up cluster high availability (HA) may encounter a `spokes` error when running `ghe-cluster-repl-status` if a new organization and repositories are created before using the `ghe-cluster-repl-bootstrap` command. To avoid this issue, complete the cluster HA setup with `ghe-cluster-repl-bootstrap` before creating new organizations and repositories. - | diff --git a/data/reusables/actions/about-environments.md b/data/reusables/actions/about-environments.md index 998b2b1c39e0..cb97e67f34c1 100644 --- a/data/reusables/actions/about-environments.md +++ b/data/reusables/actions/about-environments.md @@ -1 +1 @@ -Environments are used to describe a general deployment target like `production`, `staging`, or `development`. When a {% data variables.product.prodname_actions %} workflow deploys to an environment, the environment is displayed on the main page of the repository. You can use environments to require approval for a job to proceed, restrict which branches can trigger a workflow{% ifversion actions-custom-deployment-protection-rules-beta %}, gate deployments with custom deployment protection rules{% endif %}, or limit access to secrets. For more information about creating environments, see [AUTOTITLE](/actions/deployment/targeting-different-environments/managing-environments-for-deployment). +Environments are used to describe a general deployment target like `production`, `staging`, or `development`. When a {% data variables.product.prodname_actions %} workflow deploys to an environment, the environment is displayed on the main page of the repository. You can use environments to require approval for a job to proceed, restrict which branches can trigger a workflow, gate deployments with custom deployment protection rules, or limit access to secrets. For more information about creating environments, see [AUTOTITLE](/actions/deployment/targeting-different-environments/managing-environments-for-deployment). diff --git a/data/reusables/actions/about-oidc-short-overview.md b/data/reusables/actions/about-oidc-short-overview.md index 2bbcbd9cd490..7232f31662e8 100644 --- a/data/reusables/actions/about-oidc-short-overview.md +++ b/data/reusables/actions/about-oidc-short-overview.md @@ -1,2 +1,2 @@ -If your {% data variables.product.prodname_actions %} workflows need to access resources from a cloud provider that supports OpenID Connect (OIDC), you can configure your workflows to authenticate directly to the cloud provider. This will let you stop storing these credentials as long-lived secrets and provide other security benefits. For more information, see [AUTOTITLE](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect) +If your {% data variables.product.prodname_actions %} workflows need to access resources from a cloud provider that supports OpenID Connect (OIDC), you can configure your workflows to authenticate directly to the cloud provider. This will let you stop storing these credentials as long-lived secrets and provide other security benefits. For more information, see [AUTOTITLE](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect). diff --git a/data/reusables/actions/action-setup-go.md b/data/reusables/actions/action-setup-go.md index 4f051db1e7f2..8c1318dbfc6b 100644 --- a/data/reusables/actions/action-setup-go.md +++ b/data/reusables/actions/action-setup-go.md @@ -1 +1 @@ -actions/setup-go@{% ifversion actions-setup-go-default-cache-enabled %}v5{% else %}v3{% endif %} +actions/setup-go@v5 diff --git a/data/reusables/actions/actions-do-not-trigger-workflows.md b/data/reusables/actions/actions-do-not-trigger-workflows.md index 5dfa0da36be2..01a0e89c3f80 100644 --- a/data/reusables/actions/actions-do-not-trigger-workflows.md +++ b/data/reusables/actions/actions-do-not-trigger-workflows.md @@ -1 +1 @@ -When you use the repository's `GITHUB_TOKEN` to perform tasks, events triggered by the `GITHUB_TOKEN`{% ifversion actions-token-updated-triggers %}, with the exception of `workflow_dispatch` and `repository_dispatch`,{% endif %} will not create a new workflow run. This prevents you from accidentally creating recursive workflow runs. For example, if a workflow run pushes code using the repository's `GITHUB_TOKEN`, a new workflow will not run even when the repository contains a workflow configured to run when `push` events occur. +When you use the repository's `GITHUB_TOKEN` to perform tasks, events triggered by the `GITHUB_TOKEN`, with the exception of `workflow_dispatch` and `repository_dispatch`, will not create a new workflow run. This prevents you from accidentally creating recursive workflow runs. For example, if a workflow run pushes code using the repository's `GITHUB_TOKEN`, a new workflow will not run even when the repository contains a workflow configured to run when `push` events occur. diff --git a/data/reusables/actions/actions-use-policy-settings.md b/data/reusables/actions/actions-use-policy-settings.md index 6dfff5f003b7..14d3c9ef5c98 100644 --- a/data/reusables/actions/actions-use-policy-settings.md +++ b/data/reusables/actions/actions-use-policy-settings.md @@ -1,3 +1,3 @@ -If you choose {% data reusables.actions.policy-label-for-select-actions-workflows %}, actions {% ifversion actions-workflow-policy %}and reusable workflows{% endif %} within your {% ifversion ghec or ghes %}enterprise{% else %}organization{% endif %} are allowed, and there are additional options for allowing other specific actions{% ifversion actions-workflow-policy %} and reusable workflows{% endif %}. For more information, see "[Allowing select actions{% ifversion actions-workflow-policy %} and reusable workflows{% endif %} to run](#allowing-select-actions{% ifversion actions-workflow-policy %}-and-reusable-workflows{% endif %}-to-run)." +If you choose {% data reusables.actions.policy-label-for-select-actions-workflows %}, actions {% ifversion actions-workflow-policy %}and reusable workflows{% endif %} within your {% ifversion ghec or ghes %}enterprise{% else %}organization{% endif %} are allowed, and there are additional options for allowing other specific actions{% ifversion actions-workflow-policy %} and reusable workflows{% endif %}. For more information, see [Allowing select actions{% ifversion actions-workflow-policy %} and reusable workflows{% endif %} to run](#allowing-select-actions{% ifversion actions-workflow-policy %}-and-reusable-workflows{% endif %}-to-run). {% ifversion ghec or fpt %}When you allow actions{% ifversion actions-workflow-policy %} and reusable workflows from only in{% else %} local to{% endif %} your {% ifversion ghec or ghes %}enterprise{% else %}organization{% endif %}, the policy blocks all access to actions authored by {% data variables.product.prodname_dotcom %}. For example, the [`actions/checkout`](https://github.com/actions/checkout) action would not be accessible.{% endif %} diff --git a/data/reusables/actions/change-retention-period-for-artifacts-logs.md b/data/reusables/actions/change-retention-period-for-artifacts-logs.md index 77c70f2d1a0a..afb53f1d9626 100644 --- a/data/reusables/actions/change-retention-period-for-artifacts-logs.md +++ b/data/reusables/actions/change-retention-period-for-artifacts-logs.md @@ -1,2 +1,2 @@ -1. {% ifversion actions-cache-admin-ui %}In the "Artifact, log, and cache settings" section, u{% else %}U{% endif %}nder **Artifact and log retention**, enter a new value. +1. {% ifversion ghes %}In the "Artifact, log, and cache settings" section, u{% else %}U{% endif %}nder **Artifact and log retention**, enter a new value. 1. Click **Save** to apply the change. diff --git a/data/reusables/actions/configure-storage-provider-platform-commands.md b/data/reusables/actions/configure-storage-provider-platform-commands.md index 5799a22b88cc..e04285571957 100644 --- a/data/reusables/actions/configure-storage-provider-platform-commands.md +++ b/data/reusables/actions/configure-storage-provider-platform-commands.md @@ -10,11 +10,8 @@ ghe-config secrets.actions.storage.blob-provider "s3" ``` -{%- ifversion actions-ghes-gcp-storage %} * Google Cloud Storage: - + ```shell copy ghe-config secrets.actions.storage.blob-provider "gcs" ``` - -{%- endif %} diff --git a/data/reusables/actions/configure-storage-provider.md b/data/reusables/actions/configure-storage-provider.md index 09a86c93735a..3adf422c12c8 100644 --- a/data/reusables/actions/configure-storage-provider.md +++ b/data/reusables/actions/configure-storage-provider.md @@ -21,7 +21,6 @@ ghe-config secrets.actions.storage.s3.force-path-style true ``` -{%- ifversion actions-ghes-gcp-storage %} * Google Cloud Storage: ```shell copy @@ -30,5 +29,3 @@ ghe-config secrets.actions.storage.gcs.access-key-id "HMAC ACCESS ID" ghe-config secrets.actions.storage.gcs.access-secret "HMAC SECRET" ``` - -{%- endif %} diff --git a/data/reusables/actions/disable-selfhosted-runners-crossrefs.md b/data/reusables/actions/disable-selfhosted-runners-crossrefs.md index 2cc86e9ea8fb..d275c5ae2767 100644 --- a/data/reusables/actions/disable-selfhosted-runners-crossrefs.md +++ b/data/reusables/actions/disable-selfhosted-runners-crossrefs.md @@ -1,4 +1,4 @@ -{% ifversion ghec or ghes %}Enterprise owners and organization {% elsif fpt %}Organization {% endif %}owners can choose which repositories are allowed to create repository-level self-hosted runners. {% ifversion custom-org-roles %}Users with the “Manage organization runners and runner groups” permission can only choose which repositories are allowed to create repository-level self-hosted runners for repositories in your organization{% endif %}. +{% ifversion ghec or ghes %}Enterprise owners and organization {% elsif fpt %}Organization {% endif %}owners can choose which repositories are allowed to create repository-level self-hosted runners. {% ifversion custom-org-roles %}Users with the “Manage organization runners and runner groups” permission can only choose which repositories are allowed to create repository-level self-hosted runners for repositories in your organization.{% endif %} {% ifversion custom-org-roles %}For more information about custom organization roles, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles).{% endif %} diff --git a/data/reusables/actions/enable-debug-logging.md b/data/reusables/actions/enable-debug-logging.md index 289dbc08f7c8..5632522cef52 100644 --- a/data/reusables/actions/enable-debug-logging.md +++ b/data/reusables/actions/enable-debug-logging.md @@ -1,4 +1,2 @@ -{% ifversion debug-reruns %} 1. Optionally, to enable runner diagnostic logging and step debug logging for the re-run, select **Enable debug logging**. 1. Click **Re-run jobs**. -{% endif %} diff --git a/data/reusables/actions/enterprise-storage-ha-backups.md b/data/reusables/actions/enterprise-storage-ha-backups.md index 1fc6cd0c6e32..7dcba0f0dde8 100644 --- a/data/reusables/actions/enterprise-storage-ha-backups.md +++ b/data/reusables/actions/enterprise-storage-ha-backups.md @@ -1 +1 @@ -{% data variables.product.prodname_actions %} uses external storage to store workflow artifacts and logs. This data is stored on your external provider, such as Azure blob storage, Amazon S3,{% ifversion actions-ghes-gcp-storage %} Google Cloud Storage,{% endif %} or MinIO. As a result, {% data variables.product.prodname_ghe_server %} backups and {% data variables.product.prodname_ghe_server %} high availability configurations do not provide protection for the data stored on this external storage, and instead rely on the data protection and replication provided by the external storage provider, such as Azure{% ifversion actions-ghes-gcp-storage %}, Google Cloud,{% endif %} or AWS. +{% data variables.product.prodname_actions %} uses external storage to store workflow artifacts and logs. This data is stored on your external provider, such as Azure blob storage, Amazon S3, Google Cloud Storage, or MinIO. As a result, {% data variables.product.prodname_ghe_server %} backups and {% data variables.product.prodname_ghe_server %} high availability configurations do not provide protection for the data stored on this external storage, and instead rely on the data protection and replication provided by the external storage provider, such as Azure, Google Cloud, or AWS. diff --git a/data/reusables/actions/github-token-scope-descriptions.md b/data/reusables/actions/github-token-scope-descriptions.md index cfb25b3a4329..58d10bf9c534 100644 --- a/data/reusables/actions/github-token-scope-descriptions.md +++ b/data/reusables/actions/github-token-scope-descriptions.md @@ -11,9 +11,7 @@ Available permissions and details of what each allows an action to do: | `checks` | Work with check runs and check suites. For example, `checks: write` permits an action to create a check run. For more information, see [AUTOTITLE](/rest/overview/permissions-required-for-github-apps?apiVersion=2022-11-28#repository-permissions-for-checks). | | `contents` | Work with the contents of the repository. For example, `contents: read` permits an action to list the commits, and `contents: write` allows the action to create a release. For more information, see [AUTOTITLE](/rest/overview/permissions-required-for-github-apps?apiVersion=2022-11-28#repository-permissions-for-contents). | | `deployments` | Work with deployments. For example, `deployments: write` permits an action to create a new deployment. For more information, see [AUTOTITLE](/rest/overview/permissions-required-for-github-apps?apiVersion=2022-11-28#repository-permissions-for-deployments). | -| {% ifversion discussions %} | | `discussions` | Work with GitHub Discussions. For example, `discussions: write` permits an action to close or delete a discussion. For more information, see [AUTOTITLE](/graphql/guides/using-the-graphql-api-for-discussions). | -| {% endif %} | | {% ifversion fpt or ghec %} | | `id-token` | Fetch an OpenID Connect (OIDC) token. This requires `id-token: write`. For more information, see [AUTOTITLE](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#updating-your-actions-for-oidc) | | {% endif %} | diff --git a/data/reusables/actions/inputs-vs-github-event-inputs.md b/data/reusables/actions/inputs-vs-github-event-inputs.md index 422e6d670c64..cf9dff3cbbc1 100644 --- a/data/reusables/actions/inputs-vs-github-event-inputs.md +++ b/data/reusables/actions/inputs-vs-github-event-inputs.md @@ -1,8 +1,4 @@ -{% ifversion actions-unified-inputs %} - > [!NOTE] > * The workflow will also receive the inputs in the `github.event.inputs` context. The information in the `inputs` context and `github.event.inputs` context is identical except that the `inputs` context preserves Boolean values as Booleans instead of converting them to strings. The `choice` type resolves to a string and is a single selectable option. > * The maximum number of top-level properties for `inputs` is 10. > * The maximum payload for `inputs` is 65,535 characters. - -{% endif %} diff --git a/data/reusables/actions/pass-inputs-to-reusable-workflows.md b/data/reusables/actions/pass-inputs-to-reusable-workflows.md index d862981d9168..990bc6cc1b2b 100644 --- a/data/reusables/actions/pass-inputs-to-reusable-workflows.md +++ b/data/reusables/actions/pass-inputs-to-reusable-workflows.md @@ -14,7 +14,6 @@ jobs: {% endraw %} -{% ifversion actions-inherit-secrets-reusable-workflows %} Workflows that call reusable workflows in the same organization or enterprise can use the `inherit` keyword to implicitly pass the secrets. {% raw %} @@ -29,5 +28,3 @@ jobs: ``` {% endraw %} - -{% endif %} diff --git a/data/reusables/actions/ref-description.md b/data/reusables/actions/ref-description.md index 70fa9f1e1446..dc86960f7f13 100644 --- a/data/reusables/actions/ref-description.md +++ b/data/reusables/actions/ref-description.md @@ -1 +1 @@ -The fully-formed ref of the branch or tag that triggered the workflow run. For workflows triggered by `push`, this is the branch or tag ref that was pushed. For workflows triggered by `pull_request`, this is the pull request merge branch. For workflows triggered by `release`, this is the release tag created. For other triggers, this is the branch or tag ref that triggered the workflow run. This is only set if a branch or tag is available for the event type. The ref given is fully-formed, meaning that for branches the format is `refs/heads/`, for pull requests it is `refs/pull//merge`, and for tags it is `refs/tags/`. For example, `refs/heads/feature-branch-1`. +The fully-formed ref of the branch or tag that triggered the workflow run. For workflows triggered by `push`, this is the branch or tag ref that was pushed. For workflows triggered by `pull_request`, this is the pull request merge branch. For workflows triggered by `release`, this is the release tag created. For other triggers, this is the branch or tag ref that triggered the workflow run. This is only set if a branch or tag is available for the event type. The ref given is fully-formed, meaning that for branches the format is `refs/heads/`. For pull requests events `except pull_request_target`, it is `refs/pull//merge`. `pull_request_target` events have the `ref` from the base branch. For tags it is `refs/tags/`. For example, `refs/heads/feature-branch-1`. diff --git a/data/reusables/actions/viewing-actions-metrics.md b/data/reusables/actions/viewing-actions-metrics.md index 765dea68c5a3..27918faf6afc 100644 --- a/data/reusables/actions/viewing-actions-metrics.md +++ b/data/reusables/actions/viewing-actions-metrics.md @@ -1,6 +1,6 @@ 1. In the "Insights" navigation menu, click **Actions Usage Metrics** or click **Actions Performance Metrics**. 1. Optionally, to select a time period to view usage metrics for, choose an option from the **Period** drop down menu at the top right of the page. For more information, see [Understanding {% data variables.product.prodname_actions %} metrics aggregation](#understanding-github-actions-metrics-aggregation). -1. Click on the tab that contains the metrics you would like to view. For more information, see "[About {% data variables.product.prodname_actions %} usage metrics](#about-github-actions-usage-metrics) or [About {% data variables.product.prodname_actions %} performance metrics](#about-github-actions-performance-metrics). +1. Click on the tab that contains the metrics you would like to view. For more information, see [About {% data variables.product.prodname_actions %} usage metrics](#about-github-actions-usage-metrics) or [About {% data variables.product.prodname_actions %} performance metrics](#about-github-actions-performance-metrics). 1. Optionally, to filter the data displayed in a tab, create a filter. 1. Click on the **{% octicon "filter" aria-hidden="true" %} Filter** button. 1. Click **{% octicon "plus" aria-hidden="true" %} Add a filter**. diff --git a/data/reusables/actions/workflow-basic-example-and-explanation.md b/data/reusables/actions/workflow-basic-example-and-explanation.md index 5b13d6d031c5..8e34e9263e56 100644 --- a/data/reusables/actions/workflow-basic-example-and-explanation.md +++ b/data/reusables/actions/workflow-basic-example-and-explanation.md @@ -35,10 +35,10 @@ To help you understand how YAML syntax is used to create a workflow file, this s # Optional - The name of the workflow as it will appear in the "Actions" tab of the {% data variables.product.prodname_dotcom %} repository. If this field is omitted, the name of the workflow file will be used instead. name: learn-github-actions -# Optional - The name for workflow runs generated from the workflow, which will appear in the list of workflow runs on your repository's "Actions" tab. This example uses an expression with the `github` context to display the username of the actor that triggered the workflow run. For more information, see "[AUTOTITLE](/actions/using-workflows/workflow-syntax-for-github-actions#run-name)." +# Optional - The name for workflow runs generated from the workflow, which will appear in the list of workflow runs on your repository's "Actions" tab. This example uses an expression with the `github` context to display the username of the actor that triggered the workflow run. For more information, see [AUTOTITLE](/actions/using-workflows/workflow-syntax-for-github-actions#run-name). run-name: {% raw %}${{ github.actor }}{% endraw %} is learning GitHub Actions -# Specifies the trigger for this workflow. This example uses the `push` event, so a workflow run is triggered every time someone pushes a change to the repository or merges a pull request. This is triggered by a push to every branch; for examples of syntax that runs only on pushes to specific branches, paths, or tags, see "[AUTOTITLE](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)." +# Specifies the trigger for this workflow. This example uses the `push` event, so a workflow run is triggered every time someone pushes a change to the repository or merges a pull request. This is triggered by a push to every branch; for examples of syntax that runs only on pushes to specific branches, paths, or tags, see [AUTOTITLE](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore). on: [push] # Groups together all the jobs that run in the `learn-github-actions` workflow. @@ -47,7 +47,7 @@ jobs: # Defines a job named `check-bats-version`. The child keys will define properties of the job. check-bats-version: -# Configures the job to run on the latest version of an Ubuntu Linux runner. This means that the job will execute on a fresh virtual machine hosted by GitHub. For syntax examples using other runners, see "[AUTOTITLE](/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on)" +# Configures the job to run on the latest version of an Ubuntu Linux runner. This means that the job will execute on a fresh virtual machine hosted by GitHub. For syntax examples using other runners, see [AUTOTITLE](/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on) runs-on: ubuntu-latest # Groups together all the steps that run in the `check-bats-version` job. Each item nested under this section is a separate action or shell script. diff --git a/data/reusables/actions/workflow-dispatch-inputs-example.md b/data/reusables/actions/workflow-dispatch-inputs-example.md index d414f1f8cc82..a191aba86425 100644 --- a/data/reusables/actions/workflow-dispatch-inputs-example.md +++ b/data/reusables/actions/workflow-dispatch-inputs-example.md @@ -27,8 +27,8 @@ on: jobs: print-tag: runs-on: ubuntu-latest - if: {% ifversion actions-unified-inputs %}{% raw %} ${{ inputs.print_tags }} {% endraw %}{% else %}{% raw %} ${{ github.event.inputs.print_tags == 'true' }} {% endraw %}{% endif %} + if:{% raw %} ${{ inputs.print_tags }} {% endraw %} steps: - name: Print the input tag to STDOUT - run: {% ifversion actions-unified-inputs %}echo {% raw %} The tags are ${{ inputs.tags }} {% endraw %}{% else %}echo {% raw %} The tags are ${{ github.event.inputs.tags }} {% endraw %}{% endif %} + run: echo {% raw %} The tags are ${{ inputs.tags }} {% endraw %} ``` diff --git a/data/reusables/actions/workflow-dispatch-inputs.md b/data/reusables/actions/workflow-dispatch-inputs.md index 9a8d0db95559..204a6e805377 100644 --- a/data/reusables/actions/workflow-dispatch-inputs.md +++ b/data/reusables/actions/workflow-dispatch-inputs.md @@ -1,3 +1,3 @@ -The triggered workflow receives the inputs in the {% ifversion actions-unified-inputs %}`inputs`{% else %}`github.event.inputs`{% endif %} context. For more information, see "[Contexts]({% ifversion actions-unified-inputs %}/actions/learn-github-actions/contexts#inputs-context{% else %}/actions/learn-github-actions/contexts#github-context{% endif %})." +The triggered workflow receives the inputs in the `inputs` context. For more information, see [Contexts](/actions/learn-github-actions/contexts#inputs-context). {% data reusables.actions.inputs-vs-github-event-inputs %} diff --git a/data/reusables/actions/workflow-pr-approval-permissions-intro.md b/data/reusables/actions/workflow-pr-approval-permissions-intro.md index 1806d22a032a..110b86506a5e 100644 --- a/data/reusables/actions/workflow-pr-approval-permissions-intro.md +++ b/data/reusables/actions/workflow-pr-approval-permissions-intro.md @@ -1 +1 @@ -You can choose to allow or prevent {% data variables.product.prodname_actions %} workflows from{% ifversion allow-actions-to-approve-pr-with-ent-repo %} creating or{% endif %} approving pull requests. +You can choose to allow or prevent {% data variables.product.prodname_actions %} workflows from creating or approving pull requests. diff --git a/data/reusables/actions/workflows/github-token-access.md b/data/reusables/actions/workflows/github-token-access.md index e729af1ab102..7012990f4a8e 100644 --- a/data/reusables/actions/workflows/github-token-access.md +++ b/data/reusables/actions/workflows/github-token-access.md @@ -1 +1 @@ -1. Under "Workflow permissions", choose whether you want the `GITHUB_TOKEN` to have read and write access for all permissions (the permissive setting), or just read access for the `contents` {% ifversion actions-default-workflow-permissions-restrictive %}and `packages` permissions{% else %}permission{% endif %} (the restricted setting). +1. Under "Workflow permissions", choose whether you want the `GITHUB_TOKEN` to have read and write access for all permissions (the permissive setting), or just read access for the `contents` and `packages` permissions (the restricted setting). diff --git a/data/reusables/actions/workflows/required-workflow-prerequisites.md b/data/reusables/actions/workflows/required-workflow-prerequisites.md index d35f1ba419c3..a23a793e0c64 100644 --- a/data/reusables/actions/workflows/required-workflow-prerequisites.md +++ b/data/reusables/actions/workflows/required-workflow-prerequisites.md @@ -1,8 +1,8 @@ * {% data variables.product.prodname_actions %} must be enabled for a repository in the organization's settings in order for required workflows to run. Once enabled at an organization-level, required workflows will run even when {% data variables.product.prodname_actions %} is disabled in the repository's settings. For more information on managing {% data variables.product.prodname_actions %} in your organization's repositories, see [AUTOTITLE](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#managing-github-actions-permissions-for-your-organization). * Required workflows are available for organizations and only in repositories where the organization's plan supports required status checks. If required status checks are not supported, the workflow will still run, but it will not be a required check and will not block merging. For more information about support for required status checks, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches). * The repository's default branch must match the organization's default branch setting in order for required workflows to run as required status checks. If the default branch names do not match, the workflow will still run, but it will not be a required check. For more information about managing default branch names, see [AUTOTITLE](/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization) and [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch). -* For required workflows to run, the pull request's source repository must be in the same organization as the target repository. {% data variables.product.product_name %} will source the required workflow from {% ifversion actions-required-workflow-improvements %}a specified branch, tag, or commit SHA {% else %}the HEAD commit of the default branch {% endif %}from the repository containing the workflow. +* For required workflows to run, the pull request's source repository must be in the same organization as the target repository. {% data variables.product.product_name %} will source the required workflow from a specified branch, tag, or commit SHA from the repository containing the workflow. * Secrets used in a required workflow should be created at either the organization level or in the target repositories. * Secrets in the source repository will not be fetched when a workflow runs in the target repository. -{% ifversion actions-required-workflow-improvements %}* When a workflow is run as a required workflow it will ignore all the filters in the `on:` section, for example: `branches`, `branches-ignore`, `paths`, `types` etc. The required workflow will run only for the `pull_request` and `pull_request_target` default events. For more information on default activity types, see [AUTOTITLE](/actions/using-workflows/events-that-trigger-workflows#pull_request).{% endif %} +* When a workflow is run as a required workflow it will ignore all the filters in the `on:` section, for example: `branches`, `branches-ignore`, `paths`, `types` etc. The required workflow will run only for the `pull_request` and `pull_request_target` default events. For more information on default activity types, see [AUTOTITLE](/actions/using-workflows/events-that-trigger-workflows#pull_request). * Required workflows are not automatically triggered on already existing pull requests even though they automatically appear as expected checks. To trigger required workflows for an already existing pull request, push a new change to that pull request. diff --git a/data/reusables/actions/workflows/required-workflow-source-notes.md b/data/reusables/actions/workflows/required-workflow-source-notes.md index cf3ad2c3767a..2853e8896de6 100644 --- a/data/reusables/actions/workflows/required-workflow-source-notes.md +++ b/data/reusables/actions/workflows/required-workflow-source-notes.md @@ -2,10 +2,8 @@ * If the required workflow is contained in a private {% ifversion ghes or ghec %}or internal {% endif %}repository, you must ensure that workflows within the repository are accessible by other repositories in your organization. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#managing-access-for-a-private-repository){% ifversion ghes or ghec %} and [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#allowing-access-to-components-in-an-internal-repository){% endif %}. * Workflows stored in a public repository can be configured as required workflows for any repository in your organization. Workflows stored in a private repository can only be configured as required workflows for other private repositories in your organization. {% ifversion ghes or ghec %} Workflows stored in internal repositories can be configured as required workflows for internal and private repositories in your organization.{% endif %} * {% data variables.product.prodname_codeql %} is not supported in required workflows because {% data variables.product.prodname_codeql %} requires configuration at the repository level. For information on configuring code scanning, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning). -{% ifversion actions-required-workflow-improvements %} {% ifversion fpt or ghec %} * To push to a branch where required workflows are enforced at the organizational level, create a pull request to make the necessary changes. You cannot push directly to branches with required workflow enforcements. * If you want to allow direct pushes for a particular repository, you must remove the repository as a target from respective required workflows. {% endif %} * Required workflows can be referenced using any branch, tag, or commit SHA from the repository containing the workflow file. -{% endif %} diff --git a/data/reusables/advanced-formatting/administrator-must-enable-mapping.md b/data/reusables/advanced-formatting/administrator-must-enable-mapping.md index fc2f5ff2abd7..3d8697c34877 100644 --- a/data/reusables/advanced-formatting/administrator-must-enable-mapping.md +++ b/data/reusables/advanced-formatting/administrator-must-enable-mapping.md @@ -1,5 +1,5 @@ -{% ifversion azure-maps %} +{% ifversion ghes %} -To display interactive maps, a site administrator must configure the feature for {% data variables.location.product_location %}. For more information, see "[AUTOTITLE](/admin/configuration/configuring-user-applications-for-your-enterprise/configuring-interactive-maps)." +To display interactive maps, a site administrator must configure the feature for {% data variables.location.product_location %}. For more information, see [AUTOTITLE](/admin/configuration/configuring-user-applications-for-your-enterprise/configuring-interactive-maps). {% endif %} diff --git a/data/reusables/advanced-security/about-ghas-organization-policy.md b/data/reusables/advanced-security/about-ghas-organization-policy.md index 5b4ea8d90f67..16ba19a1d4ab 100644 --- a/data/reusables/advanced-security/about-ghas-organization-policy.md +++ b/data/reusables/advanced-security/about-ghas-organization-policy.md @@ -1,5 +1,5 @@ -{% data variables.product.company_short %} bills for {% data variables.product.prodname_advanced_security %} on a per-committer basis. See "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security)." +{% data variables.product.company_short %} bills for {% data variables.product.prodname_advanced_security %} on a per-committer basis. See [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security). You can enforce a policy that controls whether repository administrators are allowed to enable features for {% data variables.product.prodname_advanced_security %} in an organization's repositories. You can configure a policy for all organizations owned by your enterprise account, or for individual organizations that you choose. -Disallowing {% data variables.product.prodname_advanced_security %} for an organization prevents repository administrators from enabling {% data variables.product.prodname_advanced_security %} features for additional repositories, but does not disable the features for repositories where the features are already enabled. For more information about configuration of {% data variables.product.prodname_advanced_security %} features, see "[AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization)" or "[AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)." +Disallowing {% data variables.product.prodname_advanced_security %} for an organization prevents repository administrators from enabling {% data variables.product.prodname_advanced_security %} features for additional repositories, but does not disable the features for repositories where the features are already enabled. For more information about configuration of {% data variables.product.prodname_advanced_security %} features, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization) or [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository). diff --git a/data/reusables/advanced-security/check-for-ghas-license.md b/data/reusables/advanced-security/check-for-ghas-license.md index 788eb885a2d8..d3aef0afb9d1 100644 --- a/data/reusables/advanced-security/check-for-ghas-license.md +++ b/data/reusables/advanced-security/check-for-ghas-license.md @@ -1 +1 @@ -You can identify if your enterprise has a {% data variables.product.prodname_GH_advanced_security %} license by reviewing your enterprise settings. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise#checking-whether-your-license-includes-github-advanced-security)." +You can identify if your enterprise has a {% data variables.product.prodname_GH_advanced_security %} license by reviewing your enterprise settings. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise#checking-whether-your-license-includes-github-advanced-security). diff --git a/data/reusables/advanced-security/ghas-helps-developers.md b/data/reusables/advanced-security/ghas-helps-developers.md index adfde488bc3d..9d391c8ee218 100644 --- a/data/reusables/advanced-security/ghas-helps-developers.md +++ b/data/reusables/advanced-security/ghas-helps-developers.md @@ -1 +1 @@ -{% data variables.product.prodname_GH_advanced_security %} helps developers improve and maintain the security and quality of code. For more information, see "[AUTOTITLE](/get-started/learning-about-github/about-github-advanced-security)." +{% data variables.product.prodname_GH_advanced_security %} helps developers improve and maintain the security and quality of code. For more information, see [AUTOTITLE](/get-started/learning-about-github/about-github-advanced-security). diff --git a/data/reusables/advanced-security/ghas-must-be-enabled.md b/data/reusables/advanced-security/ghas-must-be-enabled.md index 2d72473fecae..a99266b02865 100644 --- a/data/reusables/advanced-security/ghas-must-be-enabled.md +++ b/data/reusables/advanced-security/ghas-must-be-enabled.md @@ -1 +1 @@ -{% data variables.product.prodname_GH_advanced_security %} features must be available to the organization for this policy to take effect. For more information, see "[Enforcing a policy for the use of {% data variables.product.prodname_GH_advanced_security %} in your enterprise's organizations](#enforcing-a-policy-for-the-use-of-github-advanced-security-in-your-enterprises-organizations)." +{% data variables.product.prodname_GH_advanced_security %} features must be available to the organization for this policy to take effect. For more information, see [Enforcing a policy for the use of {% data variables.product.prodname_GH_advanced_security %} in your enterprise's organizations](#enforcing-a-policy-for-the-use-of-github-advanced-security-in-your-enterprises-organizations). diff --git a/data/reusables/advanced-security/ghas-trial.md b/data/reusables/advanced-security/ghas-trial.md index 9bb719ac8bab..0b5ba75c5b4b 100644 --- a/data/reusables/advanced-security/ghas-trial.md +++ b/data/reusables/advanced-security/ghas-trial.md @@ -1,2 +1,2 @@ -{% ifversion ghec %}For information about how you can try {% data variables.product.prodname_GH_advanced_security %} for free, see "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security)." -{% elsif fpt %}For information about how you can try {% data variables.product.prodname_enterprise %} with {% data variables.product.prodname_GH_advanced_security %} for free, see "[AUTOTITLE](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud)" and "[AUTOTITLE](/enterprise-cloud@latest/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security#setting-up-your-trial-of-github-advanced-security)" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} +{% ifversion ghec %}For information about how you can try {% data variables.product.prodname_GH_advanced_security %} for free, see [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security). +{% elsif fpt %}For information about how you can try {% data variables.product.prodname_enterprise %} with {% data variables.product.prodname_GH_advanced_security %} for free, see [AUTOTITLE](/enterprise-cloud@latest/admin/overview/setting-up-a-trial-of-github-enterprise-cloud) and [AUTOTITLE](/enterprise-cloud@latest/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/setting-up-a-trial-of-github-advanced-security#setting-up-your-trial-of-github-advanced-security) in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} diff --git a/data/reusables/advanced-security/more-info-ghas.md b/data/reusables/advanced-security/more-info-ghas.md index ebbc3664227f..cee0cd9db703 100644 --- a/data/reusables/advanced-security/more-info-ghas.md +++ b/data/reusables/advanced-security/more-info-ghas.md @@ -1 +1 @@ -For more information, see "[AUTOTITLE](/get-started/learning-about-github/about-github-advanced-security)." +For more information, see [AUTOTITLE](/get-started/learning-about-github/about-github-advanced-security). diff --git a/data/reusables/advanced-security/note-org-enable-uses-seats.md b/data/reusables/advanced-security/note-org-enable-uses-seats.md index accfe3bc22fe..fe3928696d92 100644 --- a/data/reusables/advanced-security/note-org-enable-uses-seats.md +++ b/data/reusables/advanced-security/note-org-enable-uses-seats.md @@ -1,6 +1,6 @@ {% ifversion ghes or ghec %} > [!NOTE] -> If you enable {% data variables.product.prodname_GH_advanced_security %}, active committers to these repositories will use {% data variables.product.prodname_GH_advanced_security %} {% ifversion ghas-billing-UI-update %}licenses{% else %}seats{% endif %}. This option is deactivated if you have exceeded your license capacity. {% ifversion fpt or ghec %}See "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security)."{% endif %} +> If you enable {% data variables.product.prodname_GH_advanced_security %}, active committers to these repositories will use {% data variables.product.prodname_GH_advanced_security %} {% ifversion ghas-billing-UI-update %}licenses{% else %}seats{% endif %}. This option is deactivated if you have exceeded your license capacity. {% ifversion fpt or ghec %}See [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security).{% endif %} {% endif %} diff --git a/data/reusables/advanced-security/purchase-ghas.md b/data/reusables/advanced-security/purchase-ghas.md index 61560a0c2b43..c5147a131c03 100644 --- a/data/reusables/advanced-security/purchase-ghas.md +++ b/data/reusables/advanced-security/purchase-ghas.md @@ -1,4 +1,4 @@ -1. Under "How many committers do you want to include?", enter the number of committers you want to purchase licenses for. For more information about committer numbers, see "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security)." +1. Under "How many committers do you want to include?", enter the number of committers you want to purchase licenses for. For more information about committer numbers, see [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security). You won't see this option if you're enrolled in usage-based billing for {% data variables.product.prodname_GH_advanced_security %} licenses. 1. Confirm your billing information and payment method. diff --git a/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md b/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md index 4bbab8ffbe98..765263a76d04 100644 --- a/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md +++ b/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md @@ -1,6 +1,6 @@ 1. Enter the details for your new custom pattern. You must at least provide the name for your pattern, and a regular expression for the format of your secret pattern. 1. In the "Pattern name" field, type a name for your pattern. - 1. In the "Secret format" field, type a regular expression for the format of your secret pattern.{% ifversion secret-scanning-custom-pattern-ai-generated %} Alternatively, you can use the generator to generate a regular expression for you. For more information, see "[AUTOTITLE](/code-security/secret-scanning/copilot-secret-scanning/generating-regular-expressions-for-custom-patterns-with-copilot-secret-scanning)."{% endif %} + 1. In the "Secret format" field, type a regular expression for the format of your secret pattern.{% ifversion secret-scanning-custom-pattern-ai-generated %} Alternatively, you can use the generator to generate a regular expression for you. For more information, see [AUTOTITLE](/code-security/secret-scanning/copilot-secret-scanning/generating-regular-expressions-for-custom-patterns-with-copilot-secret-scanning).{% endif %} 1. You can click **More options {% octicon "chevron-down" aria-hidden="true" %}** to provide other surrounding content or additional match requirements for the secret format. 1. Provide a sample test string to make sure your configuration is matching the patterns you expect. diff --git a/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md b/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md index edbd962a07ce..81a3c0c0e6d5 100644 --- a/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md +++ b/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md @@ -1,7 +1,2 @@ -{%- ifversion custom-pattern-dry-run-ga %} 1. Search for and select up to 10 repositories where you want to perform the dry run. 1. When you're ready to test your new custom pattern, click **Run**. -{%- else %} -1. Search for and select up to 10 repositories where you want to perform the dry run. -1. When you're ready to test your new custom pattern, click **Dry run**. -{%- endif %} diff --git a/data/reusables/advanced-security/secret-scanning-dry-run-select-repos.md b/data/reusables/advanced-security/secret-scanning-dry-run-select-repos.md index 0d58fa715f40..ce163b4a76ea 100644 --- a/data/reusables/advanced-security/secret-scanning-dry-run-select-repos.md +++ b/data/reusables/advanced-security/secret-scanning-dry-run-select-repos.md @@ -1,9 +1,4 @@ -{%- ifversion custom-pattern-dry-run-ga %} 1. Select the repositories where you want to perform the dry run. * To perform the dry run across the entire organization, select **All repositories in the organization**. * To specify the repositories where you want to perform the dry run, select **Selected repositories**, then search for and select up to 10 repositories. 1. When you're ready to test your new custom pattern, click **Run**. -{%- else %} -1. Search for and select up to 10 repositories where you want to perform the dry run. -1. When you're ready to test your new custom pattern, click **Dry run**. -{%- endif %} diff --git a/data/reusables/advanced-security/secret-scanning-enable-push-protection-custom-pattern.md b/data/reusables/advanced-security/secret-scanning-enable-push-protection-custom-pattern.md index ece63ac154b1..b316774406c6 100644 --- a/data/reusables/advanced-security/secret-scanning-enable-push-protection-custom-pattern.md +++ b/data/reusables/advanced-security/secret-scanning-enable-push-protection-custom-pattern.md @@ -1,7 +1,7 @@ 1. Optionally, to enable push protection for your custom pattern, click **Enable**. > [!NOTE] - > * Push protection for custom patterns will only apply to repositories that have {% data variables.product.prodname_secret_scanning %} as push protection enabled. For more information about enabling push protection, see "[AUTOTITLE](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." + > * Push protection for custom patterns will only apply to repositories that have {% data variables.product.prodname_secret_scanning %} as push protection enabled. For more information about enabling push protection, see [AUTOTITLE](/code-security/secret-scanning/protecting-pushes-with-secret-scanning). > * Enabling push protection for commonly found custom patterns can be disruptive to contributors. ![Screenshot of custom pattern page with the button to enable push protection emphasized.](/assets/images/help/repository/secret-scanning-custom-pattern-enable-push-protection.png) diff --git a/data/reusables/advanced-security/secret-scanning-generate-regular-expression-custom-pattern.md b/data/reusables/advanced-security/secret-scanning-generate-regular-expression-custom-pattern.md index 8824fed109e6..7cbdffaf806c 100644 --- a/data/reusables/advanced-security/secret-scanning-generate-regular-expression-custom-pattern.md +++ b/data/reusables/advanced-security/secret-scanning-generate-regular-expression-custom-pattern.md @@ -2,7 +2,7 @@ 1. On the top right, click **Generate with AI**. > [!NOTE] - > You can enter a regular expression manually instead of using the generator, by typing a regular expression for the format of your secret pattern in the "Secret format" field. For more information, see "[Defining a custom pattern for a repository](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-a-repository)" or "[Defining a custom pattern for an organization](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-an-organization)." + > You can enter a regular expression manually instead of using the generator, by typing a regular expression for the format of your secret pattern in the "Secret format" field. For more information, see [Defining a custom pattern for a repository](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-a-repository) or [Defining a custom pattern for an organization](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-an-organization). 1. In the sliding panel that is displayed: * Complete the "I want a regular expression that" field, describing, ideally in plain English, what patterns you want your regular expression to capture. You can use other natural languages, but the performance may not be as good as with English. diff --git a/data/reusables/apps/about-installation.md b/data/reusables/apps/about-installation.md index 3652b8408cba..bfd5ba8b7af3 100644 --- a/data/reusables/apps/about-installation.md +++ b/data/reusables/apps/about-installation.md @@ -1,9 +1,9 @@ In order to use a {% data variables.product.prodname_github_app %} on your repositories or organization, you must install the app on your organization or personal account. You can install the same {% data variables.product.prodname_github_app %} on multiple accounts. For example, if you install the app on your personal account and on a few organizations that you own, you'll be able to use the app on your personal repositories, on the organizations where you installed the app, and on repositories owned by those organizations. -When you install an app, you grant the app permission to access the organization and repository resources that it requested. During the installation process, {% data variables.product.company_short %} will tell you which permissions the {% data variables.product.prodname_github_app %} requested. For more information about the REST API requests the {% data variables.product.prodname_github_app %} can make with those permissions, see "[AUTOTITLE](/rest/overview/permissions-required-for-github-apps)." +When you install an app, you grant the app permission to access the organization and repository resources that it requested. During the installation process, {% data variables.product.company_short %} will tell you which permissions the {% data variables.product.prodname_github_app %} requested. For more information about the REST API requests the {% data variables.product.prodname_github_app %} can make with those permissions, see [AUTOTITLE](/rest/overview/permissions-required-for-github-apps). When you install an app, you will also choose which repositories to grant the {% data variables.product.prodname_github_app %} access to. -Before installing a {% data variables.product.prodname_github_app %}, you should ensure you trust the owner of the {% data variables.product.prodname_github_app %}. You should also review the permissions that the {% data variables.product.prodname_github_app %} is requesting and make sure you are comfortable granting those permissions. For more information about the REST API requests the {% data variables.product.prodname_github_app %} can make with those permissions, see "[AUTOTITLE](/rest/overview/permissions-required-for-github-apps)." +Before installing a {% data variables.product.prodname_github_app %}, you should ensure you trust the owner of the {% data variables.product.prodname_github_app %}. You should also review the permissions that the {% data variables.product.prodname_github_app %} is requesting and make sure you are comfortable granting those permissions. For more information about the REST API requests the {% data variables.product.prodname_github_app %} can make with those permissions, see [AUTOTITLE](/rest/overview/permissions-required-for-github-apps). There is no limit to how many apps you can install. diff --git a/data/reusables/apps/app-scans.md b/data/reusables/apps/app-scans.md index 4cb14320734a..2fd643670003 100644 --- a/data/reusables/apps/app-scans.md +++ b/data/reusables/apps/app-scans.md @@ -1 +1 @@ -You should conduct regular vulnerability scans for your app. For example, you might set up code scanning and secret scanning for the repository that hosts your app's code. For more information, see "[AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning)" and "[AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning)." +You should conduct regular vulnerability scans for your app. For example, you might set up code scanning and secret scanning for the repository that hosts your app's code. For more information, see [AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning) and [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning). diff --git a/data/reusables/apps/app_manager_role.md b/data/reusables/apps/app_manager_role.md index 6ed6fbb17b24..7f247e60775a 100644 --- a/data/reusables/apps/app_manager_role.md +++ b/data/reusables/apps/app_manager_role.md @@ -1 +1 @@ -By default, only organization owners can manage the settings of GitHub Apps in an organization. To allow additional users to change the developer settings of GitHub Apps owned by the organization, an owner can grant them GitHub App manager permissions. GitHub App Managers can't manage third-party applications. For more information about adding and removing GitHub App managers in your organization, see "[AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization#github-app-managers)." +By default, only organization owners can manage the settings of GitHub Apps in an organization. To allow additional users to change the developer settings of GitHub Apps owned by the organization, an owner can grant them GitHub App manager permissions. GitHub App Managers can't manage third-party applications. For more information about adding and removing GitHub App managers in your organization, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization#github-app-managers). diff --git a/data/reusables/apps/best-practice-use-durable-id.md b/data/reusables/apps/best-practice-use-durable-id.md index bb0c864b8b73..868649453f45 100644 --- a/data/reusables/apps/best-practice-use-durable-id.md +++ b/data/reusables/apps/best-practice-use-durable-id.md @@ -1,6 +1,6 @@ When a user signs in and performs actions in your application, you have to remember which user took that action in order to grant them access to the same resources the next time they sign in. -To store users in your database correctly, always use the `id` of the user. This value will never change for the user or be used to point to a different user, so it ensures you are providing access to the user you intend. You can find a user's `id` with the `GET /user` REST API endpoint. See "[AUTOTITLE](/rest/users/users#get-a-user)." +To store users in your database correctly, always use the `id` of the user. This value will never change for the user or be used to point to a different user, so it ensures you are providing access to the user you intend. You can find a user's `id` with the `GET /user` REST API endpoint. See [AUTOTITLE](/rest/users/users#get-a-user). If you store references to repositories, organizations, and enterprises, use their `id` as well to ensure your links to them remain accurate. diff --git a/data/reusables/apps/best-practice-validate-org-access.md b/data/reusables/apps/best-practice-validate-org-access.md index 4bd622b3c668..3cbc9be01338 100644 --- a/data/reusables/apps/best-practice-validate-org-access.md +++ b/data/reusables/apps/best-practice-validate-org-access.md @@ -1 +1 @@ -When you use a user access token, you should track which organizations the token is authorized for. If an organization uses SAML SSO and a user has not performed SAML SSO, the user access token will not have access to that organization. You can use the `GET /user/installations` REST API endpoint to verify which organizations a user access token has access to. If the user is not authorized to access an organization, you should prevent their access to organization owned data within your own application until they perform SAML SSO. For more information, see "[AUTOTITLE](/rest/apps/installations#list-app-installations-accessible-to-the-user-access-token)." +When you use a user access token, you should track which organizations the token is authorized for. If an organization uses SAML SSO and a user has not performed SAML SSO, the user access token will not have access to that organization. You can use the `GET /user/installations` REST API endpoint to verify which organizations a user access token has access to. If the user is not authorized to access an organization, you should prevent their access to organization owned data within your own application until they perform SAML SSO. For more information, see [AUTOTITLE](/rest/apps/installations#list-app-installations-accessible-to-the-user-access-token). diff --git a/data/reusables/apps/general-apps-restrictions.md b/data/reusables/apps/general-apps-restrictions.md index 2749a11fca2b..12dcae31f6b3 100644 --- a/data/reusables/apps/general-apps-restrictions.md +++ b/data/reusables/apps/general-apps-restrictions.md @@ -1 +1 @@ -{% ifversion fpt or ghec %}If you are using your app with GitHub Actions and want to modify workflow files, you must authenticate on behalf of the user with an OAuth token that includes the `workflow` scope. The user must have admin or write permission to the repository that contains the workflow file. For more information, see "[AUTOTITLE](/apps/oauth-apps/building-oauth-apps/scopes-for-oauth-apps#available-scopes)."{% endif %} +{% ifversion fpt or ghec %}If you are using your app with GitHub Actions and want to modify workflow files, you must authenticate on behalf of the user with an OAuth token that includes the `workflow` scope. The user must have admin or write permission to the repository that contains the workflow file. For more information, see [AUTOTITLE](/apps/oauth-apps/building-oauth-apps/scopes-for-oauth-apps#available-scopes).{% endif %} diff --git a/data/reusables/apps/generate-installation-access-token.md b/data/reusables/apps/generate-installation-access-token.md index ead0d79c09f8..f7a8320d3406 100644 --- a/data/reusables/apps/generate-installation-access-token.md +++ b/data/reusables/apps/generate-installation-access-token.md @@ -1,11 +1,11 @@ -1. Generate a JSON web token (JWT) for your app. For more information, see "[AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/generating-a-json-web-token-jwt-for-a-github-app)". +1. Generate a JSON web token (JWT) for your app. For more information, see [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/generating-a-json-web-token-jwt-for-a-github-app). 1. Get the ID of the installation that you want to authenticate as. If you are responding to a webhook event, the webhook payload will include the installation ID. - You can also use the REST API to find the ID for an installation of your app. For example, you can get an installation ID with the `GET /users/{username}/installation`, `GET /repos/{owner}/{repo}/installation`, `GET /orgs/{org}/installation`, or `GET /app/installations` endpoints. For more information, see "[AUTOTITLE](/rest/apps/apps)". + You can also use the REST API to find the ID for an installation of your app. For example, you can get an installation ID with the `GET /users/{username}/installation`, `GET /repos/{owner}/{repo}/installation`, `GET /orgs/{org}/installation`, or `GET /app/installations` endpoints. For more information, see [AUTOTITLE](/rest/apps/apps). - You can also find the app ID on the settings page for your app. The app ID is different from the client ID. For more information about navigating to the settings page for your {% data variables.product.prodname_github_app %}, see "[AUTOTITLE](/apps/maintaining-github-apps/modifying-a-github-app-registration#navigating-to-your-github-app-settings)". + You can also find the app ID on the settings page for your app. The app ID is different from the client ID. For more information about navigating to the settings page for your {% data variables.product.prodname_github_app %}, see [AUTOTITLE](/apps/maintaining-github-apps/modifying-a-github-app-registration#navigating-to-your-github-app-settings). 1. Send a REST API `POST` request to `/app/installations/INSTALLATION_ID/access_tokens`. Include your JSON web token in the `Authorization` header of your request. Replace `INSTALLATION_ID` with the ID of the installation that you want to authenticate as. @@ -27,7 +27,7 @@ The response will include an installation access token, the time that the token expires, the permissions that the token has, and the repositories that the token can access. The installation access token will expire after 1 hour. - For more information about this endpoint, see "[AUTOTITLE](/rest/apps/apps)". + For more information about this endpoint, see [AUTOTITLE](/rest/apps/apps). > [!NOTE] > {% data reusables.getting-started.bearer-vs-token %} diff --git a/data/reusables/apps/github-app-managers.md b/data/reusables/apps/github-app-managers.md index e9776b381072..7ac2be201651 100644 --- a/data/reusables/apps/github-app-managers.md +++ b/data/reusables/apps/github-app-managers.md @@ -1,3 +1,3 @@ -Organization owners can designate other users in their organization as {% data variables.product.prodname_github_app %} managers. {% data variables.product.prodname_github_app %} managers can manage the settings of some or all of the {% data variables.product.prodname_github_app %} registrations that are owned by the organization. The {% data variables.product.prodname_github_app %} manager role does not grant users access to install and uninstall {% data variables.product.prodname_github_apps %} on an organization. For more information about the specific app settings that a {% data variables.product.prodname_github_app %} manager can control, see "[AUTOTITLE](/apps/maintaining-github-apps/modifying-a-github-app)." +Organization owners can designate other users in their organization as {% data variables.product.prodname_github_app %} managers. {% data variables.product.prodname_github_app %} managers can manage the settings of some or all of the {% data variables.product.prodname_github_app %} registrations that are owned by the organization. The {% data variables.product.prodname_github_app %} manager role does not grant users access to install and uninstall {% data variables.product.prodname_github_apps %} on an organization. For more information about the specific app settings that a {% data variables.product.prodname_github_app %} manager can control, see [AUTOTITLE](/apps/maintaining-github-apps/modifying-a-github-app). -For more information about {% data variables.product.prodname_github_app %} manager permissions, see "[AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization#github-app-managers)." +For more information about {% data variables.product.prodname_github_app %} manager permissions, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization#github-app-managers). diff --git a/data/reusables/apps/github_app_auth_saml.md b/data/reusables/apps/github_app_auth_saml.md index c8ad5734c866..6d168ea726cd 100644 --- a/data/reusables/apps/github_app_auth_saml.md +++ b/data/reusables/apps/github_app_auth_saml.md @@ -1 +1 @@ -If a user reports that they cannot see resources owned by their organization after authorizing your {% data variables.product.prodname_github_app %} and the organization uses SAML SSO, instruct the user to start an active SAML session for their organization before reauthorizing. For more information, see {% ifversion ghec %}"[AUTOTITLE](/apps/using-github-apps/saml-and-github-apps)."{% else %}"[AUTOTITLE](/enterprise-cloud@latest/apps/using-github-apps/saml-and-github-apps)" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} +If a user reports that they cannot see resources owned by their organization after authorizing your {% data variables.product.prodname_github_app %} and the organization uses SAML SSO, instruct the user to start an active SAML session for their organization before reauthorizing. For more information, see {% ifversion ghec %}[AUTOTITLE](/apps/using-github-apps/saml-and-github-apps).{% else %}[AUTOTITLE](/enterprise-cloud@latest/apps/using-github-apps/saml-and-github-apps) in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} diff --git a/data/reusables/apps/github_app_install_saml.md b/data/reusables/apps/github_app_install_saml.md index a46766d46c93..e6d255472426 100644 --- a/data/reusables/apps/github_app_install_saml.md +++ b/data/reusables/apps/github_app_install_saml.md @@ -1 +1 @@ -If your organization uses SAML SSO and you do not see your organization listed, you may need to start an active SAML session for your organization. For more information, see "[AUTOTITLE](/apps/using-github-apps/saml-and-github-apps)." +If your organization uses SAML SSO and you do not see your organization listed, you may need to start an active SAML session for your organization. For more information, see [AUTOTITLE](/apps/using-github-apps/saml-and-github-apps). diff --git a/data/reusables/apps/install-vs-authorize.md b/data/reusables/apps/install-vs-authorize.md index be3f62f0cae3..540564126313 100644 --- a/data/reusables/apps/install-vs-authorize.md +++ b/data/reusables/apps/install-vs-authorize.md @@ -1,8 +1,8 @@ -When you **install** a {% data variables.product.prodname_github_app %} on your account or organization, you grant the app permission to access the organization and repository resources that it requested. You also specify which repositories the app can access. During the installation process, the {% data variables.product.prodname_github_app %} will indicate which repository and organization permissions you are granting. For more information about what different permissions enable a {% data variables.product.prodname_github_app %} to do, see "[AUTOTITLE](/apps/creating-github-apps/setting-up-a-github-app/choosing-permissions-for-a-github-app)." +When you **install** a {% data variables.product.prodname_github_app %} on your account or organization, you grant the app permission to access the organization and repository resources that it requested. You also specify which repositories the app can access. During the installation process, the {% data variables.product.prodname_github_app %} will indicate which repository and organization permissions you are granting. For more information about what different permissions enable a {% data variables.product.prodname_github_app %} to do, see [AUTOTITLE](/apps/creating-github-apps/setting-up-a-github-app/choosing-permissions-for-a-github-app). For example, you might grant the {% data variables.product.prodname_github_app %} permission to read repository metadata and write issues, and you might grant the {% data variables.product.prodname_github_app %} access to all of your repositories. -![Screenshot of the page to install a GitHub App. The app is requesting read access to metadata and write access to issues. The app can also request user authorization for read access to emails and write access to gists.](/assets/images/github-apps/install-app.png) +![Screenshot of the page to install a GitHub App. The app requests read access to metadata and write access to issues.](/assets/images/github-apps/install-app.png) When you **authorize** a {% data variables.product.prodname_github_app %}, you grant the app access to your {% data variables.product.prodname_dotcom %} account, based on the account permissions the app requested. During the authorization process, the app will indicate which resources the app can access on your account. When you authorize a {% data variables.product.prodname_github_app %}, you also grant the app permission to act on your behalf. diff --git a/data/reusables/apps/navigate-to-app-settings-this-article.md b/data/reusables/apps/navigate-to-app-settings-this-article.md index 21a78ef4767d..150356503f2f 100644 --- a/data/reusables/apps/navigate-to-app-settings-this-article.md +++ b/data/reusables/apps/navigate-to-app-settings-this-article.md @@ -1 +1 @@ -1. Navigate to the settings page for the app you'd like to modify. For more information, see "[Navigating to your {% data variables.product.prodname_github_app %} settings](#navigating-to-your-github-app-settings)" in this article. +1. Navigate to the settings page for the app you'd like to modify. For more information, see [Navigating to your {% data variables.product.prodname_github_app %} settings](#navigating-to-your-github-app-settings) in this article. diff --git a/data/reusables/apps/reauthorize-apps-saml.md b/data/reusables/apps/reauthorize-apps-saml.md index b45a130a008d..7f18a9ad877e 100644 --- a/data/reusables/apps/reauthorize-apps-saml.md +++ b/data/reusables/apps/reauthorize-apps-saml.md @@ -1 +1 @@ -After you enable SAML SSO, {% data variables.product.prodname_oauth_app %} and {% data variables.product.prodname_github_app %} authorizations may need to be revoked and reauthorized before they can access the organization. For more information, see "[AUTOTITLE](/apps/oauth-apps/using-oauth-apps/authorizing-oauth-apps#oauth-apps-and-organizations)." +After you enable SAML SSO, {% data variables.product.prodname_oauth_app %} and {% data variables.product.prodname_github_app %} authorizations may need to be revoked and reauthorized before they can access the organization. For more information, see [AUTOTITLE](/apps/oauth-apps/using-oauth-apps/authorizing-oauth-apps#oauth-apps-and-organizations). diff --git a/data/reusables/apps/web-app-flow-exchange-code.md b/data/reusables/apps/web-app-flow-exchange-code.md index 235d71a42fc3..23098943045e 100644 --- a/data/reusables/apps/web-app-flow-exchange-code.md +++ b/data/reusables/apps/web-app-flow-exchange-code.md @@ -2,7 +2,7 @@ Query parameter | Type | Description -----|------|------------ - `client_id` | `string` | **Required.** The client ID for your {% data variables.product.prodname_github_app %}. The client ID is different from the app ID. You can find the client ID on the settings page for your app. For more information about navigating to the settings page for your {% data variables.product.prodname_github_app %}, see "[AUTOTITLE](/apps/maintaining-github-apps/modifying-a-github-app-registration#navigating-to-your-github-app-settings)." + `client_id` | `string` | **Required.** The client ID for your {% data variables.product.prodname_github_app %}. The client ID is different from the app ID. You can find the client ID on the settings page for your app. For more information about navigating to the settings page for your {% data variables.product.prodname_github_app %}, see [AUTOTITLE](/apps/maintaining-github-apps/modifying-a-github-app-registration#navigating-to-your-github-app-settings). `client_secret` | `string` | **Required.** The client secret for your {% data variables.product.prodname_github_app %}. You can generate a client secret on the settings page for your app. `code` | `string` | **Required.** The code you received in the previous step. `redirect_uri` | `string` | The URL in your application where users will be sent after authorization. This must be an exact match to one of the URLs you provided as a "Callback URL" when setting up your {% data variables.product.prodname_github_app %} and can't contain any additional parameters. diff --git a/data/reusables/audit_log/audit-log-action-categories.md b/data/reusables/audit_log/audit-log-action-categories.md index 3ca3a35db895..11e1f55a5121 100644 --- a/data/reusables/audit_log/audit-log-action-categories.md +++ b/data/reusables/audit_log/audit-log-action-categories.md @@ -2,35 +2,29 @@ |------------------|-------------------| | {% ifversion fpt or ghec %} | | `account` | Contains activities related to an organization account. | -| `advisory_credit` | Contains activities related to crediting a contributor for a security advisory in the {% data variables.product.prodname_advisory_database %}. For more information, see "[AUTOTITLE](/code-security/security-advisories/working-with-repository-security-advisories/about-repository-security-advisories)." | +| `advisory_credit` | Contains activities related to crediting a contributor for a security advisory in the {% data variables.product.prodname_advisory_database %}. For more information, see [AUTOTITLE](/code-security/security-advisories/working-with-repository-security-advisories/about-repository-security-advisories). | | {% endif %} | | `artifact` | Contains activities related to {% data variables.product.prodname_actions %} workflow run artifacts. | -| {% ifversion audit-log-streaming %} | | `audit_log_streaming` | Contains activities related to streaming audit logs for organizations in an enterprise account. | -| {% endif %} | | {% ifversion fpt or ghec %} | | `billing` | Contains activities related to an organization's billing. | | {% endif %} | | {% ifversion ghec or ghes %} | | `business` | Contains activities related to business settings for an enterprise. | | {% endif %} | -| {% ifversion code-security-audit-log-events %} | -| `business_advanced_security` | Contains activities related to {% data variables.product.prodname_GH_advanced_security %} in an enterprise. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise)." | -| `business_secret_scanning` | Contains activities related to {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise)." | -| {% endif %} | +| `business_advanced_security` | Contains activities related to {% data variables.product.prodname_GH_advanced_security %} in an enterprise. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise). | +| `business_secret_scanning` | Contains activities related to {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise). | | {% ifversion secret-scanning-validity-check-audit-log %} | -| `business_secret_scanning_automatic_validity_checks` | Contains activities related to enabling or disabling automatic validity checks for {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise#managing-advanced-security-features)." | +| `business_secret_scanning_automatic_validity_checks` | Contains activities related to enabling or disabling automatic validity checks for {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise#managing-advanced-security-features). | | {% endif %} | | {% ifversion secret-scanning-audit-log-custom-patterns %} | | `business_secret_scanning_custom_pattern` | Contains activities related to custom patterns for {% data variables.product.prodname_secret_scanning %} in an enterprise. | | {% endif %} | | {% ifversion secret-scanning-custom-pattern-push-protection-audit %} | -| `business_secret_scanning_custom_pattern_push_protection` | Contains activities related to push protection of a custom pattern for {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see "[AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-an-enterprise-account)." | -| {% endif %} | -| {% ifversion code-security-audit-log-events %} | -| `business_secret_scanning_push_protection` | Contains activities related to the push protection feature of {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise)." | -| `business_secret_scanning_push_protection_custom_message` | Contains activities related to the custom message displayed when push protection is triggered in an enterprise. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise)." | +| `business_secret_scanning_custom_pattern_push_protection` | Contains activities related to push protection of a custom pattern for {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-an-enterprise-account). | | {% endif %} | +| `business_secret_scanning_push_protection` | Contains activities related to the push protection feature of {% data variables.product.prodname_secret_scanning %} in an enterprise. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise). | +| `business_secret_scanning_push_protection_custom_message` | Contains activities related to the custom message displayed when push protection is triggered in an enterprise. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise). | | `checks` | Contains activities related to check suites and runs. | | {% ifversion fpt or ghec %} | | `codespaces` | Contains activities related to an organization's codespaces. | @@ -39,12 +33,12 @@ | {% ifversion ghes %} | | `config_entry` | Contains activities related to configuration settings. These events are only visible in the site admin audit log. | | {% endif %} | -| `dependabot_alerts` | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot_alerts %} in existing repositories. For more information, see "[AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)." | +| `dependabot_alerts` | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot_alerts %} in existing repositories. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts). | | `dependabot_alerts_new_repos` | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot_alerts %} in new repositories created in the organization. | | `dependabot_repository_access` | Contains activities related to which private repositories in an organization {% data variables.product.prodname_dependabot %} is allowed to access. | -| `dependabot_security_updates` | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot_security_updates %} in existing repositories. For more information, see "[AUTOTITLE](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates)." | +| `dependabot_security_updates` | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot_security_updates %} in existing repositories. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates). | | `dependabot_security_updates_new_repos` | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot_security_updates %} for new repositories created in the organization. | -| `dependency_graph` | Contains organization-level configuration activities for dependency graphs for repositories. For more information, see "[AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)." | +| `dependency_graph` | Contains organization-level configuration activities for dependency graphs for repositories. For more information, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph). | | `dependency_graph_new_repos` | Contains organization-level configuration activities for new repositories created in the organization. | | {% ifversion ghec or ghes %} | | `dotcom_connection` | Contains activities related to {% data variables.product.prodname_github_connect %}. | @@ -72,7 +66,7 @@ | `marketplace_agreement_signature` | Contains activities related to signing the {% data variables.product.prodname_marketplace %} Developer Agreement. | | `marketplace_listing` | Contains activities related to listing apps in {% data variables.product.prodname_marketplace %}. | | {% endif %} | -| `members_can_create_pages` | Contains activities related to managing the publication of {% data variables.product.prodname_pages %} sites for repositories in the organization. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization)." | +| `members_can_create_pages` | Contains activities related to managing the publication of {% data variables.product.prodname_pages %} sites for repositories in the organization. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization). | | `members_can_create_private_pages` | Contains activities related to managing the publication of private {% data variables.product.prodname_pages %} sites for repositories in the organization. | | `members_can_create_public_pages` | Contains activities related to managing the publication of public {% data variables.product.prodname_pages %} sites for repositories in the organization. | | {% ifversion ghec or ghes %} | @@ -92,10 +86,10 @@ | `org_credential_authorization` | Contains activities related to authorizing credentials for use with SAML single sign-on. | | {% endif %} | | {% ifversion secret-scanning-validity-check-audit-log %} | -| `org_secret_scanning_automatic_validity_checks` | Contains activities related to enabling or disabling automatic validity checks for {% data variables.product.prodname_secret_scanning %} in an organization. For more information, see "[AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-validity-checks-for-partner-patterns-in-an-organization)." | +| `org_secret_scanning_automatic_validity_checks` | Contains activities related to enabling or disabling automatic validity checks for {% data variables.product.prodname_secret_scanning %} in an organization. For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-validity-checks-for-partner-patterns-in-an-organization). | | {% endif %} | | {% ifversion secret-scanning-audit-log-custom-patterns %} | -| `org_secret_scanning_custom_pattern` | Contains activities related to custom patterns for {% data variables.product.prodname_secret_scanning %} in an organization. For more information, see "[AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning)." | +| `org_secret_scanning_custom_pattern` | Contains activities related to custom patterns for {% data variables.product.prodname_secret_scanning %} in an organization. For more information, see [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning). | | {% endif %} | | `organization_default_label` | Contains activities related to default labels for repositories in an organization. | | `organization_domain` | Contains activities related to verified organization domains. | @@ -126,27 +120,27 @@ | `pull_request_review_comment` | Contains activities related to pull request review comments. | | `repo` | Contains activities related to the repositories owned by an organization. | | {% ifversion fpt or ghec %} | -| `repository_advisory` | Contains repository-level activities related to security advisories in the {% data variables.product.prodname_advisory_database %}. For more information, see "[AUTOTITLE](/code-security/security-advisories/working-with-repository-security-advisories/about-repository-security-advisories)." | -| `repository_content_analysis` | Contains activities related to enabling or disabling data use for a private repository. For more information, see "[AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#enabling-or-disabling-security-and-analysis-features-for-private-repositories)." | -| `repository_dependency_graph` | Contains repository-level activities related to enabling or disabling the dependency graph for a {% ifversion fpt or ghec %}private {% endif %}repository. For more information, see "[AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)." | +| `repository_advisory` | Contains repository-level activities related to security advisories in the {% data variables.product.prodname_advisory_database %}. For more information, see [AUTOTITLE](/code-security/security-advisories/working-with-repository-security-advisories/about-repository-security-advisories). | +| `repository_content_analysis` | Contains activities related to enabling or disabling data use for a private repository. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#enabling-or-disabling-security-and-analysis-features-for-private-repositories). | +| `repository_dependency_graph` | Contains repository-level activities related to enabling or disabling the dependency graph for a {% ifversion fpt or ghec %}private {% endif %}repository. For more information, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph). | | {% endif %} | | `repository_image` | Contains activities related to images for a repository. | | `repository_invitation` | Contains activities related to invitations to join a repository. | | `repository_projects_change` | Contains activities related to enabling projects for a repository or for all repositories in an organization. | | {% ifversion ghec or ghes %} | -| `repository_secret_scanning` | Contains repository-level activities related to {% data variables.product.prodname_secret_scanning %}. For more information, see "[AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning)." | +| `repository_secret_scanning` | Contains repository-level activities related to {% data variables.product.prodname_secret_scanning %}. For more information, see [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning). | | {% endif %} | | {% ifversion secret-scanning-validity-check-audit-log %} | -| `repository_secret_scanning_automatic_validity_checks` | Contains activities related to enabling or disabling automatic validity checks for {% data variables.product.prodname_secret_scanning %} in a repository. For more information, see "[AUTOTITLE](/code-security/secret-scanning/enabling-secret-scanning-features/enabling-secret-scanning-for-your-repository)." | +| `repository_secret_scanning_automatic_validity_checks` | Contains activities related to enabling or disabling automatic validity checks for {% data variables.product.prodname_secret_scanning %} in a repository. For more information, see [AUTOTITLE](/code-security/secret-scanning/enabling-secret-scanning-features/enabling-secret-scanning-for-your-repository). | | {% endif %} | | {% ifversion secret-scanning-audit-log-custom-patterns %} | -| `repository_secret_scanning_custom_pattern` | Contains activities related to {% data variables.product.prodname_secret_scanning %} custom patterns in a repository. For more information, see "[AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning)." | +| `repository_secret_scanning_custom_pattern` | Contains activities related to {% data variables.product.prodname_secret_scanning %} custom patterns in a repository. For more information, see [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning). | | {% endif %} | | {% ifversion secret-scanning-custom-pattern-push-protection-audit %} | -| `repository_secret_scanning_custom_pattern_push_protection` | Contains activities related to push protection of a custom pattern for {% data variables.product.prodname_secret_scanning %} in a repository. For more information, see "[AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-a-repository)." | +| `repository_secret_scanning_custom_pattern_push_protection` | Contains activities related to push protection of a custom pattern for {% data variables.product.prodname_secret_scanning %} in a repository. For more information, see [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-a-repository). | | {% endif %} | | {% ifversion secret-scanning-audit-log-custom-patterns %} -| `repository_secret_scanning_push_protection` | Contains activities related to the push protection feature of {% data variables.product.prodname_secret_scanning %} in a repository. For more information, see "[AUTOTITLE](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." | +| `repository_secret_scanning_push_protection` | Contains activities related to the push protection feature of {% data variables.product.prodname_secret_scanning %} in a repository. For more information, see [AUTOTITLE](/code-security/secret-scanning/protecting-pushes-with-secret-scanning). | | {% endif %} | | {% ifversion fpt or ghec %} | | `repository_visibility_change` | Contains activities related to allowing organization members to change repository visibilities for the organization. | @@ -159,25 +153,25 @@ | {% ifversion ghec or ghes %} | | `restrict_notification_delivery` | Contains activities related to the restriction of email notifications to approved or verified domains for an enterprise. | | {% endif %} | -| {% ifversion custom-repository-roles %} | +| {% ifversion ghec or ghes %} | | `role` | Contains activities related to [custom repository roles](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization). | | {% endif %} | | {% ifversion ghec or ghes %} | -| `secret_scanning` | Contains organization-level configuration activities for {% data variables.product.prodname_secret_scanning %} in existing repositories. For more information, see "[AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning)." | +| `secret_scanning` | Contains organization-level configuration activities for {% data variables.product.prodname_secret_scanning %} in existing repositories. For more information, see [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning). | | `secret_scanning_new_repos` | Contains organization-level configuration activities for {% data variables.product.prodname_secret_scanning %} for new repositories created in the organization. | | {% endif %} | | {% ifversion ghec or ghes %} | | `security_key` | Contains activities related to security keys registration and removal. | | {% endif %} | | {% ifversion fpt or ghec %} | -| `sponsors` | Contains events related to sponsor buttons (see "[AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository)"). | +| `sponsors` | Contains events related to sponsor buttons (see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository)). | | {% endif %} | | {% ifversion ghec or ghes %} | | `ssh_certificate_authority` | Contains activities related to a SSH certificate authority in an organization or enterprise. | | `ssh_certificate_requirement` | Contains activities related to requiring members use SSH certificates to access organization resources. | | {% endif %} | | {% ifversion sso-redirect %} | -| `sso_redirect` | Contains activities related to automatically redirecting users to sign in (see "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-sso-for-unauthenticated-users)"). +| `sso_redirect` | Contains activities related to automatically redirecting users to sign in (see [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-sso-for-unauthenticated-users)). | {% endif %} | | `staff` | Contains activities related to a site admin performing an action. | | `team` | Contains activities related to teams in an organization.{% ifversion team-discussions %} | diff --git a/data/reusables/audit_log/audit-log-search.md b/data/reusables/audit_log/audit-log-search.md index 21b12fd61dac..c4a0fbac3ab2 100644 --- a/data/reusables/audit_log/audit-log-search.md +++ b/data/reusables/audit_log/audit-log-search.md @@ -1,6 +1,6 @@ {% data reusables.audit_log.audit-log-search-list-info-about-action %} -Note that you cannot search for entries using text. You can, however, construct search queries using a variety of filters. Many operators used when querying the log, such as `-`, `>`, or `<`, match the same format as searching across {% data variables.product.product_name %}. For more information, see "[AUTOTITLE](/search-github/getting-started-with-searching-on-github/about-searching-on-github)." +Note that you cannot search for entries using text. You can, however, construct search queries using a variety of filters. Many operators used when querying the log, such as `-`, `>`, or `<`, match the same format as searching across {% data variables.product.product_name %}. For more information, see [AUTOTITLE](/search-github/getting-started-with-searching-on-github/about-searching-on-github). {% data reusables.audit_log.audit-log-search-by-operation %} diff --git a/data/reusables/audit_log/only-three-months-displayed.md b/data/reusables/audit_log/only-three-months-displayed.md index baf8a184de48..82af0065c6cc 100644 --- a/data/reusables/audit_log/only-three-months-displayed.md +++ b/data/reusables/audit_log/only-three-months-displayed.md @@ -1 +1 @@ -By default, only events from the past three months are displayed. To view older events, you must specify a date range with the `created` parameter. See "[AUTOTITLE](/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax#query-for-dates)." +By default, only events from the past three months are displayed. To view older events, you must specify a date range with the `created` parameter. See [AUTOTITLE](/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax#query-for-dates). diff --git a/data/reusables/audit_log/retention-periods.md b/data/reusables/audit_log/retention-periods.md index c4bcb79fe921..e553639ff8bd 100644 --- a/data/reusables/audit_log/retention-periods.md +++ b/data/reusables/audit_log/retention-periods.md @@ -1,3 +1,3 @@ -The audit log lists events triggered by activities that affect your enterprise{% ifversion not ghec %}. Audit logs for {% data variables.product.product_name %} are retained indefinitely{% ifversion audit-data-retention-tab %}, unless an enterprise owner configured a different retention period. See "[AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise)."{% else %}.{% endif %}{% else %} within the last 180 days. {% data reusables.audit_log.git-events-retention-period %}{% endif %} +The audit log lists events triggered by activities that affect your enterprise{% ifversion ghes %}. Audit logs for {% data variables.product.product_name %} are retained indefinitely, unless an enterprise owner configured a different retention period. See [AUTOTITLE](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise).{% else %} within the last 180 days. {% data reusables.audit_log.git-events-retention-period %}{% endif %} {% data reusables.audit_log.only-three-months-displayed %} diff --git a/data/reusables/audit_log/users-agree-to-ip-collection.md b/data/reusables/audit_log/users-agree-to-ip-collection.md index 5eaeca540227..5b667342445e 100644 --- a/data/reusables/audit_log/users-agree-to-ip-collection.md +++ b/data/reusables/audit_log/users-agree-to-ip-collection.md @@ -1 +1 @@ -When anyone creates an account on {% data variables.product.github %}, the person agrees to {% data variables.product.company_short %}'s collection of basic information about connections to {% data variables.product.company_short %}'s services, including source IP address. For more information, see "[AUTOTITLE](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement#usage-information)." +When anyone creates an account on {% data variables.product.github %}, the person agrees to {% data variables.product.company_short %}'s collection of basic information about connections to {% data variables.product.company_short %}'s services, including source IP address. For more information, see [AUTOTITLE](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement#usage-information). diff --git a/data/reusables/billing/billing-info.md b/data/reusables/billing/billing-info.md index 3b18cfcd5e98..5cac8188727f 100644 --- a/data/reusables/billing/billing-info.md +++ b/data/reusables/billing/billing-info.md @@ -1 +1 @@ -For more information about billing in general, like adding a payment method or viewing your payment history, see "[AUTOTITLE](/billing/managing-your-github-billing-settings)." +For more information about billing in general, like adding a payment method or viewing your payment history, see [AUTOTITLE](/billing/managing-your-github-billing-settings). diff --git a/data/reusables/billing/enhanced-billing-platform-licenses.md b/data/reusables/billing/enhanced-billing-platform-licenses.md index a2644ab302b3..51b4c06003c9 100644 --- a/data/reusables/billing/enhanced-billing-platform-licenses.md +++ b/data/reusables/billing/enhanced-billing-platform-licenses.md @@ -1,3 +1,3 @@ >[!NOTE] Enterprise accounts, and organizations owned by enterprise accounts, created after June 2, 2024, have access to the enhanced billing platform. Enterprises that participated in the {% data variables.release-phases.public_preview %} program also have access to the enhanced billing platform. > -> The page to view license usage has moved in the enhanced billing platform. See "[AUTOTITLE](/billing/using-the-new-billing-platform/gathering-insights-on-your-spending#viewing-license-usage)." +> The page to view license usage has moved in the enhanced billing platform. See [AUTOTITLE](/billing/using-the-new-billing-platform/gathering-insights-on-your-spending#viewing-license-usage). diff --git a/data/reusables/billing/enhanced-billing-platform.md b/data/reusables/billing/enhanced-billing-platform.md index 994d7fcd8a10..1f63f6644e05 100644 --- a/data/reusables/billing/enhanced-billing-platform.md +++ b/data/reusables/billing/enhanced-billing-platform.md @@ -1,3 +1,3 @@ >[!NOTE] {% ifversion fpt %}Organization accounts, created after November 13, 2024 on a {% data variables.product.prodname_team %} plan, have access to the enhanced billing platform.{% elsif ghec %}Enterprise accounts, and organizations owned by enterprise accounts, created after June 2, 2024, have access to the enhanced billing platform. Enterprises that participated in the {% data variables.release-phases.public_preview %} program also have access to the enhanced billing platform.{% endif %} > -> The enhanced billing platform offers better spending control and detailed visibility to help you understand your usage with more granular controls. See "[AUTOTITLE](/billing/using-the-new-billing-platform)." +> The enhanced billing platform offers better spending control and detailed visibility to help you understand your usage with more granular controls. See [AUTOTITLE](/billing/using-the-new-billing-platform). diff --git a/data/reusables/billing/ghas-metered-billing-note-with-link.md b/data/reusables/billing/ghas-metered-billing-note-with-link.md index c0ee5a520e86..9167364e9113 100644 --- a/data/reusables/billing/ghas-metered-billing-note-with-link.md +++ b/data/reusables/billing/ghas-metered-billing-note-with-link.md @@ -1 +1 @@ -If you started a free trial of {% data variables.product.prodname_GH_advanced_security %} during your {% data variables.product.prodname_ghe_cloud %} trial on or after August 1, 2024, your billing for {% data variables.product.prodname_GH_advanced_security %} will be usage-based. See, "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security#metered-billing-for-github-advanced-security)." +If you started a free trial of {% data variables.product.prodname_GH_advanced_security %} during your {% data variables.product.prodname_ghe_cloud %} trial on or after August 1, 2024, your billing for {% data variables.product.prodname_GH_advanced_security %} will be usage-based. See, [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security#metered-billing-for-github-advanced-security). diff --git a/data/reusables/billing/us-sales-tax.md b/data/reusables/billing/us-sales-tax.md index c433a548d9ab..0800df1988b9 100644 --- a/data/reusables/billing/us-sales-tax.md +++ b/data/reusables/billing/us-sales-tax.md @@ -1 +1 @@ -If you're a customer in the United States and you're exempt from sales tax, you will need to upload a sales tax exemption certificate to your account. See "[AUTOTITLE](/billing/managing-your-github-billing-settings/adding-a-sales-tax-certificate)." +If you're a customer in the United States and you're exempt from sales tax, you will need to upload a sales tax exemption certificate to your account. See [AUTOTITLE](/billing/managing-your-github-billing-settings/adding-a-sales-tax-certificate). diff --git a/data/reusables/billing/usage-based-billing.md b/data/reusables/billing/usage-based-billing.md index 24b3b4f38d8e..714714ac521a 100644 --- a/data/reusables/billing/usage-based-billing.md +++ b/data/reusables/billing/usage-based-billing.md @@ -1,3 +1,3 @@ -If you created a trial of {% data variables.product.prodname_ghe_cloud %} on or after August 1, 2024, you use usage-based billing to pay for your licenses. With usage-based billing, you pay for the number of licenses you use each month. You do not need to buy a predefined number of licenses in advance. See, "[AUTOTITLE](/billing/using-the-enhanced-billing-platform-for-enterprises/about-usage-based-billing-for-licenses)." +If you created a trial of {% data variables.product.prodname_ghe_cloud %} on or after August 1, 2024, you use usage-based billing to pay for your licenses. With usage-based billing, you pay for the number of licenses you use each month. You do not need to buy a predefined number of licenses in advance. See, [AUTOTITLE](/billing/using-the-enhanced-billing-platform-for-enterprises/about-usage-based-billing-for-licenses). -> [!IMPORTANT] If you currently pay for your {% data variables.product.prodname_enterprise %} licenses through a volume, subscription, or prepaid agreement, you will continue to be billed in this way until your agreement expires. At renewal, you have the option to switch to the metered billing model. See "[AUTOTITLE](/billing/using-the-enhanced-billing-platform-for-enterprises/getting-started-with-the-enhanced-billing-platform)." +> [!IMPORTANT] If you currently pay for your {% data variables.product.prodname_enterprise %} licenses through a volume, subscription, or prepaid agreement, you will continue to be billed in this way until your agreement expires. At renewal, you have the option to switch to the metered billing model. See [AUTOTITLE](/billing/using-the-enhanced-billing-platform-for-enterprises/getting-started-with-the-enhanced-billing-platform). diff --git a/data/reusables/branches/change-default-branch.md b/data/reusables/branches/change-default-branch.md index 5c696d36c1b1..9c26f48d255b 100644 --- a/data/reusables/branches/change-default-branch.md +++ b/data/reusables/branches/change-default-branch.md @@ -1 +1 @@ -You can change the default branch for an existing repository. For more information, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch)." +You can change the default branch for an existing repository. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch). diff --git a/data/reusables/branches/set-default-branch.md b/data/reusables/branches/set-default-branch.md index 6e3897534dd1..7e5c55f0eb6b 100644 --- a/data/reusables/branches/set-default-branch.md +++ b/data/reusables/branches/set-default-branch.md @@ -1 +1 @@ -You can set the name of the default branch for new repositories. For more information, see "[AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories)," "[AUTOTITLE](/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization)," and "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-on-the-default-branch-name)." +You can set the name of the default branch for new repositories. For more information, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories), [AUTOTITLE](/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization), and [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-on-the-default-branch-name). diff --git a/data/reusables/classroom/about-feedback-pull-requests.md b/data/reusables/classroom/about-feedback-pull-requests.md index 8990991c2829..db228cb1f582 100644 --- a/data/reusables/classroom/about-feedback-pull-requests.md +++ b/data/reusables/classroom/about-feedback-pull-requests.md @@ -1 +1 @@ -Optionally, you can enable feedback pull requests on assignments. If you enable this feature for an assignment, {% data variables.product.prodname_classroom %} creates a special pull request titled **Feedback** in the assignment repository for each student or group. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/leave-feedback-with-pull-requests)." +Optionally, you can enable feedback pull requests on assignments. If you enable this feature for an assignment, {% data variables.product.prodname_classroom %} creates a special pull request titled **Feedback** in the assignment repository for each student or group. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/leave-feedback-with-pull-requests). diff --git a/data/reusables/classroom/about-ide-integration.md b/data/reusables/classroom/about-ide-integration.md index b62d5c930558..1b921b481662 100644 --- a/data/reusables/classroom/about-ide-integration.md +++ b/data/reusables/classroom/about-ide-integration.md @@ -1 +1 @@ -You can integrate a classroom with an IDE. Students can make changes to their assignment repositories through the IDE, or by checking out and running code locally with the appropriate software. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/integrate-github-classroom-with-an-ide)." +You can integrate a classroom with an IDE. Students can make changes to their assignment repositories through the IDE, or by checking out and running code locally with the appropriate software. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/integrate-github-classroom-with-an-ide). diff --git a/data/reusables/classroom/assignments-classroom-prerequisite.md b/data/reusables/classroom/assignments-classroom-prerequisite.md index 11d8e3ed2fc3..a06a6bab014d 100644 --- a/data/reusables/classroom/assignments-classroom-prerequisite.md +++ b/data/reusables/classroom/assignments-classroom-prerequisite.md @@ -1 +1 @@ -You must create a classroom before you can create an assignment. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/manage-classrooms)." +You must create a classroom before you can create an assignment. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/manage-classrooms). diff --git a/data/reusables/classroom/assignments-guide-make-cutoff-date.md b/data/reusables/classroom/assignments-guide-make-cutoff-date.md index d6948c9962b7..df236d865019 100644 --- a/data/reusables/classroom/assignments-guide-make-cutoff-date.md +++ b/data/reusables/classroom/assignments-guide-make-cutoff-date.md @@ -1 +1 @@ -Optionally, to make the deadline a cutoff date, select **This is a cutoff date**. If you use a cutoff date, students will lose write access to their assignment repositories after the cutoff date has passed unless they receive an extension. For more information on extending assignment deadlines, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/extending-an-assignments-deadline-for-an-individual-or-group)." +Optionally, to make the deadline a cutoff date, select **This is a cutoff date**. If you use a cutoff date, students will lose write access to their assignment repositories after the cutoff date has passed unless they receive an extension. For more information on extending assignment deadlines, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/extending-an-assignments-deadline-for-an-individual-or-group). diff --git a/data/reusables/classroom/assignments-guide-protected-paths.md b/data/reusables/classroom/assignments-guide-protected-paths.md index 3fd5a300db0c..8073e7af01fd 100644 --- a/data/reusables/classroom/assignments-guide-protected-paths.md +++ b/data/reusables/classroom/assignments-guide-protected-paths.md @@ -1,4 +1,4 @@ -If your assignment has files or directories that are used in the grading process or otherwise shouldn't be edited by students, you can designate them as protected file paths. If a student edits a protected file, a label will be applied to their submission on the assignment overview page for you to investigate. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/monitor-students-progress-with-the-assignment-overview-page)." +If your assignment has files or directories that are used in the grading process or otherwise shouldn't be edited by students, you can designate them as protected file paths. If a student edits a protected file, a label will be applied to their submission on the assignment overview page for you to investigate. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/monitor-students-progress-with-the-assignment-overview-page). The patterns for protected paths follow rules similar to shell filename globs. It may contain the following meta-characters: diff --git a/data/reusables/classroom/assignments-guide-using-autograding.md b/data/reusables/classroom/assignments-guide-using-autograding.md index db3b00440678..1d3b83854822 100644 --- a/data/reusables/classroom/assignments-guide-using-autograding.md +++ b/data/reusables/classroom/assignments-guide-using-autograding.md @@ -1,6 +1,6 @@ -{% data reusables.classroom.about-autograding %} For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-autograding)." +{% data reusables.classroom.about-autograding %} For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-autograding). -{% data reusables.classroom.use-add-test-drop-down-to-click-grading-method %} For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-autograding#grading-methods)." +{% data reusables.classroom.use-add-test-drop-down-to-click-grading-method %} For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-autograding#grading-methods). Define the parameters of your test case, like the name, commands, inputs, outputs, timeout, and points. When you're done, click **Save test case**. diff --git a/data/reusables/classroom/assignments-repository-visibility-and-permissions.md b/data/reusables/classroom/assignments-repository-visibility-and-permissions.md index b19b4af8068b..2af8192ddfda 100644 --- a/data/reusables/classroom/assignments-repository-visibility-and-permissions.md +++ b/data/reusables/classroom/assignments-repository-visibility-and-permissions.md @@ -1,3 +1,3 @@ The repositories for an assignment can be public or private. If you use private repositories, only the student or team can see the feedback you provide. -You can also decide whether to grant students admin permissions to the repository for an assignment. Grant admin permissions if the student should be able to perform administrative tasks for the assignment repository. For more information, see "[AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)" and "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)." +You can also decide whether to grant students admin permissions to the repository for an assignment. Grant admin permissions if the student should be able to perform administrative tasks for the assignment repository. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility) and [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization). diff --git a/data/reusables/classroom/classroom-admins-link.md b/data/reusables/classroom/classroom-admins-link.md index 6dcbe627660c..687460525ab0 100644 --- a/data/reusables/classroom/classroom-admins-link.md +++ b/data/reusables/classroom/classroom-admins-link.md @@ -1 +1 @@ -For more information on classroom admins, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/manage-classrooms#about-management-of-classrooms)." +For more information on classroom admins, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/manage-classrooms#about-management-of-classrooms). diff --git a/data/reusables/classroom/classroom-codespaces-link.md b/data/reusables/classroom/classroom-codespaces-link.md index 03cfb08ab3e4..43c1f4288162 100644 --- a/data/reusables/classroom/classroom-codespaces-link.md +++ b/data/reusables/classroom/classroom-codespaces-link.md @@ -1 +1 @@ -You can choose to configure an assignment with {% data variables.product.prodname_github_codespaces %} to give students access to a browser-based {% data variables.product.prodname_vscode %} environment with one-click setup. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/using-github-codespaces-with-github-classroom)." +You can choose to configure an assignment with {% data variables.product.prodname_github_codespaces %} to give students access to a browser-based {% data variables.product.prodname_vscode %} environment with one-click setup. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/using-github-codespaces-with-github-classroom). diff --git a/data/reusables/classroom/for-more-information-about-assignment-creation.md b/data/reusables/classroom/for-more-information-about-assignment-creation.md index c0be945b3c52..0f8131ccf27e 100644 --- a/data/reusables/classroom/for-more-information-about-assignment-creation.md +++ b/data/reusables/classroom/for-more-information-about-assignment-creation.md @@ -1 +1 @@ -For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-individual-assignment)" or "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment)." +For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-individual-assignment) or [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment). diff --git a/data/reusables/classroom/google-classroom-note.md b/data/reusables/classroom/google-classroom-note.md index 501c72c73bec..e60c139203ce 100644 --- a/data/reusables/classroom/google-classroom-note.md +++ b/data/reusables/classroom/google-classroom-note.md @@ -1 +1 @@ -Google Classroom does not use the LTI protocol, so does not need to be connected to GitHub Classroom before importing the roster. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-course-to-a-classroom#importing-a-roster-from-google-classroom)." +Google Classroom does not use the LTI protocol, so does not need to be connected to GitHub Classroom before importing the roster. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-course-to-a-classroom#importing-a-roster-from-google-classroom). diff --git a/data/reusables/classroom/guide-create-new-classroom.md b/data/reusables/classroom/guide-create-new-classroom.md index f2507897ea63..5bad90c3a124 100644 --- a/data/reusables/classroom/guide-create-new-classroom.md +++ b/data/reusables/classroom/guide-create-new-classroom.md @@ -1,3 +1,3 @@ -1. In the list of organizations, click the organization you'd like to use for your classroom. Optionally, you can create a new organization. For more information, see "[AUTOTITLE](/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch)." +1. In the list of organizations, click the organization you'd like to use for your classroom. Optionally, you can create a new organization. For more information, see [AUTOTITLE](/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch). 1. Under "Classroom name", type the name for your classroom. 1. Click **Create classroom**. diff --git a/data/reusables/classroom/link-to-assignment-overview-article.md b/data/reusables/classroom/link-to-assignment-overview-article.md index 4fcb6337909e..42ee9e1e505f 100644 --- a/data/reusables/classroom/link-to-assignment-overview-article.md +++ b/data/reusables/classroom/link-to-assignment-overview-article.md @@ -1 +1 @@ -The assignment overview page provides an overview of your assignment acceptances and student progress. For more information on viewing and using the assignment overview page, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/monitor-students-progress-with-the-assignment-overview-page)." +The assignment overview page provides an overview of your assignment acceptances and student progress. For more information on viewing and using the assignment overview page, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/monitor-students-progress-with-the-assignment-overview-page). diff --git a/data/reusables/classroom/reuse-assignment-link.md b/data/reusables/classroom/reuse-assignment-link.md index 3fcd2adf1f05..e04763ca669e 100644 --- a/data/reusables/classroom/reuse-assignment-link.md +++ b/data/reusables/classroom/reuse-assignment-link.md @@ -1 +1 @@ -You can reuse existing assignments in any other classroom you have admin access to, including classrooms in a different organization. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment)." +You can reuse existing assignments in any other classroom you have admin access to, including classrooms in a different organization. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment). diff --git a/data/reusables/classroom/you-can-choose-a-template-repository.md b/data/reusables/classroom/you-can-choose-a-template-repository.md index 9d0a80a9f07f..3f74c6914e6e 100644 --- a/data/reusables/classroom/you-can-choose-a-template-repository.md +++ b/data/reusables/classroom/you-can-choose-a-template-repository.md @@ -1,4 +1,4 @@ -You can optionally choose a template repository as starter code for the assignment. For more information, see "[AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-assignment-from-a-template-repository)." +You can optionally choose a template repository as starter code for the assignment. For more information, see [AUTOTITLE](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-assignment-from-a-template-repository). > [!NOTE] > The template repository must belong to your organization or be a public repository on {% data variables.product.product_name %}. diff --git a/data/reusables/classroom/you-can-create-a-pull-request-for-feedback.md b/data/reusables/classroom/you-can-create-a-pull-request-for-feedback.md index a0cec017f05a..36103b1dc4cf 100644 --- a/data/reusables/classroom/you-can-create-a-pull-request-for-feedback.md +++ b/data/reusables/classroom/you-can-create-a-pull-request-for-feedback.md @@ -1 +1 @@ -You can automatically create a pull request where you can provide feedback and answer a student's questions about an assignment. For more information about the review of changes in a pull request, see "[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests)." +You can automatically create a pull request where you can provide feedback and answer a student's questions about an assignment. For more information about the review of changes in a pull request, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests). diff --git a/data/reusables/cli/cli-learn-more.md b/data/reusables/cli/cli-learn-more.md index c9685c71e238..488f8b5cc674 100644 --- a/data/reusables/cli/cli-learn-more.md +++ b/data/reusables/cli/cli-learn-more.md @@ -1,2 +1,2 @@ > [!NOTE] -> To learn more about {% data variables.product.prodname_cli %}, see "[AUTOTITLE](/github-cli/github-cli/about-github-cli)." +> To learn more about {% data variables.product.prodname_cli %}, see [AUTOTITLE](/github-cli/github-cli/about-github-cli). diff --git a/data/reusables/cli/filter-issues-and-pull-requests-tip.md b/data/reusables/cli/filter-issues-and-pull-requests-tip.md index 28f1eb8993cb..fe8544417d9a 100644 --- a/data/reusables/cli/filter-issues-and-pull-requests-tip.md +++ b/data/reusables/cli/filter-issues-and-pull-requests-tip.md @@ -1,2 +1,2 @@ > [!TIP] -> You can also filter issues or pull requests using the {% data variables.product.prodname_cli %}. For more information, see "[`gh issue list`](https://cli.github.com/manual/gh_issue_list)" or "[`gh pr list`](https://cli.github.com/manual/gh_pr_list)" in the {% data variables.product.prodname_cli %} documentation. +> You can also filter issues or pull requests using the {% data variables.product.prodname_cli %}. For more information, see [`gh issue list`](https://cli.github.com/manual/gh_issue_list) or [`gh pr list`](https://cli.github.com/manual/gh_pr_list) in the {% data variables.product.prodname_cli %} documentation. diff --git a/data/reusables/code-scanning/about-multiple-configurations-link.md b/data/reusables/code-scanning/about-multiple-configurations-link.md index 62637bbad928..397b0e5b2257 100644 --- a/data/reusables/code-scanning/about-multiple-configurations-link.md +++ b/data/reusables/code-scanning/about-multiple-configurations-link.md @@ -1 +1 @@ -If you run code scanning using multiple configurations, an alert will sometimes have multiple analysis origins. If an alert has multiple analysis origins, you can view the status of the alert for each analysis origin on the alert page. For more information, see "[AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-analysis-origins)." +If you run code scanning using multiple configurations, an alert will sometimes have multiple analysis origins. If an alert has multiple analysis origins, you can view the status of the alert for each analysis origin on the alert page. For more information, see [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-analysis-origins). diff --git a/data/reusables/code-scanning/alert-tracking-link.md b/data/reusables/code-scanning/alert-tracking-link.md index 7d210ce989b0..aac200c42611 100644 --- a/data/reusables/code-scanning/alert-tracking-link.md +++ b/data/reusables/code-scanning/alert-tracking-link.md @@ -1,2 +1,2 @@ -For more information about creating issues to track {% data variables.product.prodname_code_scanning %} alerts, see "[AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/tracking-code-scanning-alerts-in-issues-using-task-lists)." +For more information about creating issues to track {% data variables.product.prodname_code_scanning %} alerts, see [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/tracking-code-scanning-alerts-in-issues-using-task-lists). diff --git a/data/reusables/code-scanning/alerts-found-in-generated-code.md b/data/reusables/code-scanning/alerts-found-in-generated-code.md index 4a75de4510a2..3ddaeb6faa28 100644 --- a/data/reusables/code-scanning/alerts-found-in-generated-code.md +++ b/data/reusables/code-scanning/alerts-found-in-generated-code.md @@ -1,3 +1,3 @@ -For compiled languages like Java, Kotlin, Go, C, C++, and C#, {% data variables.product.prodname_codeql %} analyzes all of the code which was built during the workflow run. To limit the amount of code being analyzed, build only the code which you wish to analyze by specifying your own build steps in a `run` block. You can combine specifying your own build steps with using the `paths` or `paths-ignore` filters on the `pull_request` and `push` events to ensure that your workflow only runs when specific code is changed. For more information, see "[AUTOTITLE](/actions/using-workflows/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)." +For compiled languages like Java, Kotlin, Go, C, C++, and C#, {% data variables.product.prodname_codeql %} analyzes all of the code which was built during the workflow run. To limit the amount of code being analyzed, build only the code which you wish to analyze by specifying your own build steps in a `run` block. You can combine specifying your own build steps with using the `paths` or `paths-ignore` filters on the `pull_request` and `push` events to ensure that your workflow only runs when specific code is changed. For more information, see [AUTOTITLE](/actions/using-workflows/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore). -For languages like JavaScript, Python, and TypeScript, that {% data variables.product.prodname_codeql %} analyzes without compiling the source code, you can specify additional configuration options to limit the amount of code to analyze. For more information, see "[AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning#specifying-directories-to-scan)." +For languages like JavaScript, Python, and TypeScript, that {% data variables.product.prodname_codeql %} analyzes without compiling the source code, you can specify additional configuration options to limit the amount of code to analyze. For more information, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning#specifying-directories-to-scan). diff --git a/data/reusables/code-scanning/audit-code-scanning-events.md b/data/reusables/code-scanning/audit-code-scanning-events.md index 2b14d129a0c4..815bc09a264d 100644 --- a/data/reusables/code-scanning/audit-code-scanning-events.md +++ b/data/reusables/code-scanning/audit-code-scanning-events.md @@ -1 +1 @@ -You can audit the actions taken in response to {% data variables.product.prodname_code_scanning %} alerts using {% data variables.product.prodname_dotcom %} tools. For more information, see "[AUTOTITLE](/code-security/getting-started/auditing-security-alerts)." +You can audit the actions taken in response to {% data variables.product.prodname_code_scanning %} alerts using {% data variables.product.prodname_dotcom %} tools. For more information, see [AUTOTITLE](/code-security/getting-started/auditing-security-alerts). diff --git a/data/reusables/code-scanning/beta-model-packs.md b/data/reusables/code-scanning/beta-model-packs.md index 01626cd9ea68..a4f2ac8d0b5c 100644 --- a/data/reusables/code-scanning/beta-model-packs.md +++ b/data/reusables/code-scanning/beta-model-packs.md @@ -1,6 +1,8 @@ {% ifversion codeql-model-packs %} > [!NOTE] -> {% data variables.product.prodname_codeql %} model packs and the {% data variables.product.prodname_codeql %} model editor are currently in {% data variables.release-phases.public_preview %} and subject to change. Model packs are supported by {% data variables.code-scanning.codeql_model_packs_support %} analysis. +> {% data variables.product.prodname_codeql %} model packs are currently in {% data variables.release-phases.public_preview %} and subject to change. Model packs are supported for {% data variables.code-scanning.codeql_model_packs_support %} analysis. +> +> The {% data variables.product.prodname_codeql %} model editor in the {% data variables.product.prodname_codeql %} extension for {% data variables.product.prodname_vscode %} supports modeling dependencies for {% data variables.code-scanning.codeql_model_editor_support %}. {% endif %} diff --git a/data/reusables/code-scanning/billing.md b/data/reusables/code-scanning/billing.md index 5d09d75853b9..96f529454515 100644 --- a/data/reusables/code-scanning/billing.md +++ b/data/reusables/code-scanning/billing.md @@ -1 +1 @@ -{% ifversion fpt or ghec %}Using actions to run {% data variables.product.prodname_code_scanning %} will use minutes. For more information, see "[AUTOTITLE](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)."{% endif %} +{% ifversion fpt or ghec %}Using actions to run {% data variables.product.prodname_code_scanning %} will use minutes. For more information, see [AUTOTITLE](/billing/managing-billing-for-github-actions/about-billing-for-github-actions).{% endif %} diff --git a/data/reusables/code-scanning/choose-alert-dismissal-reason.md b/data/reusables/code-scanning/choose-alert-dismissal-reason.md index 2ef1bc3c7e1a..b09bebf5b144 100644 --- a/data/reusables/code-scanning/choose-alert-dismissal-reason.md +++ b/data/reusables/code-scanning/choose-alert-dismissal-reason.md @@ -1 +1 @@ -It's important to choose the appropriate reason from the drop-down menu as this may affect whether a query continues to be included in future analysis. Optionally, you can comment on a dismissal to record the context of an alert dismissal. The dismissal comment is added to the alert timeline and can be used as justification during auditing and reporting. You can retrieve or set a comment by using the code scanning REST API. The comment is contained in `dismissed_comment` for the `alerts/{alert_number}` endpoint. For more information, see "[AUTOTITLE](/rest/code-scanning#update-a-code-scanning-alert)." +It's important to choose the appropriate reason from the drop-down menu as this may affect whether a query continues to be included in future analysis. Optionally, you can comment on a dismissal to record the context of an alert dismissal. The dismissal comment is added to the alert timeline and can be used as justification during auditing and reporting. You can retrieve or set a comment by using the code scanning REST API. The comment is contained in `dismissed_comment` for the `alerts/{alert_number}` endpoint. For more information, see [AUTOTITLE](/rest/code-scanning#update-a-code-scanning-alert). diff --git a/data/reusables/code-scanning/codeql-action-version-ghes.md b/data/reusables/code-scanning/codeql-action-version-ghes.md index 674dc71199a2..b40e52eaf688 100644 --- a/data/reusables/code-scanning/codeql-action-version-ghes.md +++ b/data/reusables/code-scanning/codeql-action-version-ghes.md @@ -1,7 +1,7 @@ {% ifversion ghes %} > [!NOTE] -> This article describes the features available with the version of the {% data variables.product.prodname_codeql %} action and associated {% data variables.product.prodname_codeql_cli %} bundle included in the initial release of this version of {% data variables.product.product_name %}. If your enterprise uses a more recent version of the {% data variables.product.prodname_codeql %} action, see the [{% data variables.product.prodname_ghe_cloud %} version](/enterprise-cloud@latest/{{ currentArticle }}) of this article for information on the latest features. -For information on using the latest version, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance#configuring-codeql-analysis-on-a-server-without-internet-access)." +> This article describes the features available with the version of the {% data variables.product.prodname_codeql %} action and associated {% data variables.product.prodname_codeql_cli %} bundle included in the initial release of this version of {% data variables.product.prodname_ghe_server %}. If your enterprise uses a more recent version of the {% data variables.product.prodname_codeql %} action, see the [{% data variables.product.prodname_ghe_cloud %} version](/enterprise-cloud@latest/{{ currentArticle }}) of this article for information on the latest features. +For information on using the latest version, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance#configuring-codeql-analysis-on-a-server-without-internet-access). {% endif %} diff --git a/data/reusables/code-scanning/codeql-cli-version-ghes.md b/data/reusables/code-scanning/codeql-cli-version-ghes.md index 9e25fe29e202..9b7bbd08d244 100644 --- a/data/reusables/code-scanning/codeql-cli-version-ghes.md +++ b/data/reusables/code-scanning/codeql-cli-version-ghes.md @@ -1,7 +1,7 @@ {% ifversion ghes %} > [!NOTE] -> This article describes the features available with the {% data variables.product.prodname_codeql_cli %} {% data variables.product.codeql_cli_ghes_recommended_version %} bundle included in the initial release of {% data variables.product.product_name %} {{ allVersions[currentVersion].currentRelease }}. +> This article describes the features available with the {% data variables.product.prodname_codeql_cli %} {% data variables.product.codeql_cli_ghes_recommended_version %} bundle included in the initial release of {% data variables.product.prodname_ghe_server %} {{ allVersions[currentVersion].currentRelease }}. > > If your site administrator has updated your {% data variables.product.prodname_codeql_cli %} version to a newer release, please see the [{% data variables.product.prodname_ghe_cloud %} version](/enterprise-cloud@latest/{{ currentArticle }}) of this article for information on the latest features. diff --git a/data/reusables/code-scanning/codeql-language-identifiers-table.md b/data/reusables/code-scanning/codeql-language-identifiers-table.md index 5990905105ce..7e084877f80b 100644 --- a/data/reusables/code-scanning/codeql-language-identifiers-table.md +++ b/data/reusables/code-scanning/codeql-language-identifiers-table.md @@ -17,7 +17,7 @@ {% data reusables.code-scanning.beta-actions-analysis %} > [!NOTE] -> If you specify one of the alternative identifiers, this is equivalent to using the standard language identifier. For example, specifying `javascript` instead of `javascript-typescript` will not exclude analysis of TypeScript code. You can do this in an advanced setup workflow with the `--paths-ignore` option. For more information, see "[AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning#specifying-directories-to-scan)." +> If you specify one of the alternative identifiers, this is equivalent to using the standard language identifier. For example, specifying `javascript` instead of `javascript-typescript` will not exclude analysis of TypeScript code. You can do this in an advanced setup workflow with the `--paths-ignore` option. For more information, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning#specifying-directories-to-scan). {% else %} diff --git a/data/reusables/code-scanning/codeql-languages-bullets.md b/data/reusables/code-scanning/codeql-languages-bullets.md index c5d2010e22f3..89ff06eee026 100644 --- a/data/reusables/code-scanning/codeql-languages-bullets.md +++ b/data/reusables/code-scanning/codeql-languages-bullets.md @@ -14,4 +14,4 @@ > * Use {% ifversion codeql-language-identifiers-311 %}`java-kotlin`{% else %}`java`{% endif %} to analyze code written in Java, Kotlin or both. > * Use {% ifversion codeql-language-identifiers-311 %}`javascript-typescript`{% else %}`javascript`{% endif %} to analyze code written in JavaScript, TypeScript or both. -For more information, see the documentation on the {% data variables.product.prodname_codeql %} website: "[Supported languages and frameworks](https://codeql.github.com/docs/codeql-overview/supported-languages-and-frameworks/)." +For more information, see the documentation on the {% data variables.product.prodname_codeql %} website: [Supported languages and frameworks](https://codeql.github.com/docs/codeql-overview/supported-languages-and-frameworks/). diff --git a/data/reusables/code-scanning/codeql-query-suites-explanation.md b/data/reusables/code-scanning/codeql-query-suites-explanation.md index 3fdfa11337ad..162190048153 100644 --- a/data/reusables/code-scanning/codeql-query-suites-explanation.md +++ b/data/reusables/code-scanning/codeql-query-suites-explanation.md @@ -2,7 +2,7 @@ The following query suites are built into {% data variables.product.prodname_cod {% data reusables.code-scanning.codeql-query-suites %} -Each of these query suites contains a different subset of the queries included in the built-in {% data variables.product.prodname_codeql %} query pack for that language. The query suites are automatically generated using the metadata for each query. For more information, see "[Metadata for CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/metadata-for-codeql-queries/)." +Each of these query suites contains a different subset of the queries included in the built-in {% data variables.product.prodname_codeql %} query pack for that language. The query suites are automatically generated using the metadata for each query. For more information, see [Metadata for CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/metadata-for-codeql-queries/). diff --git a/data/reusables/code-scanning/codeql-query-suites.md b/data/reusables/code-scanning/codeql-query-suites.md index dbdbcfd795e6..e27e4bacf26a 100644 --- a/data/reusables/code-scanning/codeql-query-suites.md +++ b/data/reusables/code-scanning/codeql-query-suites.md @@ -3,4 +3,4 @@ | `security-extended` | Queries from the default suite, plus lower severity and precision queries | | `security-and-quality` | Queries from `security-extended`, plus maintainability and reliability queries | -For more information, see: "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/built-in-codeql-query-suites)." +For more information, see: [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/built-in-codeql-query-suites). diff --git a/data/reusables/code-scanning/codeql-query-tables/codeql-version-info.md b/data/reusables/code-scanning/codeql-query-tables/codeql-version-info.md index 67f62ea16908..67bc4dd21ecc 100644 --- a/data/reusables/code-scanning/codeql-query-tables/codeql-version-info.md +++ b/data/reusables/code-scanning/codeql-query-tables/codeql-version-info.md @@ -3,6 +3,6 @@ This table lists the queries available with the latest release of the {% data va {% ifversion ghes %} > [!NOTE] -> The initial release of {% data variables.product.product_name %} {{ allVersions[currentVersion].currentRelease }} included {% data variables.product.prodname_codeql %} action and {% data variables.product.prodname_codeql_cli %} {% data variables.product.codeql_cli_ghes_recommended_version %}, which may not include all of these queries. Your site administrator can update your {% data variables.product.prodname_codeql %} version to a newer release. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance)." +> The initial release of {% data variables.product.prodname_ghe_server %} {{ allVersions[currentVersion].currentRelease }} included {% data variables.product.prodname_codeql %} action and {% data variables.product.prodname_codeql_cli %} {% data variables.product.codeql_cli_ghes_recommended_version %}, which may not include all of these queries. Your site administrator can update your {% data variables.product.prodname_codeql %} version to a newer release. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance). {% endif %} diff --git a/data/reusables/code-scanning/codeql-query-tables/links-to-all-tables.md b/data/reusables/code-scanning/codeql-query-tables/links-to-all-tables.md index 839919974fc9..944821fbdc92 100644 --- a/data/reusables/code-scanning/codeql-query-tables/links-to-all-tables.md +++ b/data/reusables/code-scanning/codeql-query-tables/links-to-all-tables.md @@ -1,8 +1,8 @@ -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/c-cpp-built-in-queries)" -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/csharp-built-in-queries)" -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/go-built-in-queries)" -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/java-kotlin-built-in-queries)" -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/javascript-typescript-built-in-queries)" -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/python-built-in-queries)" -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/ruby-built-in-queries)" -* "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/swift-built-in-queries)" +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/c-cpp-built-in-queries) +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/csharp-built-in-queries) +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/go-built-in-queries) +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/java-kotlin-built-in-queries) +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/javascript-typescript-built-in-queries) +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/python-built-in-queries) +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/ruby-built-in-queries) +* [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/swift-built-in-queries) diff --git a/data/reusables/code-scanning/codeql-query-tables/query-suite-behavior.md b/data/reusables/code-scanning/codeql-query-tables/query-suite-behavior.md index 646d5c64f1ad..9eae39607864 100644 --- a/data/reusables/code-scanning/codeql-query-tables/query-suite-behavior.md +++ b/data/reusables/code-scanning/codeql-query-tables/query-suite-behavior.md @@ -1 +1 @@ -All queries in the `default` query suite are run by default. If you choose to use the `security-extended` query suite, additional queries are run. For more information, see "[AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/built-in-codeql-query-suites)." +All queries in the `default` query suite are run by default. If you choose to use the `security-extended` query suite, additional queries are run. For more information, see [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/built-in-codeql-query-suites). diff --git a/data/reusables/code-scanning/default-setup-pre-enablement-explanation.md b/data/reusables/code-scanning/default-setup-pre-enablement-explanation.md index c1481f662d39..535a6355c7de 100644 --- a/data/reusables/code-scanning/default-setup-pre-enablement-explanation.md +++ b/data/reusables/code-scanning/default-setup-pre-enablement-explanation.md @@ -1 +1 @@ -We recommend enabling default setup for eligible repositories if there is any chance the repositories will include at least one {% data variables.product.prodname_codeql %}-supported language in the future. If you enable default setup on a repository that does not include any {% data variables.product.prodname_codeql %}-supported languages, default setup will not run any scans or use any {% data variables.product.prodname_actions %} minutes. If {% data variables.product.prodname_codeql %}-supported languages are added to the repository, default setup will automatically begin scanning {% data variables.product.prodname_codeql %}-supported languages and using {% data variables.product.prodname_actions %} minutes. For more information on {% data variables.product.prodname_codeql %}-supported languages, see "[AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql#about-codeql)." +We recommend enabling default setup for eligible repositories if there is any chance the repositories will include at least one {% data variables.product.prodname_codeql %}-supported language in the future. If you enable default setup on a repository that does not include any {% data variables.product.prodname_codeql %}-supported languages, default setup will not run any scans or use any {% data variables.product.prodname_actions %} minutes. If {% data variables.product.prodname_codeql %}-supported languages are added to the repository, default setup will automatically begin scanning {% data variables.product.prodname_codeql %}-supported languages and using {% data variables.product.prodname_actions %} minutes. For more information on {% data variables.product.prodname_codeql %}-supported languages, see [AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql#about-codeql). diff --git a/data/reusables/code-scanning/default-setup-swift-self-hosted-runners.md b/data/reusables/code-scanning/default-setup-swift-self-hosted-runners.md index d89e76f5be43..c6ffd787a2a6 100644 --- a/data/reusables/code-scanning/default-setup-swift-self-hosted-runners.md +++ b/data/reusables/code-scanning/default-setup-swift-self-hosted-runners.md @@ -1 +1 @@ -{% data variables.product.prodname_code_scanning_caps %} of Swift code is not supported for runners that are part of an {% data variables.product.prodname_actions_runner_controller %} (ARC), because ARC runners only use Linux and Swift requires macOS runners. However, you can have a mixture of both ARC runners and self-hosted macOS runners. For more information, see "[AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/about-actions-runner-controller)." +{% data variables.product.prodname_code_scanning_caps %} of Swift code is not supported for runners that are part of an {% data variables.product.prodname_actions_runner_controller %} (ARC), because ARC runners only use Linux and Swift requires macOS runners. However, you can have a mixture of both ARC runners and self-hosted macOS runners. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/about-actions-runner-controller). diff --git a/data/reusables/code-scanning/enabling-options.md b/data/reusables/code-scanning/enabling-options.md index 69ab845cced5..23b5a7652448 100644 --- a/data/reusables/code-scanning/enabling-options.md +++ b/data/reusables/code-scanning/enabling-options.md @@ -1,2 +1,2 @@ -* **{% data variables.product.prodname_codeql %}:** Uses {% data variables.product.prodname_actions %} with either default setup (see "[AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning)") or advanced setup (see "[AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-advanced-setup-for-code-scanning-with-codeql)"), or runs {% data variables.product.prodname_codeql %} analysis in a third-party continuous integration (CI) system (see "[AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system)"). -* **Third‑party:** Uses {% data variables.product.prodname_actions %} {% ifversion fpt or ghec %}(see "[AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-code-scanning-using-third-party-workflows)") {% endif %}or third-party tools and uploads results to {% data variables.product.product_name %} (see "[AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)"). +* **{% data variables.product.prodname_codeql %}:** Uses {% data variables.product.prodname_actions %} with either default setup (see [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning)) or advanced setup (see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-advanced-setup-for-code-scanning-with-codeql)), or runs {% data variables.product.prodname_codeql %} analysis in a third-party continuous integration (CI) system (see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/using-code-scanning-with-your-existing-ci-system)). +* **Third‑party:** Uses {% data variables.product.prodname_actions %} {% ifversion fpt or ghec %}(see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-code-scanning-using-third-party-workflows)) {% endif %}or third-party tools and uploads results to {% data variables.product.github %} (see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)). diff --git a/data/reusables/code-scanning/enterprise-enable-code-scanning-actions.md b/data/reusables/code-scanning/enterprise-enable-code-scanning-actions.md index 95bb42ca256d..06a225011957 100644 --- a/data/reusables/code-scanning/enterprise-enable-code-scanning-actions.md +++ b/data/reusables/code-scanning/enterprise-enable-code-scanning-actions.md @@ -1,6 +1,6 @@ {% ifversion ghes %} > [!NOTE] -> Your site administrator must enable {% data variables.product.prodname_code_scanning %} before you can use this feature. If you want to use {% data variables.product.prodname_actions %} to scan your code, the site administrator must also enable {% data variables.product.prodname_actions %} and set up the infrastructure required. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance)." +> Your site administrator must enable {% data variables.product.prodname_code_scanning %} before you can use this feature. If you want to use {% data variables.product.prodname_actions %} to scan your code, the site administrator must also enable {% data variables.product.prodname_actions %} and set up the infrastructure required. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance). {% endif %} diff --git a/data/reusables/code-scanning/enterprise-enable-code-scanning.md b/data/reusables/code-scanning/enterprise-enable-code-scanning.md index 9276f1ba0f47..be50ad250f15 100644 --- a/data/reusables/code-scanning/enterprise-enable-code-scanning.md +++ b/data/reusables/code-scanning/enterprise-enable-code-scanning.md @@ -1,8 +1,8 @@ {% ifversion ghes %} > [!NOTE] -> Your site administrator must enable {% data variables.product.prodname_code_scanning %} before you can use this feature. For more information, see "[AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance)." +> Your site administrator must enable {% data variables.product.prodname_code_scanning %} before you can use this feature. For more information, see [AUTOTITLE](/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance). > -> You may not be able to enable or disable {% data variables.product.prodname_code_scanning %} if an enterprise owner has set a {% data variables.product.prodname_GH_advanced_security %} (GHAS) policy at the enterprise level. For more information, see "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise)." +> You may not be able to enable or disable {% data variables.product.prodname_code_scanning %} if an enterprise owner has set a {% data variables.product.prodname_GH_advanced_security %} (GHAS) policy at the enterprise level. For more information, see [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise). {% endif %} diff --git a/data/reusables/code-scanning/example-configuration-files.md b/data/reusables/code-scanning/example-configuration-files.md index 5330b43debec..aa07d3993ead 100644 --- a/data/reusables/code-scanning/example-configuration-files.md +++ b/data/reusables/code-scanning/example-configuration-files.md @@ -1,4 +1,4 @@ -This configuration file adds the `security-and-quality` query suite to the list of queries run by {% data variables.product.prodname_codeql %} when scanning your code. For more information about the query suites available for use, see "[Running additional queries](#running-additional-queries)." +This configuration file adds the `security-and-quality` query suite to the list of queries run by {% data variables.product.prodname_codeql %} when scanning your code. For more information about the query suites available for use, see [Running additional queries](#running-additional-queries). ``` yaml name: "My {% data variables.product.prodname_codeql %} config" diff --git a/data/reusables/code-scanning/false-positive-fix-codeql.md b/data/reusables/code-scanning/false-positive-fix-codeql.md index 116630a498fe..7f6ca71a2e42 100644 --- a/data/reusables/code-scanning/false-positive-fix-codeql.md +++ b/data/reusables/code-scanning/false-positive-fix-codeql.md @@ -1 +1 @@ -If you dismiss a {% data variables.product.prodname_codeql %} alert as a false positive result, for example because the code uses a sanitization library that isn't supported, consider contributing to the {% data variables.product.prodname_codeql %} repository and improving the analysis. For more information about {% data variables.product.prodname_codeql %}, see "[Contributing to {% data variables.product.prodname_codeql %}](https://github.com/github/codeql/blob/main/CONTRIBUTING.md)." +If you dismiss a {% data variables.product.prodname_codeql %} alert as a false positive result, for example because the code uses a sanitization library that isn't supported, consider contributing to the {% data variables.product.prodname_codeql %} repository and improving the analysis. For more information about {% data variables.product.prodname_codeql %}, see [Contributing to {% data variables.product.prodname_codeql %}](https://github.com/github/codeql/blob/main/CONTRIBUTING.md). diff --git a/data/reusables/code-scanning/interoperable-with-tools-that-output-sarif.md b/data/reusables/code-scanning/interoperable-with-tools-that-output-sarif.md index 49508a90c705..0a436d919992 100644 --- a/data/reusables/code-scanning/interoperable-with-tools-that-output-sarif.md +++ b/data/reusables/code-scanning/interoperable-with-tools-that-output-sarif.md @@ -1 +1 @@ -{% data variables.product.prodname_code_scanning_caps %} is interoperable with third-party code scanning tools that output Static Analysis Results Interchange Format (SARIF) data. SARIF is an open standard. For more information, see "[AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning)." +{% data variables.product.prodname_code_scanning_caps %} is interoperable with third-party code scanning tools that output Static Analysis Results Interchange Format (SARIF) data. SARIF is an open standard. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning). diff --git a/data/reusables/code-scanning/licensing-note.md b/data/reusables/code-scanning/licensing-note.md index 4272fa2fdf2d..75b9a0d17d9c 100644 --- a/data/reusables/code-scanning/licensing-note.md +++ b/data/reusables/code-scanning/licensing-note.md @@ -1,7 +1,7 @@ > [!NOTE] {% ifversion fpt %} -> * The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories. The {% data variables.product.prodname_codeql_cli %} is also available in private repositories owned by organizations that use {% data variables.product.prodname_ghe_cloud %} and have a license for {% data variables.product.prodname_GH_advanced_security %}. For information, see "[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} Terms and Conditions](https://securitylab.github.com/tools/codeql/license)" and "[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)." +> * The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories. The {% data variables.product.prodname_codeql_cli %} is also available in private repositories owned by organizations that use {% data variables.product.prodname_ghe_cloud %} and have a license for {% data variables.product.prodname_GH_advanced_security %}. For information, see [{% data variables.product.github %} {% data variables.product.prodname_codeql %} Terms and Conditions](https://securitylab.github.com/tools/codeql/license) and [{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/). {%- elsif ghec %} -> * The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories that are maintained on {% data variables.product.prodname_dotcom_the_website %}, and available to use on private repositories that are owned by customers with an {% data variables.product.prodname_advanced_security %} license. For information, see "[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} Terms and Conditions](https://securitylab.github.com/tools/codeql/license)" and "[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)." +> * The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories that are maintained on {% data variables.product.prodname_dotcom_the_website %}, and available to use on private repositories that are owned by customers with an {% data variables.product.prodname_advanced_security %} license. For information, see [{% data variables.product.github %} {% data variables.product.prodname_codeql %} Terms and Conditions](https://securitylab.github.com/tools/codeql/license) and [{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/). {%- elsif ghes %} > * The {% data variables.product.prodname_codeql_cli %} is available to customers with an {% data variables.product.prodname_advanced_security %} license.{% endif %} > * {% data reusables.code-scanning.non-glibc-linux-support %} diff --git a/data/reusables/code-scanning/max-paths-setting.md b/data/reusables/code-scanning/max-paths-setting.md index 5f7f2905a2c4..a7d87935f787 100644 --- a/data/reusables/code-scanning/max-paths-setting.md +++ b/data/reusables/code-scanning/max-paths-setting.md @@ -7,7 +7,7 @@ CODEQL_ACTION_EXTRA_OPTIONS: '{"database":{"interpret-results":["--max-paths", 1]}}' ``` -* {% data variables.product.prodname_codeql_cli %} `database analyze`: update the database analysis command to include the `--max-paths=1` flag. For more information, see "[AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual/database-analyze#--max-pathsmaxpaths)." +* {% data variables.product.prodname_codeql_cli %} `database analyze`: update the database analysis command to include the `--max-paths=1` flag. For more information, see [AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual/database-analyze#--max-pathsmaxpaths). > [!NOTE] > The `max-paths` setting affects the results of all dataflow queries. diff --git a/data/reusables/code-scanning/pull-request-checks.md b/data/reusables/code-scanning/pull-request-checks.md index 9a170c73c212..f0d79f65f341 100644 --- a/data/reusables/code-scanning/pull-request-checks.md +++ b/data/reusables/code-scanning/pull-request-checks.md @@ -1 +1 @@ -When you enable {% data variables.product.prodname_code_scanning %} on pull requests, the check fails only if one or more alerts of severity `error`, or security severity `critical` or `high` are detected. The check will succeed if alerts with lower severities or security severities are detected. For important codebases, you may want the {% data variables.product.prodname_code_scanning %} check to fail if any alerts are detected, so that the alert must be fixed or dismissed before the code change is merged. For more information about severity levels, see "[About alert severity and security severity levels](/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels)." +When you enable {% data variables.product.prodname_code_scanning %} on pull requests, the check fails only if one or more alerts of severity `error`, or security severity `critical` or `high` are detected. The check will succeed if alerts with lower severities or security severities are detected. For important codebases, you may want the {% data variables.product.prodname_code_scanning %} check to fail if any alerts are detected, so that the alert must be fixed or dismissed before the code change is merged. For more information about severity levels, see [About alert severity and security severity levels](/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels). diff --git a/data/reusables/code-scanning/run-additional-queries.md b/data/reusables/code-scanning/run-additional-queries.md index 614f24bb30a4..bbde8d8c481a 100644 --- a/data/reusables/code-scanning/run-additional-queries.md +++ b/data/reusables/code-scanning/run-additional-queries.md @@ -1,14 +1,14 @@ When you use {% data variables.product.prodname_codeql %} to scan code, the {% data variables.product.prodname_codeql %} analysis engine generates a database from the code and runs queries on it. {% data variables.product.prodname_codeql %} analysis uses a default set of queries, but you can specify more queries to run, in addition to the default queries. > [!TIP] -> You can also specify the queries you want to exclude from analysis, or include in the analysis. This requires the use of a custom configuration file. For more information, see "[Using a custom configuration file](#using-a-custom-configuration-file)" and "[Excluding specific queries from analysis](#excluding-specific-queries-from-analysis)" below. +> You can also specify the queries you want to exclude from analysis, or include in the analysis. This requires the use of a custom configuration file. For more information, see [Using a custom configuration file](#using-a-custom-configuration-file) and [Excluding specific queries from analysis](#excluding-specific-queries-from-analysis) below. -You can run extra queries if they are part of a {% data variables.product.prodname_codeql %} pack published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} or a {% data variables.product.prodname_codeql %} pack stored in a repository. For more information, see "[AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql#about-codeql-queries)." +You can run extra queries if they are part of a {% data variables.product.prodname_codeql %} pack published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} or a {% data variables.product.prodname_codeql %} pack stored in a repository. For more information, see [AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql#about-codeql-queries). The options available to specify the additional queries you want to run are: * `packs` to install one or more {% data variables.product.prodname_codeql %} query packs and run the default query suite or queries for those packs. -* `queries` to specify a single _.ql_ file, a directory containing multiple _.ql_ files, a _.qls_ query suite definition file, or any combination. For more information about query suite definitions, see "[Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/)." +* `queries` to specify a single _.ql_ file, a directory containing multiple _.ql_ files, a _.qls_ query suite definition file, or any combination. For more information about query suite definitions, see [Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/). You can use both `packs` and `queries` in the same workflow. diff --git a/data/reusables/code-scanning/sarif-upload-retry.md b/data/reusables/code-scanning/sarif-upload-retry.md index 05f647079de8..9d42e5c1a477 100644 --- a/data/reusables/code-scanning/sarif-upload-retry.md +++ b/data/reusables/code-scanning/sarif-upload-retry.md @@ -1 +1 @@ -1. Rerun the process to upload the SARIF file. It should now succeed if the SARIF file meets the requirements for {% data variables.product.prodname_code_scanning %}. For information about validation and the format supported by {% data variables.product.prodname_code_scanning %}, see "[AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning)." +1. Rerun the process to upload the SARIF file. It should now succeed if the SARIF file meets the requirements for {% data variables.product.prodname_code_scanning %}. For information about validation and the format supported by {% data variables.product.prodname_code_scanning %}, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning). diff --git a/data/reusables/code-scanning/troubleshooting-multiple-configurations.md b/data/reusables/code-scanning/troubleshooting-multiple-configurations.md index 91cfefbd11a0..567b71805d83 100644 --- a/data/reusables/code-scanning/troubleshooting-multiple-configurations.md +++ b/data/reusables/code-scanning/troubleshooting-multiple-configurations.md @@ -1 +1 @@ -In some cases, your repository may use multiple {% data variables.product.prodname_code_scanning %} configurations. These configurations can generate duplicate alerts. Additionally, stale configurations that no longer run will display outdated alert statuses, and the stale alerts will stay open indefinitely. To avoid outdated alerts, you should remove stale {% data variables.product.prodname_code_scanning %} configurations from a branch. For more information on multiple configurations and deleting stale configurations, see "[AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alerts-from-multiple-configurations)" and "[AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/resolving-code-scanning-alerts#removing-stale-configurations-and-alerts-from-a-branch)." +In some cases, your repository may use multiple {% data variables.product.prodname_code_scanning %} configurations. These configurations can generate duplicate alerts. Additionally, stale configurations that no longer run will display outdated alert statuses, and the stale alerts will stay open indefinitely. To avoid outdated alerts, you should remove stale {% data variables.product.prodname_code_scanning %} configurations from a branch. For more information on multiple configurations and deleting stale configurations, see [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alerts-from-multiple-configurations) and [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/resolving-code-scanning-alerts#removing-stale-configurations-and-alerts-from-a-branch). diff --git a/data/reusables/code-scanning/upload-sarif-alert-limit.md b/data/reusables/code-scanning/upload-sarif-alert-limit.md index a59d9abe2bbc..0691e32e0fdb 100644 --- a/data/reusables/code-scanning/upload-sarif-alert-limit.md +++ b/data/reusables/code-scanning/upload-sarif-alert-limit.md @@ -1 +1 @@ -You can check that the SARIF properties have the supported size for upload and that the file is compatible with code scanning. For more information, see "[AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning#validating-your-sarif-file)". +You can check that the SARIF properties have the supported size for upload and that the file is compatible with code scanning. For more information, see [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning#validating-your-sarif-file). diff --git a/data/reusables/code-scanning/upload-sarif-ghas.md b/data/reusables/code-scanning/upload-sarif-ghas.md index a7192d040d66..817ba330f549 100644 --- a/data/reusables/code-scanning/upload-sarif-ghas.md +++ b/data/reusables/code-scanning/upload-sarif-ghas.md @@ -1,2 +1,2 @@ > [!NOTE] -> Uploading SARIF data to display as {% data variables.product.prodname_code_scanning %} results in {% data variables.product.product_name %} is supported for organization-owned repositories with {% data variables.product.prodname_GH_advanced_security %} enabled{% ifversion fpt or ghec %}, and public repositories on {% data variables.product.prodname_dotcom_the_website %}{% endif %}. For more information, see "[AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)." +> Uploading SARIF data to display as {% data variables.product.prodname_code_scanning %} results in {% data variables.product.github %} is supported for organization-owned repositories with {% data variables.product.prodname_GH_advanced_security %} enabled{% ifversion fpt or ghec %}, and public repositories on {% data variables.product.prodname_dotcom_the_website %}{% endif %}. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository). diff --git a/data/reusables/code-scanning/using-security-overview-coverage.md b/data/reusables/code-scanning/using-security-overview-coverage.md index cf622137c5f7..66564b12f11e 100644 --- a/data/reusables/code-scanning/using-security-overview-coverage.md +++ b/data/reusables/code-scanning/using-security-overview-coverage.md @@ -1,5 +1,5 @@ -1. Use options in the page summary to filter results to show the repositories you want to assess. The list of repositories and metrics displayed on the page automatically update to match your current selection. For more information on filtering, see "[AUTOTITLE](/code-security/security-overview/filtering-alerts-in-security-overview)." - * Use the **Teams** dropdown to show information only for the repositories owned by one or more teams. For more information, see "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository)." +1. Use options in the page summary to filter results to show the repositories you want to assess. The list of repositories and metrics displayed on the page automatically update to match your current selection. For more information on filtering, see [AUTOTITLE](/code-security/security-overview/filtering-alerts-in-security-overview). + * Use the **Teams** dropdown to show information only for the repositories owned by one or more teams. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository). * Click **NUMBER enabled** or **NUMBER not enabled** in the header for any feature to show only the repositories with that feature enabled or not enabled. * At the top of the list of repositories, click **NUMBER Archived** to show only repositories that are archived. * Click in the search box to add further filters to the repositories displayed. diff --git a/data/reusables/code-scanning/using-security-overview-risk.md b/data/reusables/code-scanning/using-security-overview-risk.md index 459750b6375f..f59f4af96bd6 100644 --- a/data/reusables/code-scanning/using-security-overview-risk.md +++ b/data/reusables/code-scanning/using-security-overview-risk.md @@ -1,4 +1,4 @@ -1. Use options in the page summary to filter results to show the repositories you want to assess. The list of repositories and metrics displayed on the page automatically update to match your current selection. For more information on filtering, see "[AUTOTITLE](/code-security/security-overview/filtering-alerts-in-security-overview)." +1. Use options in the page summary to filter results to show the repositories you want to assess. The list of repositories and metrics displayed on the page automatically update to match your current selection. For more information on filtering, see [AUTOTITLE](/code-security/security-overview/filtering-alerts-in-security-overview). * Use the **Teams** dropdown to show information only for the repositories owned by one or more teams. * Click **NUMBER affected** or **NUMBER unaffected** in the header for any feature to show only the repositories with open alerts or no open alerts of that type. * Click any of the descriptions of "Open alerts" in the header to show only repositories with alerts of that type and category. For example, **1 critical** to show the repository with a critical alert for {% data variables.product.prodname_dependabot %}. diff --git a/data/reusables/codeql-cli/download-codeql-cli.md b/data/reusables/codeql-cli/download-codeql-cli.md index 6f91f46fcebe..6a7f98ce88fe 100644 --- a/data/reusables/codeql-cli/download-codeql-cli.md +++ b/data/reusables/codeql-cli/download-codeql-cli.md @@ -12,7 +12,7 @@ You should download the {% data variables.product.prodname_codeql %} bundle from {% ifversion ghes %} > [!NOTE] -> For {% data variables.product.product_name %}{% ifversion ghes %} {{ allVersions[currentVersion].currentRelease }}{% endif %}, we recommend {% data variables.product.prodname_codeql_cli %} version {% data variables.product.codeql_cli_ghes_recommended_version %}. +> For {% data variables.product.prodname_ghe_server %}{% ifversion ghes %} {{ allVersions[currentVersion].currentRelease }}{% endif %}, we recommend {% data variables.product.prodname_codeql_cli %} version {% data variables.product.codeql_cli_ghes_recommended_version %}. {% endif %} diff --git a/data/reusables/codeql-cli/launch-codeql.md b/data/reusables/codeql-cli/launch-codeql.md index a2fe664f1dc9..b490ebda9fb9 100644 --- a/data/reusables/codeql-cli/launch-codeql.md +++ b/data/reusables/codeql-cli/launch-codeql.md @@ -5,4 +5,4 @@ package. * By adding `/codeql` to your `PATH`, so that you can run the executable as just `codeql`. -At this point, you can execute {% data variables.product.prodname_codeql %} commands. For a full list of the {% data variables.product.prodname_codeql_cli %} commands, see "[AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual)." +At this point, you can execute {% data variables.product.prodname_codeql %} commands. For a full list of the {% data variables.product.prodname_codeql_cli %} commands, see [AUTOTITLE](/code-security/codeql-cli/codeql-cli-manual). diff --git a/data/reusables/codespaces/about-changing-storage-size.md b/data/reusables/codespaces/about-changing-storage-size.md index 16fff8101c74..c2d9154af467 100644 --- a/data/reusables/codespaces/about-changing-storage-size.md +++ b/data/reusables/codespaces/about-changing-storage-size.md @@ -1,3 +1,3 @@ If you changed to a virtual machine with a different storage capacity (for example, from 32 GB to 64 GB), your codespace will be unavailable for a short time while the machine type is changed. If the codespace is currently active, it will automatically be stopped. When the change is complete, you'll be able to restart the codespace running on the new machine type. -If you changed to a virtual machine with the same storage capacity, the change will be applied the next time you restart the codespace. An active codespace will not be stopped automatically. For more information on restarting a codespace, see "[AUTOTITLE](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace#restarting-a-codespace)." +If you changed to a virtual machine with the same storage capacity, the change will be applied the next time you restart the codespace. An active codespace will not be stopped automatically. For more information on restarting a codespace, see [AUTOTITLE](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace#restarting-a-codespace). diff --git a/data/reusables/codespaces/about-publishing-templates.md b/data/reusables/codespaces/about-publishing-templates.md index c40a30f662ec..9060f4417d6d 100644 --- a/data/reusables/codespaces/about-publishing-templates.md +++ b/data/reusables/codespaces/about-publishing-templates.md @@ -5,4 +5,4 @@ You can save your files, close and stop your codespace, and come back to your wo However, if you delete an unpublished codespace, or if it's automatically deleted by being left unused for the duration of the retention period, then your work will be deleted too. To persist your work, and to allow others to work on your project, you will need to publish your codespace to a repository on {% data variables.product.prodname_dotcom %}. > [!NOTE] -> If an unpublished codespace is currently billed to an organization, publishing the codespace transfers ownership and billing of the codespace to your personal account. See "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#how-billing-is-handled-for-github-codespaces-templates)." +> If an unpublished codespace is currently billed to an organization, publishing the codespace transfers ownership and billing of the codespace to your personal account. See [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#how-billing-is-handled-for-github-codespaces-templates). diff --git a/data/reusables/codespaces/additional-container-config.md b/data/reusables/codespaces/additional-container-config.md index 1973698ae0a8..94a8fac8154a 100644 --- a/data/reusables/codespaces/additional-container-config.md +++ b/data/reusables/codespaces/additional-container-config.md @@ -2,4 +2,4 @@ For a complete list of available properties, see the [dev containers specificati #### Additional dev container configuration files -If you are familiar with Docker, you may want to use a Dockerfile, or Docker Compose, to configure your codespace environment, in addition to the `devcontainer.json` file. You can do this by adding your `Dockerfile` or `docker-compose.yml` files alongside the `devcontainer.json` file. For more information, see "[Using Images, Dockerfiles, and Docker Compose](https://containers.dev/guide/dockerfile)" on the Development Containers website. +If you are familiar with Docker, you may want to use a Dockerfile, or Docker Compose, to configure your codespace environment, in addition to the `devcontainer.json` file. You can do this by adding your `Dockerfile` or `docker-compose.yml` files alongside the `devcontainer.json` file. For more information, see [Using Images, Dockerfiles, and Docker Compose](https://containers.dev/guide/dockerfile) on the Development Containers website. diff --git a/data/reusables/codespaces/application-installed-locally.md b/data/reusables/codespaces/application-installed-locally.md index 69042ce72204..2466e8de32d2 100644 --- a/data/reusables/codespaces/application-installed-locally.md +++ b/data/reusables/codespaces/application-installed-locally.md @@ -1 +1 @@ -If you choose **{% data variables.product.prodname_vscode %}** or **JetBrains Gateway**, you must make sure you have installed the selected application on your local machine. +If you choose **{% data variables.product.prodname_vscode %}**, you must make sure you have installed the selected application on your local machine. diff --git a/data/reusables/codespaces/check-for-default-image.md b/data/reusables/codespaces/check-for-default-image.md index 9a1628f6cf24..18b97f89bf5f 100644 --- a/data/reusables/codespaces/check-for-default-image.md +++ b/data/reusables/codespaces/check-for-default-image.md @@ -1 +1 @@ -For information on how to check whether a codespace was built from the default dev container image, see "[AUTOTITLE](/codespaces/troubleshooting/troubleshooting-included-usage#storage-usage-for-your-base-dev-container)." +For information on how to check whether a codespace was built from the default dev container image, see [AUTOTITLE](/codespaces/troubleshooting/troubleshooting-included-usage#storage-usage-for-your-base-dev-container). diff --git a/data/reusables/codespaces/codespaces-continue-by-paying.md b/data/reusables/codespaces/codespaces-continue-by-paying.md index 1814fa409499..51b33755c5c2 100644 --- a/data/reusables/codespaces/codespaces-continue-by-paying.md +++ b/data/reusables/codespaces/codespaces-continue-by-paying.md @@ -1 +1 @@ -You can continue using {% data variables.product.prodname_github_codespaces %} beyond your monthly included storage and compute usage by providing payment details and setting a spending limit. See "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." +You can continue using {% data variables.product.prodname_github_codespaces %} beyond your monthly included storage and compute usage by providing payment details and setting a spending limit. See [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces). diff --git a/data/reusables/codespaces/codespaces-jetbrains-beta-note.md b/data/reusables/codespaces/codespaces-jetbrains-beta-note.md deleted file mode 100644 index 9a8e6675cbfb..000000000000 --- a/data/reusables/codespaces/codespaces-jetbrains-beta-note.md +++ /dev/null @@ -1,3 +0,0 @@ -> [!NOTE] -> * Using {% data variables.product.prodname_github_codespaces %} with JetBrains IDEs is currently in {% data variables.release-phases.public_preview %} and is subject to change. -> * To work on a codespace in a JetBrains IDE you must use release 2023.3.\* or 2024.1.\* of the JetBrains Gateway. diff --git a/data/reusables/codespaces/codespaces-machine-type-availability.md b/data/reusables/codespaces/codespaces-machine-type-availability.md index f5d660caef07..efd325850315 100644 --- a/data/reusables/codespaces/codespaces-machine-type-availability.md +++ b/data/reusables/codespaces/codespaces-machine-type-availability.md @@ -1 +1 @@ -Your choice of available machine types may be limited by a number of factors. These can include a policy configured for your organization, or a minimum machine type specification for your repository. For more information, see "[AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" and "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/configuring-dev-containers/setting-a-minimum-specification-for-codespace-machines)." +Your choice of available machine types may be limited by a number of factors. These can include a policy configured for your organization, or a minimum machine type specification for your repository. For more information, see [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types) and [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/configuring-dev-containers/setting-a-minimum-specification-for-codespace-machines). diff --git a/data/reusables/codespaces/codespaces-machine-types.md b/data/reusables/codespaces/codespaces-machine-types.md index b4a4288bec81..41636c6b1804 100644 --- a/data/reusables/codespaces/codespaces-machine-types.md +++ b/data/reusables/codespaces/codespaces-machine-types.md @@ -1,3 +1,3 @@ -Typically, you can run your codespace on a choice of remote machine types. These machine types offer a choice of hardware specifications ranging from 2 cores to 32 cores, although the full range of machine types may not always be available. Each machine type has a different level of resources and a different billing tier. For information, see "[AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." +Typically, you can run your codespace on a choice of remote machine types. These machine types offer a choice of hardware specifications ranging from 2 cores to 32 cores, although the full range of machine types may not always be available. Each machine type has a different level of resources and a different billing tier. For information, see [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-codespaces/about-billing-for-github-codespaces). By default the machine type with the lowest valid resources is used when you create a codespace. diff --git a/data/reusables/codespaces/codespaces-org-policies-note.md b/data/reusables/codespaces/codespaces-org-policies-note.md index 5a64d23ec5b0..3de26763de77 100644 --- a/data/reusables/codespaces/codespaces-org-policies-note.md +++ b/data/reusables/codespaces/codespaces-org-policies-note.md @@ -1,2 +1,2 @@ > [!NOTE] -> Codespaces policies only apply to codespaces that your organizations pays for. If someone creates a codespace for a repository in your organization at their own expense, then the codespace will not be bound by these policies. For more information, see "[AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/choosing-who-owns-and-pays-for-codespaces-in-your-organization)." +> Codespaces policies only apply to codespaces that your organizations pays for. If someone creates a codespace for a repository in your organization at their own expense, then the codespace will not be bound by these policies. For more information, see [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/choosing-who-owns-and-pays-for-codespaces-in-your-organization). diff --git a/data/reusables/codespaces/codespaces-unavailable-for-emus.md b/data/reusables/codespaces/codespaces-unavailable-for-emus.md index 6f8c13e10d1d..b0cb3a7a85dc 100644 --- a/data/reusables/codespaces/codespaces-unavailable-for-emus.md +++ b/data/reusables/codespaces/codespaces-unavailable-for-emus.md @@ -1 +1 @@ ->[!NOTE] {% data variables.product.prodname_github_codespaces %} is not available for repositories that are owned by managed user accounts. For more information, see "[AUTOTITLE](/enterprise-cloud@latest/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users)." +>[!NOTE] {% data variables.product.prodname_github_codespaces %} is not available for repositories that are owned by managed user accounts. For more information, see [AUTOTITLE](/enterprise-cloud@latest/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users). diff --git a/data/reusables/codespaces/committing-link-to-procedure.md b/data/reusables/codespaces/committing-link-to-procedure.md index 0f8436edaff4..d636dcfd1172 100644 --- a/data/reusables/codespaces/committing-link-to-procedure.md +++ b/data/reusables/codespaces/committing-link-to-procedure.md @@ -2,4 +2,4 @@ When you've made changes to your codespace, either new code or configuration cha For this tutorial, you created a codespace from a template repository, so the code in your codespace is not yet stored in a repository. You can create a repository by publishing the current branch to {% data variables.product.github %}. -For information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/using-source-control-in-your-codespace?tool=webui#publishing-a-codespace-created-from-a-template)." +For information, see [AUTOTITLE](/codespaces/developing-in-codespaces/using-source-control-in-your-codespace?tool=webui#publishing-a-codespace-created-from-a-template). diff --git a/data/reusables/codespaces/connect-to-codespace-from-vscode.md b/data/reusables/codespaces/connect-to-codespace-from-vscode.md index 9e899ddea24c..cadfb904a5a8 100644 --- a/data/reusables/codespaces/connect-to-codespace-from-vscode.md +++ b/data/reusables/codespaces/connect-to-codespace-from-vscode.md @@ -1 +1 @@ -You can connect to your codespace directly from {% data variables.product.prodname_vscode_shortname %}. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/using-github-codespaces-in-visual-studio-code)." +You can connect to your codespace directly from {% data variables.product.prodname_vscode_shortname %}. For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/using-github-codespaces-in-visual-studio-code). diff --git a/data/reusables/codespaces/contact-support.md b/data/reusables/codespaces/contact-support.md index 3900e65c6a36..3109e8f20ec7 100644 --- a/data/reusables/codespaces/contact-support.md +++ b/data/reusables/codespaces/contact-support.md @@ -1 +1 @@ -you may need to contact support. For more information, see "[AUTOTITLE](/codespaces/troubleshooting/working-with-support-for-github-codespaces)." +you may need to contact support. For more information, see [AUTOTITLE](/codespaces/troubleshooting/working-with-support-for-github-codespaces). diff --git a/data/reusables/codespaces/customize-vcpus-and-ram.md b/data/reusables/codespaces/customize-vcpus-and-ram.md index d2a9e8b129d6..6cb0581aa91f 100644 --- a/data/reusables/codespaces/customize-vcpus-and-ram.md +++ b/data/reusables/codespaces/customize-vcpus-and-ram.md @@ -1,5 +1,5 @@ -You can customize your codespace by adjusting the amount of vCPUs and RAM, adding dotfiles to personalize your environment, or by modifying the tools and scripts installed. For more information, see "[AUTOTITLE](/codespaces/customizing-your-codespace)." +You can customize your codespace by adjusting the amount of vCPUs and RAM, adding dotfiles to personalize your environment, or by modifying the tools and scripts installed. For more information, see [AUTOTITLE](/codespaces/customizing-your-codespace). {% data variables.product.prodname_github_codespaces %} uses a file called `devcontainer.json` to configure the development container that you use when you work in a codespace. Each repository can contain one or more `devcontainer.json` files, to give you exactly the development environment you need to work on your code in a codespace. -On launch, {% data variables.product.prodname_github_codespaces %} uses a `devcontainer.json` file, and any dependent files that make up the dev container configuration, to install tools and runtimes, and perform other setup tasks that the project requires. For more information, see "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers)." +On launch, {% data variables.product.prodname_github_codespaces %} uses a `devcontainer.json` file, and any dependent files that make up the dev container configuration, to install tools and runtimes, and perform other setup tasks that the project requires. For more information, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers). diff --git a/data/reusables/codespaces/devcontainer-properties-1.md b/data/reusables/codespaces/devcontainer-properties-1.md index 23a037fc65ed..0c9e7862e9df 100644 --- a/data/reusables/codespaces/devcontainer-properties-1.md +++ b/data/reusables/codespaces/devcontainer-properties-1.md @@ -1,4 +1,4 @@ * **name:** You can name your dev container anything you want. A default value is supplied. * **image:** The name of an image in a container registry ([DockerHub](https://hub.docker.com/), [{% data variables.product.prodname_dotcom %} {% data variables.product.prodname_container_registry %}](/packages/learn-github-packages/introduction-to-github-packages), or [Azure Container Registry](https://azure.microsoft.com/services/container-registry/)) that will be used to create the dev container for the codespace. -* **features:** A list of one or more objects, each of which references one of the available dev container features. Features are self-contained, shareable units of installation code and development container configuration. They provide an easy way to add more tooling, runtime, or library features to your development container. You can add features either within {% data variables.product.prodname_vscode_shortname %} or in the `devcontainer.json` editor on {% data variables.product.github %}. For more information, click either the **{% data variables.product.prodname_vscode %}** or **Web browser** tab in "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/configuring-dev-containers/adding-features-to-a-devcontainer-file?tool=webui)." -* **forwardPorts:** Any ports listed here will be forwarded automatically. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace)." +* **features:** A list of one or more objects, each of which references one of the available dev container features. Features are self-contained, shareable units of installation code and development container configuration. They provide an easy way to add more tooling, runtime, or library features to your development container. You can add features either within {% data variables.product.prodname_vscode_shortname %} or in the `devcontainer.json` editor on {% data variables.product.github %}. For more information, click either the **{% data variables.product.prodname_vscode %}** or **Web browser** tab in [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/configuring-dev-containers/adding-features-to-a-devcontainer-file?tool=webui). +* **forwardPorts:** Any ports listed here will be forwarded automatically. For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace). diff --git a/data/reusables/codespaces/devcontainer-properties-2.md b/data/reusables/codespaces/devcontainer-properties-2.md index a1a9b6c8d177..0734c8fb7b2e 100644 --- a/data/reusables/codespaces/devcontainer-properties-2.md +++ b/data/reusables/codespaces/devcontainer-properties-2.md @@ -1,3 +1,3 @@ * **postCreateCommand:** Use this property to run commands after your codespace is created. This can be formatted as a string (as above), an array, or an object. For more information, see the [dev containers specification](https://containers.dev/implementors/json_reference/#lifecycle-scripts) on the Development Containers website. -* **customizations:** This property allows you to customize a specific tool or service when it is used for working in a codespace. For example, you can configure specific settings and extensions for {% data variables.product.prodname_vscode_shortname %}. For more information, see "[Supporting tools and services](https://containers.dev/supporting)" on the Development Containers website. +* **customizations:** This property allows you to customize a specific tool or service when it is used for working in a codespace. For example, you can configure specific settings and extensions for {% data variables.product.prodname_vscode_shortname %}. For more information, see [Supporting tools and services](https://containers.dev/supporting) on the Development Containers website. * **remoteUser:** By default, you’re running as the vscode user, but you can optionally set this to root. diff --git a/data/reusables/codespaces/developing-in-vscode.md b/data/reusables/codespaces/developing-in-vscode.md index 875795b4c94e..543ba1a6b75d 100644 --- a/data/reusables/codespaces/developing-in-vscode.md +++ b/data/reusables/codespaces/developing-in-vscode.md @@ -1,14 +1,14 @@ ### Customizing the codespaces for a repository -You can customize the codespaces that are created for a repository by creating or updating the dev container configuration for the repository. You can do this from within a codespace. After you change a dev container configuration, you can apply the changes to the current codespace by rebuilding the Docker container for the codespace. For more information, see "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers)." +You can customize the codespaces that are created for a repository by creating or updating the dev container configuration for the repository. You can do this from within a codespace. After you change a dev container configuration, you can apply the changes to the current codespace by rebuilding the Docker container for the codespace. For more information, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers). ### Personalizing your codespace -You can use a [dotfiles](https://dotfiles.github.io/tutorials/) repository and [Settings Sync](https://code.visualstudio.com/docs/editor/settings-sync) to personalize aspects of the codespace environment for any codespace that you create. Personalization can include shell preferences and additional tools. For more information, see "[AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account)." +You can use a [dotfiles](https://dotfiles.github.io/tutorials/) repository and [Settings Sync](https://code.visualstudio.com/docs/editor/settings-sync) to personalize aspects of the codespace environment for any codespace that you create. Personalization can include shell preferences and additional tools. For more information, see [AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account). ### Running your app from a codespace -{% data reusables.codespaces.about-port-forwarding %} For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace)." +{% data reusables.codespaces.about-port-forwarding %} For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace). ### Committing your changes @@ -16,4 +16,4 @@ You can use a [dotfiles](https://dotfiles.github.io/tutorials/) repository and [ ### Using the {% data variables.product.prodname_vscode_command_palette %} -The {% data variables.product.prodname_vscode_command_palette %} allows you to access and manage many features for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_vscode %}. For more information, see "[AUTOTITLE](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces)." +The {% data variables.product.prodname_vscode_command_palette %} allows you to access and manage many features for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_vscode %}. For more information, see [AUTOTITLE](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces). diff --git a/data/reusables/codespaces/disabling-settings-sync.md b/data/reusables/codespaces/disabling-settings-sync.md index b63ce7dae144..72d71b4ba0f9 100644 --- a/data/reusables/codespaces/disabling-settings-sync.md +++ b/data/reusables/codespaces/disabling-settings-sync.md @@ -1,10 +1,10 @@ You can turn off Settings Sync to stop syncing settings to and from an instance of {% data variables.product.prodname_vscode_shortname %}. -When you turn off Settings Sync in a codespace, new codespaces continue to use the settings cached from the last time your settings were pushed to the cloud. If you use the {% data variables.product.prodname_vscode_shortname %} web client for codespaces, and want codespaces to use the default settings instead of your cached settings, you can disable Settings Sync. For more information, see "[Managing your preferences for Settings Sync](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#managing-your-preferences-for-settings-sync)." +When you turn off Settings Sync in a codespace, new codespaces continue to use the settings cached from the last time your settings were pushed to the cloud. If you use the {% data variables.product.prodname_vscode_shortname %} web client for codespaces, and want codespaces to use the default settings instead of your cached settings, you can disable Settings Sync. For more information, see [Managing your preferences for Settings Sync](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#managing-your-preferences-for-settings-sync). If you want to return to using the default {% data variables.product.prodname_vscode_shortname %} settings in all instances of {% data variables.product.prodname_vscode_shortname %}, including the desktop application, you can clear the cache in the cloud when you turn off Settings Sync. -1. If Settings Sync is currently turned off in your instance of {% data variables.product.prodname_vscode_shortname %}, and you want to clear your cached settings, you must first turn it on. For instructions, see "[AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#turning-on-settings-sync-in-a-codespace)." +1. If Settings Sync is currently turned off in your instance of {% data variables.product.prodname_vscode_shortname %}, and you want to clear your cached settings, you must first turn it on. For instructions, see [AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#turning-on-settings-sync-in-a-codespace). 1. At the bottom of the Activity Bar, select {% octicon "gear" aria-label="The gear icon" %} and click **Settings Sync is On**. 1. In the dropdown, click **Settings Sync: Turn Off**. diff --git a/data/reusables/codespaces/edit-devcontainer-json.md b/data/reusables/codespaces/edit-devcontainer-json.md index 1d6a768e74c8..ab7c02a89c57 100644 --- a/data/reusables/codespaces/edit-devcontainer-json.md +++ b/data/reusables/codespaces/edit-devcontainer-json.md @@ -1 +1 @@ -1. You can configure the codespaces that are created for your repository by adding settings to a `devcontainer.json` file. If your repository doesn't already contain a `devcontainer.json` file, you can add one now. See "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration)." +1. You can configure the codespaces that are created for your repository by adding settings to a `devcontainer.json` file. If your repository doesn't already contain a `devcontainer.json` file, you can add one now. See [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration). diff --git a/data/reusables/codespaces/emus-create-codespaces.md b/data/reusables/codespaces/emus-create-codespaces.md index 38e8e652a723..4dc9baf9c00c 100644 --- a/data/reusables/codespaces/emus-create-codespaces.md +++ b/data/reusables/codespaces/emus-create-codespaces.md @@ -1 +1 @@ -If you have a {% data variables.enterprise.prodname_managed_user %}, you cannot create codespaces for your personal repositories, unless the repository is a fork of an organization-owned repository and you are allowed to use {% data variables.product.prodname_github_codespaces %} at the organization's expense. For more information, see "[AUTOTITLE](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts)." +If you have a {% data variables.enterprise.prodname_managed_user %}, you cannot create codespaces for your personal repositories, unless the repository is a fork of an organization-owned repository and you are allowed to use {% data variables.product.prodname_github_codespaces %} at the organization's expense. For more information, see [AUTOTITLE](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts). diff --git a/data/reusables/codespaces/exporting-changes.md b/data/reusables/codespaces/exporting-changes.md index 575a8220af18..550a51c4db3c 100644 --- a/data/reusables/codespaces/exporting-changes.md +++ b/data/reusables/codespaces/exporting-changes.md @@ -1 +1 @@ -If your personal, organization, or enterprise account reaches its spending limit, you will no longer be able to create or resume codespaces that are billable to that account. However, you can still export any work-in-progress changes to a new branch. For more information, see "[AUTOTITLE](/codespaces/troubleshooting/exporting-changes-to-a-branch)." +If your personal, organization, or enterprise account reaches its spending limit, you will no longer be able to create or resume codespaces that are billable to that account. However, you can still export any work-in-progress changes to a new branch. For more information, see [AUTOTITLE](/codespaces/troubleshooting/exporting-changes-to-a-branch). diff --git a/data/reusables/codespaces/forwarded-ports-environment-variable.md b/data/reusables/codespaces/forwarded-ports-environment-variable.md index 29b139f84f0c..5c42a06a132c 100644 --- a/data/reusables/codespaces/forwarded-ports-environment-variable.md +++ b/data/reusables/codespaces/forwarded-ports-environment-variable.md @@ -1 +1 @@ -The domain {% data variables.product.prodname_dotcom %} uses for port forwarding may change from time to time. If you reference a forwarded port in your code, for example in a test, we recommend that you use an environment variable instead of hardcoding the URL. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/default-environment-variables-for-your-codespace#list-of-default-environment-variables)." +The domain {% data variables.product.prodname_dotcom %} uses for port forwarding may change from time to time. If you reference a forwarded port in your code, for example in a test, we recommend that you use an environment variable instead of hardcoding the URL. For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/default-environment-variables-for-your-codespace#list-of-default-environment-variables). diff --git a/data/reusables/codespaces/full-rebuild-tip.md b/data/reusables/codespaces/full-rebuild-tip.md index d0513894d1c7..78dc2262a089 100644 --- a/data/reusables/codespaces/full-rebuild-tip.md +++ b/data/reusables/codespaces/full-rebuild-tip.md @@ -1,2 +1,2 @@ > [!TIP] -> You may occasionally want to perform a full rebuild to clear your cache and rebuild your container with fresh images. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/rebuilding-the-container-in-a-codespace#about-rebuilding-a-container)." +> You may occasionally want to perform a full rebuild to clear your cache and rebuild your container with fresh images. For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/rebuilding-the-container-in-a-codespace#about-rebuilding-a-container). diff --git a/data/reusables/codespaces/gpg-in-active-codespaces.md b/data/reusables/codespaces/gpg-in-active-codespaces.md index 7f712caaaa1b..dd8fbb6a65f0 100644 --- a/data/reusables/codespaces/gpg-in-active-codespaces.md +++ b/data/reusables/codespaces/gpg-in-active-codespaces.md @@ -1 +1 @@ -Once you enable GPG verification, it will automatically take effect in any new codespaces you create from the relevant repositories. To have GPG verification take effect in an existing active codespace, you will need to stop and restart the codespace. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace)." +Once you enable GPG verification, it will automatically take effect in any new codespaces you create from the relevant repositories. To have GPG verification take effect in an existing active codespace, you will need to stop and restart the codespace. For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace). diff --git a/data/reusables/codespaces/jetbrains-open-codespace-plugin.md b/data/reusables/codespaces/jetbrains-open-codespace-plugin.md deleted file mode 100644 index 8229bfff6369..000000000000 --- a/data/reusables/codespaces/jetbrains-open-codespace-plugin.md +++ /dev/null @@ -1,3 +0,0 @@ -1. In the JetBrains client, click the {% data variables.product.prodname_github_codespaces %} plugin to display the {% data variables.product.prodname_github_codespaces %} tool window. - - ![Screenshot of the {% data variables.product.prodname_github_codespaces %} tool window. The "{% data variables.product.prodname_github_codespaces %}" tool window selector is highlighted with an orange outline.](/assets/images/help/codespaces/jetbrains-codespaces-tool-window.png) diff --git a/data/reusables/codespaces/jupyterlab-in-default-image.md b/data/reusables/codespaces/jupyterlab-in-default-image.md index 3772a074c55c..508bab46b30c 100644 --- a/data/reusables/codespaces/jupyterlab-in-default-image.md +++ b/data/reusables/codespaces/jupyterlab-in-default-image.md @@ -1 +1 @@ -The default dev container image includes JupyterLab, so codespaces created from the default image will always have JupyterLab installed. For more information about the default image, see "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#using-the-default-dev-container-configuration)" and the [`devcontainers/images`](https://github.com/devcontainers/images/tree/main/src/universal) repository. If you're not using the default image in your dev container configuration, you can install JupyterLab by adding the `ghcr.io/devcontainers/features/python` feature to your `devcontainer.json` file. You should include the option `"installJupyterlab": true`. For more information, see the README for the [`python`](https://github.com/devcontainers/features/tree/main/src/python#python-python) feature, in the `devcontainers/features` repository. +The default dev container image includes JupyterLab, so codespaces created from the default image will always have JupyterLab installed. For more information about the default image, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#using-the-default-dev-container-configuration) and the [`devcontainers/images`](https://github.com/devcontainers/images/tree/main/src/universal) repository. If you're not using the default image in your dev container configuration, you can install JupyterLab by adding the `ghcr.io/devcontainers/features/python` feature to your `devcontainer.json` file. You should include the option `"installJupyterlab": true`. For more information, see the README for the [`python`](https://github.com/devcontainers/features/tree/main/src/python#python-python) feature, in the `devcontainers/features` repository. diff --git a/data/reusables/codespaces/linking-to-an-existing-codespace.md b/data/reusables/codespaces/linking-to-an-existing-codespace.md index 1029be005808..09376464adad 100644 --- a/data/reusables/codespaces/linking-to-an-existing-codespace.md +++ b/data/reusables/codespaces/linking-to-an-existing-codespace.md @@ -12,5 +12,4 @@ Create a link using one of the following URL patterns. In these URLs `CODESPACE- | {% data variables.product.prodname_vscode_shortname %} web client | `https://CODESPACE-NAME.github.dev` | | {% data variables.product.prodname_vscode_shortname %} web client with a specified workspace | `https://CODESPACE-NAME.github.dev?folder=/workspaces/PATH/TO/WORKSPACE/DIRECTORY` | | {% data variables.product.prodname_vscode_shortname %} desktop application | `https://github.com/codespaces/CODESPACE-NAME?editor=vscode` | -| JetBrains Gateway | `https://github.com/codespaces/CODESPACE-NAME?editor=jetbrains` | | JupyterLab | `https://github.com/codespaces/CODESPACE-NAME?editor=jupyter` | diff --git a/data/reusables/codespaces/links-to-get-started.md b/data/reusables/codespaces/links-to-get-started.md index 7bddf800c234..5a4ffb3a48ae 100644 --- a/data/reusables/codespaces/links-to-get-started.md +++ b/data/reusables/codespaces/links-to-get-started.md @@ -1 +1 @@ -To get started with {% data variables.product.prodname_github_codespaces %}, see "[AUTOTITLE](/codespaces/getting-started/quickstart)." For more information on creating a codespace, see "[AUTOTITLE](/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository)" or "[AUTOTITLE](/codespaces/developing-in-codespaces/creating-a-codespace-from-a-template)." If you want to return to a codespace you've already created, see "[AUTOTITLE](/codespaces/developing-in-codespaces/opening-an-existing-codespace)." To learn more about how {% data variables.product.prodname_github_codespaces %} works, see "[AUTOTITLE](/codespaces/getting-started/deep-dive)." +To get started with {% data variables.product.prodname_github_codespaces %}, see [AUTOTITLE](/codespaces/getting-started/quickstart). For more information on creating a codespace, see [AUTOTITLE](/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository) or [AUTOTITLE](/codespaces/developing-in-codespaces/creating-a-codespace-from-a-template). If you want to return to a codespace you've already created, see [AUTOTITLE](/codespaces/developing-in-codespaces/opening-an-existing-codespace). To learn more about how {% data variables.product.prodname_github_codespaces %} works, see [AUTOTITLE](/codespaces/getting-started/deep-dive). diff --git a/data/reusables/codespaces/next-steps-adding-devcontainer.md b/data/reusables/codespaces/next-steps-adding-devcontainer.md index 71849136838f..a44c08bc3a7b 100644 --- a/data/reusables/codespaces/next-steps-adding-devcontainer.md +++ b/data/reusables/codespaces/next-steps-adding-devcontainer.md @@ -1,6 +1,6 @@ Here are some additional resources for more advanced scenarios. -* "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/configuring-dev-containers/adding-features-to-a-devcontainer-file?tool=webui)" -* "[AUTOTITLE](/codespaces/managing-your-codespaces/managing-your-account-specific-secrets-for-github-codespaces)" -* "[AUTOTITLE](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)" -* "[AUTOTITLE](/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace)" +* [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/configuring-dev-containers/adding-features-to-a-devcontainer-file?tool=webui) +* [AUTOTITLE](/codespaces/managing-your-codespaces/managing-your-account-specific-secrets-for-github-codespaces) +* [AUTOTITLE](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces) +* [AUTOTITLE](/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace) diff --git a/data/reusables/codespaces/opening-codespace-in-jetbrains.md b/data/reusables/codespaces/opening-codespace-in-jetbrains.md deleted file mode 100644 index d6cd82fb44c1..000000000000 --- a/data/reusables/codespaces/opening-codespace-in-jetbrains.md +++ /dev/null @@ -1,27 +0,0 @@ -If you have set the JetBrains Gateway as your default editor, then the Gateway will launch automatically when you open a codespace from {% data variables.product.github %}. - -If the JetBrains Gateway is not your default editor, you can still open a codespace in JetBrains by going to the "Your codespaces" page at [github.com/codespaces](https://github.com/codespaces) and clicking the ellipsis (...) to the right of the codespace you want to open. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/opening-an-existing-codespace?tool=webui)." - -Alternatively, you can also open the JetBrains Gateway and select an existing codespace, as described in the following procedure. - -1. Open the JetBrains Gateway application. -1. Click **Connect to {% data variables.product.prodname_codespaces %}**. - - ![Screenshot of the JetBrains Gateway home page, showing the "Connect to Codespaces" button.](/assets/images/help/codespaces/jetbrains-gateway-connect.png) - -1. In the "Your Codespaces" list, click the codespace you want to work in. - - ![Screenshot of the "Your Codespaces" list in the JetBrains Gateway.](/assets/images/help/codespaces/jetbrains-gateway-codespaces.png) - -1. In the "Available IDEs" list, click the JetBrains IDE you want to use. The Gateway will remember your choice the next time you connect to a codespace. - - ![Screenshot the "Select IDE" dropdown list in the JetBrains Gateway. The mouse pointer is pointing to "IntelliJ IDEA."](/assets/images/help/codespaces/jetbrains-gateway-ides.png) - -1. Click **Connect**. - - > [!NOTE] - > * If you chose Rider as your JetBrains IDE and the repository contains multiple solution files, the "Set Solution Path" dialog is displayed prompting you to choose which solution you want to work in. Choose a solution file from the dropdown menu and click **OK**. - > - > If the repository doesn't have a solution file, Rider opens in a basic project directory view and will have limited capabilities. For instance, you won't get .NET-specific code navigation. If there is just a single solution file in the repository it will be used automatically, without the prompt being displayed. For more information, see "[Create and open projects and solutions](https://www.jetbrains.com/help/rider/Creating_and_Opening_Projects_and_Solutions.html)" in the JetBrains documentation.

    - > - > * If you are running a firewall, then the first time you connect to a remote resource you may be prompted to allow the JetBrains Gateway to communicate across your network. diff --git a/data/reusables/codespaces/permanent-codespace-names.md b/data/reusables/codespaces/permanent-codespace-names.md index 4b9c39ce5964..e32e9d8a1bec 100644 --- a/data/reusables/codespaces/permanent-codespace-names.md +++ b/data/reusables/codespaces/permanent-codespace-names.md @@ -7,4 +7,4 @@ To find the permanent name of a codespace, do one of the following: * In a codespace, use this command in the terminal: `echo $CODESPACE_NAME`. * If {% data variables.product.prodname_cli %} is installed, either locally or in a codespace, use this command in the terminal to list all of your codespaces: `gh codespace list`. -The permanent name the codespace is also included in many of the log files. For example, in the {% data variables.product.prodname_github_codespaces %} extension log, after `fetching codespace` or `Connecting to codespace`, and in the browser console log after `clientUrl`. For more information, see "[AUTOTITLE](/codespaces/troubleshooting/github-codespaces-logs)." +The permanent name the codespace is also included in many of the log files. For example, in the {% data variables.product.prodname_github_codespaces %} extension log, after `fetching codespace` or `Connecting to codespace`, and in the browser console log after `clientUrl`. For more information, see [AUTOTITLE](/codespaces/troubleshooting/github-codespaces-logs). diff --git a/data/reusables/codespaces/port-forwarding-adding-non-jetbrains.md b/data/reusables/codespaces/port-forwarding-adding.md similarity index 79% rename from data/reusables/codespaces/port-forwarding-adding-non-jetbrains.md rename to data/reusables/codespaces/port-forwarding-adding.md index 8de1805e4e8f..769739def4db 100644 --- a/data/reusables/codespaces/port-forwarding-adding-non-jetbrains.md +++ b/data/reusables/codespaces/port-forwarding-adding.md @@ -1,6 +1,6 @@ ## Automatically forwarding a port -You can add a forwarded port to the {% data variables.product.prodname_github_codespaces %} configuration for the repository, so that the port will be automatically forwarded for all codespaces created from the repository. After you update the configuration, any previously created codespaces must be rebuilt for the change to apply. For more information about the dev container configuration file, see "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace)." +You can add a forwarded port to the {% data variables.product.prodname_github_codespaces %} configuration for the repository, so that the port will be automatically forwarded for all codespaces created from the repository. After you update the configuration, any previously created codespaces must be rebuilt for the change to apply. For more information about the dev container configuration file, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace). 1. In your codespace, open the dev container configuration file you want to update. Typically this file is `.devcontainer/devcontainer.json`. 1. Add the `forwardPorts` property. diff --git a/data/reusables/codespaces/port-forwarding-intro-non-jetbrains.md b/data/reusables/codespaces/port-forwarding-intro.md similarity index 100% rename from data/reusables/codespaces/port-forwarding-intro-non-jetbrains.md rename to data/reusables/codespaces/port-forwarding-intro.md diff --git a/data/reusables/codespaces/port-forwarding-labeling-non-jetbrains.md b/data/reusables/codespaces/port-forwarding-labeling.md similarity index 100% rename from data/reusables/codespaces/port-forwarding-labeling-non-jetbrains.md rename to data/reusables/codespaces/port-forwarding-labeling.md diff --git a/data/reusables/codespaces/port-forwarding-sharing-non-jetbrains.md b/data/reusables/codespaces/port-forwarding-sharing.md similarity index 86% rename from data/reusables/codespaces/port-forwarding-sharing-non-jetbrains.md rename to data/reusables/codespaces/port-forwarding-sharing.md index 6bc8540ae1b3..74435aeabe68 100644 --- a/data/reusables/codespaces/port-forwarding-sharing-non-jetbrains.md +++ b/data/reusables/codespaces/port-forwarding-sharing.md @@ -6,4 +6,4 @@ If you want to share a forwarded port with others, you can either make the port private to your organization or make the port public. After you make a port private to your organization, anyone in the organization with the port's URL can view the running application. After you make a port public, anyone who knows the URL and port number can view the running application without needing to authenticate. > [!NOTE] -> Your choice of port visibility options may be limited by a policy configured for your organization. For more information, see "[AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)." +> Your choice of port visibility options may be limited by a policy configured for your organization. For more information, see [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports). diff --git a/data/reusables/codespaces/prebuilds-crossreference.md b/data/reusables/codespaces/prebuilds-crossreference.md index 2a7b165787c4..d7468450d0a2 100644 --- a/data/reusables/codespaces/prebuilds-crossreference.md +++ b/data/reusables/codespaces/prebuilds-crossreference.md @@ -1 +1 @@ -To speed up codespace creation, repository administrators can enable {% data variables.product.prodname_github_codespaces %} prebuilds for a repository. For more information, see "[AUTOTITLE](/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds)." +To speed up codespace creation, repository administrators can enable {% data variables.product.prodname_github_codespaces %} prebuilds for a repository. For more information, see [AUTOTITLE](/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds). diff --git a/data/reusables/codespaces/prebuilds-permission-authorization.md b/data/reusables/codespaces/prebuilds-permission-authorization.md index 3d7736cc6c3b..f84cdd827260 100644 --- a/data/reusables/codespaces/prebuilds-permission-authorization.md +++ b/data/reusables/codespaces/prebuilds-permission-authorization.md @@ -1,4 +1,4 @@ - If the dev container configuration for the repository specifies permissions for accessing other repositories, you will be shown an authorization page. For more information on how this is specified in the `devcontainer.json` file, see "[AUTOTITLE](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)." + If the dev container configuration for the repository specifies permissions for accessing other repositories, you will be shown an authorization page. For more information on how this is specified in the `devcontainer.json` file, see [AUTOTITLE](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces). Click {% octicon "chevron-down" aria-label="The expand down icon" %} to view the details of the requested permissions. diff --git a/data/reusables/codespaces/rebuild-command.md b/data/reusables/codespaces/rebuild-command.md index 3e092e754d69..0dc618114209 100644 --- a/data/reusables/codespaces/rebuild-command.md +++ b/data/reusables/codespaces/rebuild-command.md @@ -1,5 +1,5 @@ 1. Access the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Click **Codespaces: Rebuild Container**. - ![Screenshot of the Command Palette with "rebuild container" entered in the text box and the "Codespace: Rebuild Container" option highlighted in the dropdown.](/assets/images/help/codespaces/codespaces-rebuild.png) + ![Screenshot of the Command Palette with a search for "rebuild container" and the "Codespace: Rebuild Container" option highlighted in the dropdown.](/assets/images/help/codespaces/codespaces-rebuild.png) {% indented_data_reference reusables.codespaces.full-rebuild-tip spaces=3 %} diff --git a/data/reusables/codespaces/rebuild-note.md b/data/reusables/codespaces/rebuild-note.md index 1a82d1b1dba2..bf1e5ffc53f1 100644 --- a/data/reusables/codespaces/rebuild-note.md +++ b/data/reusables/codespaces/rebuild-note.md @@ -1,2 +1,2 @@ > [!NOTE] -> When you rebuild the container in a codespace, changes you have made outside the `/workspaces` directory are cleared. Changes you have made inside the `/workspaces` directory, which includes the clone of the repository or template from which you created the codespace, are preserved over a rebuild. For more information, see "[AUTOTITLE](/codespaces/getting-started/deep-dive#about-the-directory-structure-of-a-codespace)." +> When you rebuild the container in a codespace, changes you have made outside the `/workspaces` directory are cleared. Changes you have made inside the `/workspaces` directory, which includes the clone of the repository or template from which you created the codespace, are preserved over a rebuild. For more information, see [AUTOTITLE](/codespaces/getting-started/deep-dive#about-the-directory-structure-of-a-codespace). diff --git a/data/reusables/codespaces/rebuilding-container-procedures.md b/data/reusables/codespaces/rebuilding-container-procedures.md index 4064e16d3496..d96b9ea17390 100644 --- a/data/reusables/codespaces/rebuilding-container-procedures.md +++ b/data/reusables/codespaces/rebuilding-container-procedures.md @@ -8,7 +8,7 @@ ### Using {% data variables.product.prodname_cli %} to rebuild a dev container -If you've changed a dev container configuration outside of {% data variables.product.prodname_vscode_shortname %} (for example, on {% data variables.product.github %} or in a JetBrains IDE), you can use {% data variables.product.prodname_cli %} to rebuild the dev container for an existing codespace. +If you've changed a dev container configuration outside of {% data variables.product.prodname_vscode_shortname %} (for example, on {% data variables.product.github %}), you can use {% data variables.product.prodname_cli %} to rebuild the dev container for an existing codespace. 1. In a terminal, enter the following command. diff --git a/data/reusables/codespaces/restrict-port-visibility.md b/data/reusables/codespaces/restrict-port-visibility.md index 09267ba86e16..603edaa44a18 100644 --- a/data/reusables/codespaces/restrict-port-visibility.md +++ b/data/reusables/codespaces/restrict-port-visibility.md @@ -1 +1 @@ -Organization owners can restrict the ability to make forward ports available publicly or within the organization. For more information, see "[AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)." +Organization owners can restrict the ability to make forward ports available publicly or within the organization. For more information, see [AUTOTITLE](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports). diff --git a/data/reusables/codespaces/secrets-on-start.md b/data/reusables/codespaces/secrets-on-start.md index c9dd8104bf4d..2f2284a3ea48 100644 --- a/data/reusables/codespaces/secrets-on-start.md +++ b/data/reusables/codespaces/secrets-on-start.md @@ -1 +1 @@ -Once you have created a secret, it will be available when you create a new codespace or restart the codespace. If you've created a secret on {% data variables.product.github %} and you want to use it in a currently running codespace, stop the codespace and then restart it. For information about stopping the codespace, see "[AUTOTITLE](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace)." +Once you have created a secret, it will be available when you create a new codespace or restart the codespace. If you've created a secret on {% data variables.product.github %} and you want to use it in a currently running codespace, stop the codespace and then restart it. For information about stopping the codespace, see [AUTOTITLE](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace). diff --git a/data/reusables/codespaces/setting-up-project-intro.md b/data/reusables/codespaces/setting-up-project-intro.md index e4271e1018aa..015e3621231c 100644 --- a/data/reusables/codespaces/setting-up-project-intro.md +++ b/data/reusables/codespaces/setting-up-project-intro.md @@ -2,4 +2,4 @@ in {% data variables.product.prodname_github_codespaces %} using the {% data var After you complete this tutorial, you'll be able to add a dev container configuration to your own repository, using either the {% data variables.product.prodname_vscode_shortname %} web client or the {% data variables.product.prodname_vscode_shortname %} desktop application. -For more information about dev containers, see "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers)." +For more information about dev containers, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers). diff --git a/data/reusables/codespaces/settings-sync-and-gpg.md b/data/reusables/codespaces/settings-sync-and-gpg.md index 99aa82182d03..92893c4e15eb 100644 --- a/data/reusables/codespaces/settings-sync-and-gpg.md +++ b/data/reusables/codespaces/settings-sync-and-gpg.md @@ -1,4 +1,4 @@ Your list of trusted repositories for {% data variables.product.prodname_github_codespaces %} is shared between the GPG verification and Settings Sync features. Assuming you have both features enabled, if you have added a selected list of trusted repositories for GPG verification, Settings Sync is turned on in codespaces created from these repositories. If you trust a new repository for Settings Sync, GPG verification is enabled for the same repository. Although the features share the same list of trusted repositories, you can enable or disable GPG verification and Settings Sync independently. > [!NOTE] -> If you have previously enabled GPG verification for all repositories, we recommend changing your preferences to use a selected list of trusted repositories. For more information, see "[AUTOTITLE](/codespaces/codespaces-reference/security-in-github-codespaces#using-settings-sync)." +> If you have previously enabled GPG verification for all repositories, we recommend changing your preferences to use a selected list of trusted repositories. For more information, see [AUTOTITLE](/codespaces/codespaces-reference/security-in-github-codespaces#using-settings-sync). diff --git a/data/reusables/codespaces/settings-sync-link.md b/data/reusables/codespaces/settings-sync-link.md index 576d20ba6953..2423431dc95d 100644 --- a/data/reusables/codespaces/settings-sync-link.md +++ b/data/reusables/codespaces/settings-sync-link.md @@ -1 +1 @@ -You can use Settings Sync to share these settings across all codespaces you open in the {% data variables.product.prodname_vscode_shortname %} web client and desktop application. If you're working in the web client, Settings Sync is disabled by default, and you must enable Settings Sync to push changes to your settings or pull in new changes you have made elsewhere. For more information, see "[AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#settings-sync)." +You can use Settings Sync to share these settings across all codespaces you open in the {% data variables.product.prodname_vscode_shortname %} web client and desktop application. If you're working in the web client, Settings Sync is disabled by default, and you must enable Settings Sync to push changes to your settings or pull in new changes you have made elsewhere. For more information, see [AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#settings-sync). diff --git a/data/reusables/codespaces/setup-custom-devcontainer.md b/data/reusables/codespaces/setup-custom-devcontainer.md index 0cea927e243e..aa077b51c7da 100644 --- a/data/reusables/codespaces/setup-custom-devcontainer.md +++ b/data/reusables/codespaces/setup-custom-devcontainer.md @@ -1 +1 @@ -To set up your repository to use a custom dev container, you will need to create one or more `devcontainer.json` files. You can either add these from a predefined configuration template, in {% data variables.product.prodname_vscode %}, or you can write your own. For more information on dev container configurations, see "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers)." +To set up your repository to use a custom dev container, you will need to create one or more `devcontainer.json` files. You can either add these from a predefined configuration template, in {% data variables.product.prodname_vscode %}, or you can write your own. For more information on dev container configurations, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers). diff --git a/data/reusables/codespaces/source-control.md b/data/reusables/codespaces/source-control.md index 9dc5c6fc90d7..f30abcdcc9cb 100644 --- a/data/reusables/codespaces/source-control.md +++ b/data/reusables/codespaces/source-control.md @@ -1,6 +1,6 @@ ## Publishing a codespace created from a template -When you create a codespace from a template repository or a template on the "Your codespaces" page, the work you do won't be stored in a repository on {% data variables.product.prodname_dotcom %} until you publish your codespace. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/creating-a-codespace-from-a-template#publishing-to-a-repository-on-github)." +When you create a codespace from a template repository or a template on the "Your codespaces" page, the work you do won't be stored in a repository on {% data variables.product.prodname_dotcom %} until you publish your codespace. For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/creating-a-codespace-from-a-template#publishing-to-a-repository-on-github). {% data reusables.codespaces.publishing-template-codespaces %} @@ -37,7 +37,7 @@ You can pull changes from the remote repository into your codespace at any time. 1. In the dropdown menu, click **Pull**. -If the dev container configuration has been changed since you created the codespace, you can apply the changes by rebuilding the container for the codespace. For more information, see "[AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#applying-changes-to-your-configuration)." +If the dev container configuration has been changed since you created the codespace, you can apply the changes by rebuilding the container for the codespace. For more information, see [AUTOTITLE](/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#applying-changes-to-your-configuration). ## Setting your codespace to automatically fetch new changes diff --git a/data/reusables/codespaces/stopping-a-codespace.md b/data/reusables/codespaces/stopping-a-codespace.md index 7927116623b1..05f2b3fc5ece 100644 --- a/data/reusables/codespaces/stopping-a-codespace.md +++ b/data/reusables/codespaces/stopping-a-codespace.md @@ -1,6 +1,6 @@ You can stop a codespace at any time. When you stop a codespace, any running processes are stopped. Any saved changes in your codespace will still be available when you next start it. The terminal history is preserved, but the visible contents of the terminal window are not preserved between codespace sessions. -If you do not explicitly stop a codespace, it will continue to run until it times out from inactivity. Closing a codespace does not stop the codespace. For example, if you're using a codespace in the {% data variables.product.prodname_vscode_shortname %} web client and you close the browser tab, the codespace remains running on the remote machine. For information about timeouts, see "[AUTOTITLE](/codespaces/getting-started/the-codespace-lifecycle#timeouts-for-github-codespaces)." +If you do not explicitly stop a codespace, it will continue to run until it times out from inactivity. Closing a codespace does not stop the codespace. For example, if you're using a codespace in the {% data variables.product.prodname_vscode_shortname %} web client and you close the browser tab, the codespace remains running on the remote machine. For information about timeouts, see [AUTOTITLE](/codespaces/getting-started/the-codespace-lifecycle#timeouts-for-github-codespaces). Only running codespaces incur CPU charges. A stopped codespace incurs only storage costs. diff --git a/data/reusables/codespaces/template-codespaces-default-editor.md b/data/reusables/codespaces/template-codespaces-default-editor.md index ce53ebf2e1db..54194d0a1b0c 100644 --- a/data/reusables/codespaces/template-codespaces-default-editor.md +++ b/data/reusables/codespaces/template-codespaces-default-editor.md @@ -1 +1 @@ -When you create a new codespace from a template, it is always opened in the {% data variables.product.prodname_vscode %} web client. You can reopen an existing codespace in any supported editor. For more information, see "[AUTOTITLE](/codespaces/developing-in-codespaces/opening-an-existing-codespace)." +When you create a new codespace from a template, it is always opened in the {% data variables.product.prodname_vscode %} web client. You can reopen an existing codespace in any supported editor. For more information, see [AUTOTITLE](/codespaces/developing-in-codespaces/opening-an-existing-codespace). diff --git a/data/reusables/codespaces/tips-included-usage.md b/data/reusables/codespaces/tips-included-usage.md index 829e7758b880..cd1a997640aa 100644 --- a/data/reusables/codespaces/tips-included-usage.md +++ b/data/reusables/codespaces/tips-included-usage.md @@ -1 +1 @@ -For tips on making your allowed usage go further, see "[AUTOTITLE](/codespaces/troubleshooting/troubleshooting-included-usage)." +For tips on making your allowed usage go further, see [AUTOTITLE](/codespaces/troubleshooting/troubleshooting-included-usage). diff --git a/data/reusables/codespaces/troubleshooting-simple-browser.md b/data/reusables/codespaces/troubleshooting-simple-browser.md index f9228720b783..7ad6d163fa1d 100644 --- a/data/reusables/codespaces/troubleshooting-simple-browser.md +++ b/data/reusables/codespaces/troubleshooting-simple-browser.md @@ -41,7 +41,7 @@ To implement the port configuration specified in `devcontainer.json`, {% data va } ``` -If the `settings.json` file doesn't contain these settings, check whether you have dotfiles enabled, and whether any configuration in your dotfiles is overwriting the `settings.json` file. For more information, see "[AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#dotfiles)." +If the `settings.json` file doesn't contain these settings, check whether you have dotfiles enabled, and whether any configuration in your dotfiles is overwriting the `settings.json` file. For more information, see [AUTOTITLE](/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#dotfiles). #### The application does not load diff --git a/data/reusables/codespaces/trusted-repos-step.md b/data/reusables/codespaces/trusted-repos-step.md index e034be13f29e..baa96fd78421 100644 --- a/data/reusables/codespaces/trusted-repos-step.md +++ b/data/reusables/codespaces/trusted-repos-step.md @@ -1,4 +1,4 @@ 1. To change your trusted repositories for GPG verification and Settings Sync, under "Trusted repositories," either select **All repositories**, or select **Selected repositories** and use the "Select repositories" dropdown to add repositories you trust. > [!NOTE] - > We recommend using a selected list of trusted repositories. For more information, see "[AUTOTITLE](/codespaces/codespaces-reference/security-in-github-codespaces#using-settings-sync)." + > We recommend using a selected list of trusted repositories. For more information, see [AUTOTITLE](/codespaces/codespaces-reference/security-in-github-codespaces#using-settings-sync). diff --git a/data/reusables/codespaces/when-you-can-create-codespaces.md b/data/reusables/codespaces/when-you-can-create-codespaces.md index fda1a3904dfa..e40beb41d2c2 100644 --- a/data/reusables/codespaces/when-you-can-create-codespaces.md +++ b/data/reusables/codespaces/when-you-can-create-codespaces.md @@ -1 +1 @@ -Your ability to create codespaces from organization-owned repositories depends on several factors, including the repository's visibility and the settings of the organization or its parent enterprise. For more information, see "[AUTOTITLE](/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces#no-access-to-create-a-codespace)." +Your ability to create codespaces from organization-owned repositories depends on several factors, including the repository's visibility and the settings of the organization or its parent enterprise. For more information, see [AUTOTITLE](/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces#no-access-to-create-a-codespace). diff --git a/data/reusables/command-palette/default.md b/data/reusables/command-palette/default.md index 1cdb2670f58f..feeacddb72ee 100644 --- a/data/reusables/command-palette/default.md +++ b/data/reusables/command-palette/default.md @@ -1 +1 @@ -The {% data variables.product.prodname_command_palette %} is deactivated by default. You can enable the {% data variables.product.prodname_command_palette %} with feature preview. See "[AUTOTITLE](/get-started/using-github/exploring-early-access-releases-with-feature-preview)." +The {% data variables.product.prodname_command_palette %} is deactivated by default. You can enable the {% data variables.product.prodname_command_palette %} with feature preview. See [AUTOTITLE](/get-started/using-github/exploring-early-access-releases-with-feature-preview). diff --git a/data/reusables/command_line/provide-an-access-token.md b/data/reusables/command_line/provide-an-access-token.md index 4090a883cb9c..05758d334a19 100644 --- a/data/reusables/command_line/provide-an-access-token.md +++ b/data/reusables/command_line/provide-an-access-token.md @@ -1 +1 @@ -{% ifversion fpt or ghec %}If you are accessing an organization that uses SAML SSO{% ifversion pat-v2 %} and you are using a {% data variables.product.pat_v1 %}{% endif %}, you must also authorize your {% data variables.product.pat_generic %} to access the organization before you authenticate. For more information, see "[AUTOTITLE](/authentication/authenticating-with-saml-single-sign-on/about-authentication-with-saml-single-sign-on)" and "[AUTOTITLE](/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)."{% endif %} +{% ifversion fpt or ghec %}If you are accessing an organization that uses SAML SSO{% ifversion pat-v2 %} and you are using a {% data variables.product.pat_v1 %}{% endif %}, you must also authorize your {% data variables.product.pat_generic %} to access the organization before you authenticate. For more information, see [AUTOTITLE](/authentication/authenticating-with-saml-single-sign-on/about-authentication-with-saml-single-sign-on) and [AUTOTITLE](/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on).{% endif %} diff --git a/data/reusables/community/tools-for-moderating.md b/data/reusables/community/tools-for-moderating.md index 5a1f67c9fe75..fb147236e14c 100644 --- a/data/reusables/community/tools-for-moderating.md +++ b/data/reusables/community/tools-for-moderating.md @@ -1 +1 @@ -When disruptive behavior occurs in your community, {% data variables.product.prodname_dotcom %} offers tools for applying your code of conduct and de-escalating conflict. For example, you can lock a conversation to defuse a heated interaction. For more information, see "[AUTOTITLE](/communities/moderating-comments-and-conversations)." +When disruptive behavior occurs in your community, {% data variables.product.prodname_dotcom %} offers tools for applying your code of conduct and de-escalating conflict. For example, you can lock a conversation to defuse a heated interaction. For more information, see [AUTOTITLE](/communities/moderating-comments-and-conversations). diff --git a/data/reusables/contributing/content-linter-rules.md b/data/reusables/contributing/content-linter-rules.md index 82d8de234160..f471bf450f22 100644 --- a/data/reusables/contributing/content-linter-rules.md +++ b/data/reusables/contributing/content-linter-rules.md @@ -65,4 +65,5 @@ | GHD039 | expiring-soon | Content that expires soon should be proactively addressed. | warning | expired | | [GHD040](https://github.com/github/docs/blob/main/src/content-linter/README.md) | table-liquid-versioning | Tables must use the correct liquid versioning format | error | tables | | GHD041 | third-party-action-pinning | Code examples that use third-party actions must always pin to a full length commit SHA | error | feature, actions | -| GHD042 | liquid-tag-whitespace | Liquid tags should start and end with one whitespace. Liquid tag arguments should be separated by only one whitespace. | error | liquid, format | \ No newline at end of file +| GHD042 | liquid-tag-whitespace | Liquid tags should start and end with one whitespace. Liquid tag arguments should be separated by only one whitespace. | error | liquid, format | +| GHD043 | link-quotation | Internal link titles must not be surrounded by quotations | error | links, url | \ No newline at end of file diff --git a/data/reusables/copilot-business-for-non-ghe/link-azure-subscription.md b/data/reusables/copilot-business-for-non-ghe/link-azure-subscription.md index ae5c5ed57853..80e5f686e813 100644 --- a/data/reusables/copilot-business-for-non-ghe/link-azure-subscription.md +++ b/data/reusables/copilot-business-for-non-ghe/link-azure-subscription.md @@ -1,6 +1,6 @@ To pay for licenses, you must connect your enterprise to an Azure subscription. For instructions, read the following sections in the "Connecting an Azure subscription" article: -* "[Prerequisites](/billing/managing-the-plan-for-your-github-account/connecting-an-azure-subscription#prerequisites)" -* "[Connecting your Azure subscription to an enterprise account](/billing/managing-the-plan-for-your-github-account/connecting-an-azure-subscription#connecting-your-azure-subscription-to-your-enterprise-account)" +* [Prerequisites](/billing/managing-the-plan-for-your-github-account/connecting-an-azure-subscription#prerequisites) +* [Connecting your Azure subscription to an enterprise account](/billing/managing-the-plan-for-your-github-account/connecting-an-azure-subscription#connecting-your-azure-subscription-to-your-enterprise-account) If you prefer a visual overview of the process, watch [Billing {% data variables.product.company_short %} consumption through an Azure subscription](https://www.youtube.com/watch?v=Y-f7JKJ4_8Y) on our YouTube channel. diff --git a/data/reusables/copilot-business-for-non-ghe/manage-your-enterprise.md b/data/reusables/copilot-business-for-non-ghe/manage-your-enterprise.md index f57328a1a10a..d75d6bd5c4a3 100644 --- a/data/reusables/copilot-business-for-non-ghe/manage-your-enterprise.md +++ b/data/reusables/copilot-business-for-non-ghe/manage-your-enterprise.md @@ -1,4 +1,4 @@ -For next steps that apply to any enterprise using {% data variables.product.prodname_copilot_business_short %}, see "[AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise)." The step for granting access to organizations does not apply. +For next steps that apply to any enterprise using {% data variables.product.prodname_copilot_business_short %}, see [AUTOTITLE](/copilot/setting-up-github-copilot/setting-up-github-copilot-for-your-enterprise). The step for granting access to organizations does not apply. The following sections contain specific information for your enterprise. @@ -6,13 +6,13 @@ The following sections contain specific information for your enterprise. You can use the REST API to automate license management. For example, you can list assigned licenses and latest activity, then remove access for users who haven't been using their license. -To do this in your enterprise, you can use the "[List all {% data variables.product.prodname_copilot_short %} seat assignments for an enterprise](/rest/copilot/copilot-user-management#list-all-copilot-seat-assignments-for-an-enterprise)" endpoint, then use the API to manage access to enterprise teams. To request documentation for the API endpoints for enterprise teams, please contact your account manager. +To do this in your enterprise, you can use the [List all {% data variables.product.prodname_copilot_short %} seat assignments for an enterprise](/rest/copilot/copilot-user-management#list-all-copilot-seat-assignments-for-an-enterprise) endpoint, then use the API to manage access to enterprise teams. To request documentation for the API endpoints for enterprise teams, please contact your account manager. ### Manage billing Your enterprise has access to the enhanced billing platform, which allows you to estimate upcoming spending, control overspending with budgets, and track spending changes over time. -See "[AUTOTITLE](/billing/using-the-enhanced-billing-platform-for-enterprises)." +See [AUTOTITLE](/billing/using-the-enhanced-billing-platform-for-enterprises). ### Configure content exclusions @@ -20,4 +20,4 @@ You can prevent specified files or repositories from being used to inform code c {% data reusables.enterprise-accounts.policies-tab %} 1. Click the **Content exclusion** tab. -1. Use paths to specify which content to exclude. See "[AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/configuring-content-exclusions-for-github-copilot)." +1. Use paths to specify which content to exclude. See [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/configuring-content-exclusions-for-github-copilot). diff --git a/data/reusables/copilot/chat-access-denied.md b/data/reusables/copilot/chat-access-denied.md index dda6b1d31579..9353a5333e77 100644 --- a/data/reusables/copilot/chat-access-denied.md +++ b/data/reusables/copilot/chat-access-denied.md @@ -1 +1 @@ -If you have access to {% data variables.product.prodname_copilot %} via your organization{% ifversion ghec %} or enterprise{% endif %}, you won't be able to use {% data variables.product.prodname_copilot_chat %} if your organization owner{% ifversion ghec %} or enterprise administrator{% endif %} has disabled chat. See "[AUTOTITLE](/copilot/managing-github-copilot-in-your-organization/managing-policies-and-features-for-copilot-in-your-organization)." +If you have access to {% data variables.product.prodname_copilot %} via your organization{% ifversion ghec %} or enterprise{% endif %}, you won't be able to use {% data variables.product.prodname_copilot_chat %} if your organization owner{% ifversion ghec %} or enterprise administrator{% endif %} has disabled chat. See [AUTOTITLE](/copilot/managing-github-copilot-in-your-organization/managing-policies-and-features-for-copilot-in-your-organization). diff --git a/data/reusables/copilot/code-review/custom-coding-guidelines.md b/data/reusables/copilot/code-review/custom-coding-guidelines.md index bed3e0eca158..bd6066e7384e 100644 --- a/data/reusables/copilot/code-review/custom-coding-guidelines.md +++ b/data/reusables/copilot/code-review/custom-coding-guidelines.md @@ -1,5 +1,5 @@ {% data reusables.copilot.code-review.custom-coding-guidelines-prerequisites %} -When using {% data variables.copilot.copilot_code-review_short %} to review changes in {% data variables.product.prodname_vscode %} or the {% data variables.product.github %} website, you can customize {% data variables.product.prodname_copilot_short %}'s review with custom coding guidelines written in natural language. {% data variables.product.prodname_copilot_short %} will give feedback based on your coding guidelines when it reviews your code. For more information, see "[AUTOTITLE](/copilot/using-github-copilot/code-review/configuring-coding-guidelines)." +When using {% data variables.copilot.copilot_code-review_short %} to review changes in {% data variables.product.prodname_vscode %} or the {% data variables.product.github %} website, you can customize {% data variables.product.prodname_copilot_short %}'s review with custom coding guidelines written in natural language. {% data variables.product.prodname_copilot_short %} will give feedback based on your coding guidelines when it reviews your code. For more information, see [AUTOTITLE](/copilot/using-github-copilot/code-review/configuring-coding-guidelines). Comments generated based on a coding guideline will include a message, highlighting their source. diff --git a/data/reusables/copilot/code-review/preview-note.md b/data/reusables/copilot/code-review/preview-note.md new file mode 100644 index 000000000000..a65f6f1b291c --- /dev/null +++ b/data/reusables/copilot/code-review/preview-note.md @@ -0,0 +1,6 @@ +> [!NOTE] +> +> * {% data variables.copilot.copilot_code-review %} is in {% data variables.release-phases.public_preview %} and subject to change. +> * To participate in the {% data variables.release-phases.public_preview %}, an administrator of your {% ifversion ghec %}enterprise or{% endif %} organization must opt in to the use of previews of {% data variables.product.prodname_copilot_short %} features. See {% ifversion ghec %}[AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise#copilot-in-githubcom) and{% endif %} [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization#enabling-copilot-features-in-your-organization). +> * Some functionality is available to all enabled {% data variables.product.prodname_copilot_short %} subscribers, but other functionality is only available to a limited number of users. To join the waitlist for additional functionality, see [Join the {% data variables.copilot.copilot_code-review_short %} waitlist](https://gh.io/copilot-code-review-waitlist). +> * The [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-pre-release-license-terms) apply to your use of this product. diff --git a/data/reusables/copilot/content-exclusion-fnmatch-tip.md b/data/reusables/copilot/content-exclusion-fnmatch-tip.md index 16deb3797691..86002a03c6c9 100644 --- a/data/reusables/copilot/content-exclusion-fnmatch-tip.md +++ b/data/reusables/copilot/content-exclusion-fnmatch-tip.md @@ -1 +1 @@ -You can use fnmatch pattern matching notation to specify file paths. Patterns are case insensitive. See "[File](https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch)" in the ruby-doc.org documentation. +You can use fnmatch pattern matching notation to specify file paths. Patterns are case insensitive. See [File](https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch) in the ruby-doc.org documentation. diff --git a/data/reusables/copilot/content-exclusion-tooltip.md b/data/reusables/copilot/content-exclusion-tooltip.md index b977ee8fc75e..61284a05b7f1 100644 --- a/data/reusables/copilot/content-exclusion-tooltip.md +++ b/data/reusables/copilot/content-exclusion-tooltip.md @@ -2,4 +2,4 @@ If a file has been configured as excluded content for {% data variables.product. ![Screenshot of the {% data variables.product.prodname_copilot_short %} icon in {% data variables.product.prodname_vscode_shortname %} with a tooltip for a content exclusion.](/assets/images/help/copilot/copilot-disabled-for-repo.png) -For more information, see "[AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/about-content-exclusions-for-github-copilot)." +For more information, see [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/about-content-exclusions-for-github-copilot). diff --git a/data/reusables/copilot/copilot-chat-models-list-o1-preview.md b/data/reusables/copilot/copilot-chat-models-list-o1-preview.md index b58322cb07b7..44a39a26aa6d 100644 --- a/data/reusables/copilot/copilot-chat-models-list-o1-preview.md +++ b/data/reusables/copilot/copilot-chat-models-list-o1-preview.md @@ -10,4 +10,4 @@ The following models are currently available through multi-model {% data variabl For more information about the o1 models, see [Models](https://platform.openai.com/docs/models/models) in the OpenAI Platform documentation. -For more information about the {% data variables.copilot.copilot_claude_sonnet %} model from Anthropic, see "[AUTOTITLE](/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot)." +For more information about the {% data variables.copilot.copilot_claude_sonnet %} model from Anthropic, see [AUTOTITLE](/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot). diff --git a/data/reusables/copilot/copilot-chat-models-list-o1.md b/data/reusables/copilot/copilot-chat-models-list-o1.md index 3e29a6903f00..b68ec487514f 100644 --- a/data/reusables/copilot/copilot-chat-models-list-o1.md +++ b/data/reusables/copilot/copilot-chat-models-list-o1.md @@ -7,4 +7,4 @@ The following models are currently available through multi-model {% data variabl For more information about the o1 models, see [Models](https://platform.openai.com/docs/models/models) in the OpenAI Platform documentation. -For more information about the {% data variables.copilot.copilot_claude_sonnet %} model from Anthropic, see "[AUTOTITLE](/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot)." +For more information about the {% data variables.copilot.copilot_claude_sonnet %} model from Anthropic, see [AUTOTITLE](/copilot/using-github-copilot/using-claude-sonnet-in-github-copilot). diff --git a/data/reusables/copilot/copilot-extensions/differences-between-agents-and-skillsets-2.md b/data/reusables/copilot/copilot-extensions/differences-between-agents-and-skillsets-2.md index 783bb9f187d1..39af0f6f9560 100644 --- a/data/reusables/copilot/copilot-extensions/differences-between-agents-and-skillsets-2.md +++ b/data/reusables/copilot/copilot-extensions/differences-between-agents-and-skillsets-2.md @@ -1 +1 @@ -* **Agents** are for complex integrations that need full control over how requests are processed and responses are generated. They let you implement custom logic, integrate with other LLMs and/or the Copilot API, manage conversation context, and handle all aspects of the user interaction. While Agents require more engineering and maintenance, they offer maximum flexibility for sophisticated workflows. For more information about agents, see "[AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/about-copilot-agents)." +* **Agents** are for complex integrations that need full control over how requests are processed and responses are generated. They let you implement custom logic, integrate with other LLMs and/or the Copilot API, manage conversation context, and handle all aspects of the user interaction. While Agents require more engineering and maintenance, they offer maximum flexibility for sophisticated workflows. For more information about agents, see [AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/about-copilot-agents). diff --git a/data/reusables/copilot/copilot-extensions/extending-copilot-chat.md b/data/reusables/copilot/copilot-extensions/extending-copilot-chat.md index 6c10c1287c58..1e4f83f4953c 100644 --- a/data/reusables/copilot/copilot-extensions/extending-copilot-chat.md +++ b/data/reusables/copilot/copilot-extensions/extending-copilot-chat.md @@ -2,4 +2,4 @@ {% data variables.product.prodname_copilot_extensions %} integrate the power of external tools into {% data variables.product.prodname_copilot_chat_short %}, helping you reduce context switching and receive responses with domain-specific context. You can install {% data variables.product.prodname_copilot_extensions_short %} from the {% data variables.product.prodname_marketplace %} or build private ones within your organization, then type `@` in a chat window to see a list of your available extensions. To use an extension, select the extension from the list or type the full slug name, then type your prompt. -To learn more, see "[AUTOTITLE](/copilot/using-github-copilot/using-extensions-to-integrate-external-tools-with-copilot-chat)." +To learn more, see [AUTOTITLE](/copilot/using-github-copilot/using-extensions-to-integrate-external-tools-with-copilot-chat). diff --git a/data/reusables/copilot/copilot-requires-subscription.md b/data/reusables/copilot/copilot-requires-subscription.md index 45d899e05d41..cb9545305f37 100644 --- a/data/reusables/copilot/copilot-requires-subscription.md +++ b/data/reusables/copilot/copilot-requires-subscription.md @@ -1 +1 @@ -You'll need a {% data variables.product.prodname_copilot %} subscription. For more information, see "[AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot#getting-access-to-copilot)." +You'll need a {% data variables.product.prodname_copilot %} subscription. For more information, see [AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot#getting-access-to-copilot). diff --git a/data/reusables/copilot/example-prompts/further-reading-items.md b/data/reusables/copilot/example-prompts/further-reading-items.md index 2a30fafb4a3b..9202381c6717 100644 --- a/data/reusables/copilot/example-prompts/further-reading-items.md +++ b/data/reusables/copilot/example-prompts/further-reading-items.md @@ -1,2 +1,2 @@ -* "[AUTOTITLE](/copilot/using-github-copilot/prompt-engineering-for-github-copilot)" -* "[AUTOTITLE](/copilot/using-github-copilot/best-practices-for-using-github-copilot)" +* [AUTOTITLE](/copilot/using-github-copilot/prompt-engineering-for-github-copilot) +* [AUTOTITLE](/copilot/using-github-copilot/best-practices-for-using-github-copilot) diff --git a/data/reusables/copilot/jetbrains-plugin-prerequisites.md b/data/reusables/copilot/jetbrains-plugin-prerequisites.md index db7b8703f465..cefcfcbcc414 100644 --- a/data/reusables/copilot/jetbrains-plugin-prerequisites.md +++ b/data/reusables/copilot/jetbrains-plugin-prerequisites.md @@ -1,2 +1,2 @@ -* **{% data variables.product.prodname_copilot %} plugin**. See the [{% data variables.product.prodname_copilot %} plugin](https://plugins.jetbrains.com/plugin/17718-github-copilot) in the JetBrains Marketplace. For installation instructions, see "[AUTOTITLE](/copilot/configuring-github-copilot/installing-the-github-copilot-extension-in-your-environment)." -* **Log in to {% data variables.product.company_short %} in your JetBrains IDE**. For authentication instructions, see "[AUTOTITLE](/copilot/configuring-github-copilot/installing-the-github-copilot-extension-in-your-environment?tool=jetbrains#installing-the-github-copilot-plugin-in-your-jetbrains-ide)." +* **{% data variables.product.prodname_copilot %} plugin**. See the [{% data variables.product.prodname_copilot %} plugin](https://plugins.jetbrains.com/plugin/17718-github-copilot) in the JetBrains Marketplace. For installation instructions, see [AUTOTITLE](/copilot/configuring-github-copilot/installing-the-github-copilot-extension-in-your-environment). +* **Log in to {% data variables.product.company_short %} in your JetBrains IDE**. For authentication instructions, see [AUTOTITLE](/copilot/configuring-github-copilot/installing-the-github-copilot-extension-in-your-environment?tool=jetbrains#installing-the-github-copilot-plugin-in-your-jetbrains-ide). diff --git a/data/reusables/copilot/link-to-vs-install-docs.md b/data/reusables/copilot/link-to-vs-install-docs.md index 04353eb60f68..882a1162943f 100644 --- a/data/reusables/copilot/link-to-vs-install-docs.md +++ b/data/reusables/copilot/link-to-vs-install-docs.md @@ -1 +1 @@ -For instructions on how to install the {% data variables.product.prodname_copilot_short %} extension, see "[Install GitHub Copilot in Visual Studio](https://learn.microsoft.com/visualstudio/ide/visual-studio-github-copilot-install-and-states)" in the Microsoft documentation. +For instructions on how to install the {% data variables.product.prodname_copilot_short %} extension, see [Install GitHub Copilot in Visual Studio](https://learn.microsoft.com/visualstudio/ide/visual-studio-github-copilot-install-and-states) in the Microsoft documentation. diff --git a/data/reusables/copilot/model-picker-enable-o1-models.md b/data/reusables/copilot/model-picker-enable-o1-models.md index 65a247ddec4c..cd177ba95ea7 100644 --- a/data/reusables/copilot/model-picker-enable-o1-models.md +++ b/data/reusables/copilot/model-picker-enable-o1-models.md @@ -1 +1 @@ -1. If you access {% data variables.product.prodname_copilot_chat_short %} through a {% data variables.product.prodname_copilot_business_short %}{% ifversion ghec %} or {% data variables.product.prodname_copilot_enterprise_short %}{% endif %} subscription, your organization{% ifversion ghec %} or enterprise{% endif %} must grant members the ability to switch to a different model. See "[AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/setting-policies-for-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization){% ifversion ghec %}" or "[AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise){% endif %}." +1. If you access {% data variables.product.prodname_copilot_chat_short %} through a {% data variables.product.prodname_copilot_business_short %}{% ifversion ghec %} or {% data variables.product.prodname_copilot_enterprise_short %}{% endif %} subscription, your organization{% ifversion ghec %} or enterprise{% endif %} must grant members the ability to switch to a different model. See [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/setting-policies-for-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization){% ifversion ghec %} or [AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise){% endif %}. diff --git a/data/reusables/copilot/policies-for-dotcom.md b/data/reusables/copilot/policies-for-dotcom.md index 965cd9a678da..b0884beca73c 100644 --- a/data/reusables/copilot/policies-for-dotcom.md +++ b/data/reusables/copilot/policies-for-dotcom.md @@ -1,5 +1,4 @@ -* **Opt in to user feedback collection:** If enabled, users can provide feedback on {% data variables.product.prodname_copilot_short %} pull request summaries. For more information, see "[AUTOTITLE](/enterprise-cloud@latest/copilot/github-copilot-enterprise/copilot-pull-request-summaries/creating-a-pull-request-summary-with-github-copilot)." +* **Opt in to user feedback collection:** If enabled, users can provide feedback on {% data variables.product.prodname_copilot_short %} pull request summaries. For more information, see [AUTOTITLE](/enterprise-cloud@latest/copilot/github-copilot-enterprise/copilot-pull-request-summaries/creating-a-pull-request-summary-with-github-copilot). * **Opt in to preview features:** If enabled, users can test new {% data variables.product.prodname_copilot_short %} features that are not yet generally available. Be aware that previews of features may have flaws, and the features may be changed or discontinued at any time. Current previews of {% data variables.product.prodname_copilot_short %} features include: - * {% data variables.product.prodname_copilot_autocomplete_pr %}. See "[AUTOTITLE](/copilot/using-github-copilot/using-copilot-text-completion)." - * Asking {% data variables.product.prodname_copilot_short %} why a workflow has failed. See "[AUTOTITLE](/copilot/using-github-copilot/asking-github-copilot-questions-in-githubcom#ask-why-a-workflow-has-failed)." + * {% data variables.product.prodname_copilot_autocomplete_pr %}. See [AUTOTITLE](/copilot/using-github-copilot/using-copilot-text-completion). diff --git a/data/reusables/copilot/quickstart-intro.md b/data/reusables/copilot/quickstart-intro.md index b164a6e09e35..b1daf6260156 100644 --- a/data/reusables/copilot/quickstart-intro.md +++ b/data/reusables/copilot/quickstart-intro.md @@ -1 +1 @@ -{% data variables.product.prodname_copilot %} provides coding suggestions as you type in your editor. You can also ask {% data variables.product.prodname_copilot_short %} coding-related questions, such as how best to code something, how to fix a bug, or how someone else's code works. For full details of what {% data variables.product.prodname_copilot_short %} can do, see "[AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot)." +{% data variables.product.prodname_copilot %} provides coding suggestions as you type in your editor. You can also ask {% data variables.product.prodname_copilot_short %} coding-related questions, such as how best to code something, how to fix a bug, or how someone else's code works. For full details of what {% data variables.product.prodname_copilot_short %} can do, see [AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot). diff --git a/data/reusables/copilot/quickstart-nextsteps1.md b/data/reusables/copilot/quickstart-nextsteps1.md index 114c54b9e8ea..997fee5c2790 100644 --- a/data/reusables/copilot/quickstart-nextsteps1.md +++ b/data/reusables/copilot/quickstart-nextsteps1.md @@ -1,3 +1,3 @@ -* **Find out more about {% data variables.product.prodname_copilot_short %} code completion"** - See "[AUTOTITLE](/copilot/using-github-copilot/using-github-copilot-code-suggestions-in-your-editor)." -* **Find out more about {% data variables.product.prodname_copilot_chat %}** - See "[AUTOTITLE](/copilot/github-copilot-chat/using-github-copilot-chat-in-your-ide){% ifversion fpt %}.{% endif %}"{% ifversion ghec %} and "[AUTOTITLE](/copilot/github-copilot-enterprise/copilot-chat-in-github/using-github-copilot-chat-in-githubcom)."{% endif %} -* **Learn how to write effective prompts** - See "[AUTOTITLE](/copilot/using-github-copilot/prompt-engineering-for-github-copilot)." +* **Find out more about {% data variables.product.prodname_copilot_short %} code completion"** - See [AUTOTITLE](/copilot/using-github-copilot/using-github-copilot-code-suggestions-in-your-editor). +* **Find out more about {% data variables.product.prodname_copilot_chat %}** - See [AUTOTITLE](/copilot/github-copilot-chat/using-github-copilot-chat-in-your-ide){% ifversion fpt %}.{% endif %}{% ifversion ghec %} and [AUTOTITLE](/copilot/github-copilot-enterprise/copilot-chat-in-github/using-github-copilot-chat-in-githubcom).{% endif %} +* **Learn how to write effective prompts** - See [AUTOTITLE](/copilot/using-github-copilot/prompt-engineering-for-github-copilot). diff --git a/data/reusables/copilot/quickstart-nextsteps2.md b/data/reusables/copilot/quickstart-nextsteps2.md index 5467ca1b6d98..4a8441b3b74c 100644 --- a/data/reusables/copilot/quickstart-nextsteps2.md +++ b/data/reusables/copilot/quickstart-nextsteps2.md @@ -1,3 +1,3 @@ -* **Use {% data variables.product.prodname_copilot_short %} on your mobile device** - See "[AUTOTITLE](/copilot/github-copilot-chat/copilot-chat-in-github-mobile/using-github-copilot-chat-in-github-mobile)." -* **Use {% data variables.product.prodname_copilot_short %} on the command line** - See "[AUTOTITLE](/copilot/github-copilot-in-the-cli/using-github-copilot-in-the-cli)." -* **Configure {% data variables.product.prodname_copilot_short %} in your editor** - You can enable or disable {% data variables.product.prodname_copilot %} from within your editor, and create your own preferred keyboard shortcuts for {% data variables.product.prodname_copilot_short %}. See "[AUTOTITLE](/copilot/configuring-github-copilot/configuring-github-copilot-in-your-environment)." +* **Use {% data variables.product.prodname_copilot_short %} on your mobile device** - See [AUTOTITLE](/copilot/github-copilot-chat/copilot-chat-in-github-mobile/using-github-copilot-chat-in-github-mobile). +* **Use {% data variables.product.prodname_copilot_short %} on the command line** - See [AUTOTITLE](/copilot/github-copilot-in-the-cli/using-github-copilot-in-the-cli). +* **Configure {% data variables.product.prodname_copilot_short %} in your editor** - You can enable or disable {% data variables.product.prodname_copilot %} from within your editor, and create your own preferred keyboard shortcuts for {% data variables.product.prodname_copilot_short %}. See [AUTOTITLE](/copilot/configuring-github-copilot/configuring-github-copilot-in-your-environment). diff --git a/data/reusables/copilot/signup-procedure-enterprise-msft-ea.md b/data/reusables/copilot/signup-procedure-enterprise-msft-ea.md index 8bca1eb7aa12..0d600a007a53 100644 --- a/data/reusables/copilot/signup-procedure-enterprise-msft-ea.md +++ b/data/reusables/copilot/signup-procedure-enterprise-msft-ea.md @@ -1 +1 @@ -If you're under a Microsoft Enterprise Agreement, you need to connect your Azure subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_copilot %}. For more information, see "[AUTOTITLE](/billing/managing-the-plan-for-your-github-account/connecting-an-azure-subscription)." +If you're under a Microsoft Enterprise Agreement, you need to connect your Azure subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_copilot %}. For more information, see [AUTOTITLE](/billing/managing-the-plan-for-your-github-account/connecting-an-azure-subscription). diff --git a/data/reusables/copilot/signup-procedure-org.md b/data/reusables/copilot/signup-procedure-org.md index cf8c6fa78ab7..6e6c0d304a2c 100644 --- a/data/reusables/copilot/signup-procedure-org.md +++ b/data/reusables/copilot/signup-procedure-org.md @@ -1,4 +1,4 @@ 1. Navigate to the [{% data variables.product.prodname_copilot %} sign up page](https://github.com/github-copilot/purchase). 1. Ensure you are signed in to the right organization account. If you are not, click **{% octicon "arrow-switch" aria-hidden="true" %} Switch** and select the organization for which you want to purchase {% data variables.product.prodname_copilot %}. 1. Click **Enable {% data variables.product.prodname_copilot %}**. -1. Enable {% data variables.product.prodname_copilot_short %} for some or all members of your organization. For more information about assigning seats, see "[AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-access-to-github-copilot-in-your-organization/granting-access-to-copilot-for-members-of-your-organization)." +1. Enable {% data variables.product.prodname_copilot_short %} for some or all members of your organization. For more information about assigning seats, see [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-access-to-github-copilot-in-your-organization/granting-access-to-copilot-for-members-of-your-organization). diff --git a/data/reusables/copilot/signup-procedure.md b/data/reusables/copilot/signup-procedure.md index 21cbc62b06f8..fecf0441be98 100644 --- a/data/reusables/copilot/signup-procedure.md +++ b/data/reusables/copilot/signup-procedure.md @@ -9,4 +9,4 @@ The **Suggestions matching public code** preference controls whether {% data variables.product.prodname_copilot_short %} will provide code completion suggestions that match publicly available code. - For details about the preferences, see "[AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-copilot-policies-as-an-individual-subscriber)." You can change the preferences at any time. + For details about the preferences, see [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-copilot-policies-as-an-individual-subscriber). You can change the preferences at any time. diff --git a/data/reusables/copilot/sku-isolation.md b/data/reusables/copilot/sku-isolation.md index d47ad03eb60c..c1df46b1439e 100644 --- a/data/reusables/copilot/sku-isolation.md +++ b/data/reusables/copilot/sku-isolation.md @@ -14,7 +14,7 @@ Configuring {% data variables.product.prodname_copilot_sku_isolation %} will aff ## Important steps to ensure continued access to {% data variables.product.prodname_copilot %} -You should ensure that your firewall allows access to all of the hostnames listed in "[AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/configuring-your-proxy-server-or-firewall-for-copilot)." +You should ensure that your firewall allows access to all of the hostnames listed in [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/configuring-your-proxy-server-or-firewall-for-copilot). ## Configuring {% data variables.product.prodname_copilot_sku_isolation %} for your {% ifversion ghec %}enterprise or {% endif %}organization diff --git a/data/reusables/copilot/subscription-prerequisite.md b/data/reusables/copilot/subscription-prerequisite.md index 736ad45c17d4..afa2abdb1f03 100644 --- a/data/reusables/copilot/subscription-prerequisite.md +++ b/data/reusables/copilot/subscription-prerequisite.md @@ -1 +1 @@ -For information about how to get access to {% data variables.product.prodname_copilot_short %}, see "[AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot#getting-access-to-copilot)." +For information about how to get access to {% data variables.product.prodname_copilot_short %}, see [AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot#getting-access-to-copilot). diff --git a/data/reusables/copilot/visual-studio-version.md b/data/reusables/copilot/visual-studio-version.md index f4f5074058ef..62b5ee0f1d8b 100644 --- a/data/reusables/copilot/visual-studio-version.md +++ b/data/reusables/copilot/visual-studio-version.md @@ -1 +1 @@ -To use {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vs %}, you must have version 2022 17.8 or later of {% data variables.product.prodname_vs %} for Windows installed. For more information, see "[Install {% data variables.product.prodname_vs %}](https://learn.microsoft.com/en-us/visualstudio/install/install-visual-studio)" in the Microsoft documentation. +To use {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vs %}, you must have version 2022 17.8 or later of {% data variables.product.prodname_vs %} for Windows installed. For more information, see [Install {% data variables.product.prodname_vs %}](https://learn.microsoft.com/en-us/visualstudio/install/install-visual-studio) in the Microsoft documentation. diff --git a/data/reusables/copilot/vscode-prerequisites.md b/data/reusables/copilot/vscode-prerequisites.md index df2802e3c9f8..a19a06cece39 100644 --- a/data/reusables/copilot/vscode-prerequisites.md +++ b/data/reusables/copilot/vscode-prerequisites.md @@ -1,3 +1,3 @@ * **Latest version of {% data variables.product.prodname_vscode %}**. See the [{% data variables.product.prodname_vscode %} download page](https://code.visualstudio.com/Download). -* **The {% data variables.product.prodname_copilot %} extension** - Install this from the [{% data variables.product.prodname_vs %} Marketplace](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot). For more information, see "[Set up {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vscode %}](https://code.visualstudio.com/docs/copilot/setup)" in the Microsoft documentation. -* **Sign in to {% data variables.product.company_short %} in {% data variables.product.prodname_vscode %}**. If you experience authentication issues, see "[AUTOTITLE](/copilot/troubleshooting-github-copilot/troubleshooting-issues-with-github-copilot-chat-in-ides#troubleshooting-authentication-issues-in-your-editor)." +* **The {% data variables.product.prodname_copilot %} extension** - Install this from the [{% data variables.product.prodname_vs %} Marketplace](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot). For more information, see [Set up {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vscode %}](https://code.visualstudio.com/docs/copilot/setup) in the Microsoft documentation. +* **Sign in to {% data variables.product.company_short %} in {% data variables.product.prodname_vscode %}**. If you experience authentication issues, see [AUTOTITLE](/copilot/troubleshooting-github-copilot/troubleshooting-issues-with-github-copilot-chat-in-ides#troubleshooting-authentication-issues-in-your-editor). diff --git a/data/reusables/copilot/windows-terminal-access-denied.md b/data/reusables/copilot/windows-terminal-access-denied.md index 6fe2a47fa7bb..0917c1d700a0 100644 --- a/data/reusables/copilot/windows-terminal-access-denied.md +++ b/data/reusables/copilot/windows-terminal-access-denied.md @@ -1 +1 @@ -If you have access to {% data variables.product.prodname_copilot %} via your organization{% ifversion ghec %} or enterprise{% endif %}, you won't be able to use {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_windows_terminal %} if your organization owner{% ifversion ghec %} or enterprise administrator{% endif %} has disabled {% data variables.product.prodname_copilot_cli %}. See "[AUTOTITLE](/copilot/managing-github-copilot-in-your-organization/managing-policies-and-features-for-copilot-in-your-organization)." +If you have access to {% data variables.product.prodname_copilot %} via your organization{% ifversion ghec %} or enterprise{% endif %}, you won't be able to use {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_windows_terminal %} if your organization owner{% ifversion ghec %} or enterprise administrator{% endif %} has disabled {% data variables.product.prodname_copilot_cli %}. See [AUTOTITLE](/copilot/managing-github-copilot-in-your-organization/managing-policies-and-features-for-copilot-in-your-organization). diff --git a/data/reusables/data-residency/data-resident-enterprises-network-access.md b/data/reusables/data-residency/data-resident-enterprises-network-access.md index 7db66e845b49..c2fb3fe3cbdc 100644 --- a/data/reusables/data-residency/data-resident-enterprises-network-access.md +++ b/data/reusables/data-residency/data-resident-enterprises-network-access.md @@ -1 +1 @@ -You must ensure that client systems trust {% data variables.product.company_short %}'s SSH key fingerprints and can access certain hostnames and IP addresses. See "[AUTOTITLE](/admin/data-residency/network-details-for-ghecom)." +You must ensure that client systems trust {% data variables.product.company_short %}'s SSH key fingerprints and can access certain hostnames and IP addresses. See [AUTOTITLE](/admin/data-residency/network-details-for-ghecom). diff --git a/data/reusables/data-residency/when-you-adopt-data-residency.md b/data/reusables/data-residency/when-you-adopt-data-residency.md index b5f6954ed7ae..4a577a273a1e 100644 --- a/data/reusables/data-residency/when-you-adopt-data-residency.md +++ b/data/reusables/data-residency/when-you-adopt-data-residency.md @@ -1,3 +1,8 @@ When you adopt {% data variables.enterprise.data_residency %}, you can choose where your company's code and data are stored. Your enterprise will be hosted on a dedicated subdomain of {% data variables.enterprise.data_residency_site %}. -Currently, you can store code and data in the **EU**. In the future, {% data variables.product.github %} plans to offer {% data variables.enterprise.data_residency_short %} in more regions. +The available regions are: + +* The EU +* Australia + +In the future, {% data variables.product.github %} plans to offer {% data variables.enterprise.data_residency_short %} in more regions. diff --git a/data/reusables/dependabot/about-the-dependency-graph.md b/data/reusables/dependabot/about-the-dependency-graph.md index 5eeb3f69dda0..eddeee9fd651 100644 --- a/data/reusables/dependabot/about-the-dependency-graph.md +++ b/data/reusables/dependabot/about-the-dependency-graph.md @@ -8,4 +8,4 @@ The dependency graph is a summary of the manifest and lock files stored in a rep {% endif %} {% ifversion ghes %} -{% data variables.product.product_name %} does not retrieve license information for dependencies, and does not calculate information about dependents, the repositories and packages that depend on a repository.{% endif %} +{% data variables.product.github %} does not retrieve license information for dependencies, and does not calculate information about dependents, the repositories and packages that depend on a repository.{% endif %} diff --git a/data/reusables/dependabot/access-private-dependencies-link.md b/data/reusables/dependabot/access-private-dependencies-link.md index 9a640d980514..10e8097a1d5e 100644 --- a/data/reusables/dependabot/access-private-dependencies-link.md +++ b/data/reusables/dependabot/access-private-dependencies-link.md @@ -1 +1 @@ -Dependencies sourced directly from a {% data variables.product.prodname_dotcom %} repository give {% data variables.product.prodname_dependabot %} access to the repository through the {% data variables.product.prodname_dotcom %} UI. For information about allowing {% data variables.product.prodname_dependabot %} to access private {% data variables.product.prodname_dotcom %} dependencies, see "[Allowing {% data variables.product.prodname_dependabot %} to access private dependencies](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-dependabot-to-access-private{% ifversion ghec or ghes %}-or-internal{% endif %}-dependencies)." +Dependencies sourced directly from a {% data variables.product.prodname_dotcom %} repository give {% data variables.product.prodname_dependabot %} access to the repository through the {% data variables.product.prodname_dotcom %} UI. For information about allowing {% data variables.product.prodname_dependabot %} to access private {% data variables.product.prodname_dotcom %} dependencies, see [Allowing {% data variables.product.prodname_dependabot %} to access private dependencies](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-dependabot-to-access-private{% ifversion ghec or ghes %}-or-internal{% endif %}-dependencies). diff --git a/data/reusables/dependabot/advanced-private-registry-config-link.md b/data/reusables/dependabot/advanced-private-registry-config-link.md index 8ee254297c4f..25d62f3c4267 100644 --- a/data/reusables/dependabot/advanced-private-registry-config-link.md +++ b/data/reusables/dependabot/advanced-private-registry-config-link.md @@ -1 +1 @@ -For in-depth information about available options, as well as recommendations and advice when configuring private registries, see "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/guidance-for-the-configuration-of-private-registries-for-dependabot)." +For in-depth information about available options, as well as recommendations and advice when configuring private registries, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/guidance-for-the-configuration-of-private-registries-for-dependabot). diff --git a/data/reusables/dependabot/automated-tests-note.md b/data/reusables/dependabot/automated-tests-note.md index 816d8d103fcf..9571f829facc 100644 --- a/data/reusables/dependabot/automated-tests-note.md +++ b/data/reusables/dependabot/automated-tests-note.md @@ -1,2 +1,2 @@ > [!NOTE] -> It's good practice to have automated tests and acceptance processes in place so that checks are carried out before the pull request is merged. This is particularly important if the suggested version to upgrade to contains additional functionality, or a change that breaks your project's code. For more information about continuous integration, see "[AUTOTITLE](/actions/automating-builds-and-tests/about-continuous-integration)." +> It's good practice to have automated tests and acceptance processes in place so that checks are carried out before the pull request is merged. This is particularly important if the suggested version to upgrade to contains additional functionality, or a change that breaks your project's code. For more information about continuous integration, see [AUTOTITLE](/actions/automating-builds-and-tests/about-continuous-integration). diff --git a/data/reusables/dependabot/automatically-pause-dependabot-updates.md b/data/reusables/dependabot/automatically-pause-dependabot-updates.md index 107f9f55e9a9..fcaf65da0533 100644 --- a/data/reusables/dependabot/automatically-pause-dependabot-updates.md +++ b/data/reusables/dependabot/automatically-pause-dependabot-updates.md @@ -17,7 +17,7 @@ When {% data variables.product.prodname_dependabot %} is paused, {% data variabl * To the UI of the **Settings** tab of the repository (under **{% ifversion code-security-wording-only %}**Code security**{% else %}**Code security and analysis**{% endif %}**, then **{% data variables.product.prodname_dependabot %}**). * To the list of {% data variables.product.prodname_dependabot_alerts %} (if {% data variables.product.prodname_dependabot_security_updates %} are affected). -{% ifversion dependabot-updates-paused-enterprise-orgs %} Additionally, you will be able to see whether {% data variables.product.prodname_dependabot %} is paused at the organization-level in the security overview. The `paused` status will also be visible via the API. For more information, see "[AUTOTITLE](/rest/repos#enable-automated-security-fixes)."{% endif %} +{% ifversion dependabot-updates-paused-enterprise-orgs %} Additionally, you will be able to see whether {% data variables.product.prodname_dependabot %} is paused at the organization-level in the security overview. The `paused` status will also be visible via the API. For more information, see [AUTOTITLE](/rest/repos#enable-automated-security-fixes).{% endif %} As soon as a maintainer interacts with a {% data variables.product.prodname_dependabot %} pull request again, {% data variables.product.prodname_dependabot %} will unpause itself: * Security updates are automatically resumed for {% data variables.product.prodname_dependabot_alerts %}. diff --git a/data/reusables/dependabot/dependabot-alert-create-PR.md b/data/reusables/dependabot/dependabot-alert-create-PR.md index b9ba972431c5..c0ac1d7d5069 100644 --- a/data/reusables/dependabot/dependabot-alert-create-PR.md +++ b/data/reusables/dependabot/dependabot-alert-create-PR.md @@ -1 +1 @@ -If you have enabled {% data variables.product.prodname_dependabot_security_updates %} for your repository, the alert may also contain a link to a pull request to update the manifest or lock file to the minimum version that resolves the vulnerability. For more information, see "[AUTOTITLE](/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates)." +If you have enabled {% data variables.product.prodname_dependabot_security_updates %} for your repository, the alert may also contain a link to a pull request to update the manifest or lock file to the minimum version that resolves the vulnerability. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates). diff --git a/data/reusables/dependabot/dependabot-alert-rules.md b/data/reusables/dependabot/dependabot-alert-rules.md index 4de8c6f50dab..01b56a4053dd 100644 --- a/data/reusables/dependabot/dependabot-alert-rules.md +++ b/data/reusables/dependabot/dependabot-alert-rules.md @@ -1 +1 @@ -Additionally, you can use {% data variables.dependabot.auto_triage_rules %} to manage your alerts at scale, so you can auto-dismiss or snooze alerts, and specify which alerts you want {% data variables.product.prodname_dependabot %} to open pull requests for. For information about the different types of auto-triage rules, and whether your repositories are eligible, see "[AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/about-dependabot-auto-triage-rules)." +Additionally, you can use {% data variables.dependabot.auto_triage_rules %} to manage your alerts at scale, so you can auto-dismiss or snooze alerts, and specify which alerts you want {% data variables.product.prodname_dependabot %} to open pull requests for. For information about the different types of auto-triage rules, and whether your repositories are eligible, see [AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/about-dependabot-auto-triage-rules). diff --git a/data/reusables/dependabot/dependabot-alerts-dependency-graph-enterprise.md b/data/reusables/dependabot/dependabot-alerts-dependency-graph-enterprise.md index 168833580d3f..9c81dfc894df 100644 --- a/data/reusables/dependabot/dependabot-alerts-dependency-graph-enterprise.md +++ b/data/reusables/dependabot/dependabot-alerts-dependency-graph-enterprise.md @@ -1,2 +1,2 @@ {% ifversion ghes %} -Enterprise owners can configure {% ifversion ghes %}the dependency graph and {% endif %}{% data variables.product.prodname_dependabot_alerts %} for an enterprise. For more information, see {% ifversion ghes %}"[AUTOTITLE](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)" and {% endif %}"[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)."{% endif %} +Enterprise owners can configure {% ifversion ghes %}the dependency graph and {% endif %}{% data variables.product.prodname_dependabot_alerts %} for an enterprise. For more information, see {% ifversion ghes %}[AUTOTITLE](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise) and {% endif %}[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise).{% endif %} diff --git a/data/reusables/dependabot/dependabot-alerts-enterprise-server-repo-org-enablement.md b/data/reusables/dependabot/dependabot-alerts-enterprise-server-repo-org-enablement.md index 472187bfda8e..381ebf9cb810 100644 --- a/data/reusables/dependabot/dependabot-alerts-enterprise-server-repo-org-enablement.md +++ b/data/reusables/dependabot/dependabot-alerts-enterprise-server-repo-org-enablement.md @@ -1,3 +1,3 @@ Enterprise owners must configure the dependency graph and {% data variables.product.prodname_dependabot_alerts %} for an enterprise. -Once {% data variables.product.prodname_dependabot_alerts %} have been configured, repository administrators and organization owners can enable {% data variables.product.prodname_dependabot_alerts %} for private and internal repositories in their {% ifversion code-security-wording-only %}"Code security"{% else %}"Code security and analysis"{% endif %} settings page. Public repositories are enabled by default. For more information, see "[AUTOTITLE](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)", "[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)," and "[AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts)." +Once {% data variables.product.prodname_dependabot_alerts %} have been configured, repository administrators and organization owners can enable {% data variables.product.prodname_dependabot_alerts %} for private and internal repositories in their {% ifversion code-security-wording-only %}"Code security"{% else %}"Code security and analysis"{% endif %} settings page. Public repositories are enabled by default. For more information, see [AUTOTITLE](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise), [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise), and [AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts). diff --git a/data/reusables/dependabot/dependabot-alerts-filters.md b/data/reusables/dependabot/dependabot-alerts-filters.md index cdd1e4c50ece..d47b18ca1b2b 100644 --- a/data/reusables/dependabot/dependabot-alerts-filters.md +++ b/data/reusables/dependabot/dependabot-alerts-filters.md @@ -8,7 +8,7 @@ You can sort and filter {% data variables.product.prodname_dependabot_alerts %} | `manifest` | Displays alerts for the selected manifest | Use `manifest:webwolf/pom.xml` to show alerts on the pom.xml file of the webwolf application | | `package` | Displays alerts for the selected package | Use `package:django` to show alerts for django | | `resolution` | Displays alerts of the selected resolution status | Use `resolution:no-bandwidth` to show alerts previously parked due to lack of resources or time to fix them | -| `repo` | Displays alerts based on the repository they relate to
    Note that this filter is only available for security overview. For more information, see "[AUTOTITLE](/code-security/security-overview/about-security-overview)" | Use `repo:octocat-repo` to show alerts in the repository called `octocat-repo` | +| `repo` | Displays alerts based on the repository they relate to
    Note that this filter is only available for security overview. For more information, see [AUTOTITLE](/code-security/security-overview/about-security-overview) | Use `repo:octocat-repo` to show alerts in the repository called `octocat-repo` | | `scope` | Displays alerts based on the scope of the dependency they relate to | Use `scope:development` to show alerts for dependencies that are only used during development | | `severity` | Displays alerts based on their level of severity | Use `severity:high` to show alerts with a severity of High | | `sort` | Displays alerts according to the selected sort order | The default sorting option for alerts is `sort:most-important`, which ranks alerts by importance
    Use `sort:newest` to show the latest alerts reported by {% data variables.product.prodname_dependabot %} | diff --git a/data/reusables/dependabot/dependabot-custom-rules-ghas.md b/data/reusables/dependabot/dependabot-custom-rules-ghas.md index b22d628fa4dc..d1443e673bb9 100644 --- a/data/reusables/dependabot/dependabot-custom-rules-ghas.md +++ b/data/reusables/dependabot/dependabot-custom-rules-ghas.md @@ -1 +1 @@ -Help you manage your {% data variables.product.prodname_dependabot_alerts %} at scale. With {% data variables.dependabot.custom_rules %} you have control over the alerts you want to ignore, snooze, or trigger a {% data variables.product.prodname_dependabot %} security update for. For more information, see "[AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)" and "[AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/customizing-auto-triage-rules-to-prioritize-dependabot-alerts)." +Help you manage your {% data variables.product.prodname_dependabot_alerts %} at scale. With {% data variables.dependabot.custom_rules %} you have control over the alerts you want to ignore, snooze, or trigger a {% data variables.product.prodname_dependabot %} security update for. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts) and [AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/customizing-auto-triage-rules-to-prioritize-dependabot-alerts). diff --git a/data/reusables/dependabot/dependabot-ignore-dependencies.md b/data/reusables/dependabot/dependabot-ignore-dependencies.md index f6093d36d69f..7da2e35ddf9b 100644 --- a/data/reusables/dependabot/dependabot-ignore-dependencies.md +++ b/data/reusables/dependabot/dependabot-ignore-dependencies.md @@ -1,4 +1,4 @@ If you want to ignore updates for the dependency, you must do one of the following. -* Configure an `ignore` rule for the dependency in the `dependabot.yml` file. For more information, see "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/dependabot-options-reference#ignore)." -* Use the `@dependabot ignore` comment command for the dependency in the pull request for the grouped updates. For more information, see "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/managing-pull-requests-for-dependency-updates#managing-dependabot-pull-requests-for-grouped-{% ifversion dependabot-grouped-security-updates-config %}{% else %}version-{% endif %}updates-with-comment-commands)." +* Configure an `ignore` rule for the dependency in the `dependabot.yml` file. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/dependabot-options-reference#ignore). +* Use the `@dependabot ignore` comment command for the dependency in the pull request for the grouped updates. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/managing-pull-requests-for-dependency-updates#managing-dependabot-pull-requests-for-grouped-{% ifversion dependabot-grouped-security-updates-config %}{% else %}version-{% endif %}updates-with-comment-commands). diff --git a/data/reusables/dependabot/dependabot-on-actions-enterprise-policy-condition.md b/data/reusables/dependabot/dependabot-on-actions-enterprise-policy-condition.md index 6279970e7297..e128a4886fa2 100644 --- a/data/reusables/dependabot/dependabot-on-actions-enterprise-policy-condition.md +++ b/data/reusables/dependabot/dependabot-on-actions-enterprise-policy-condition.md @@ -1,3 +1,3 @@ {% ifversion ghec %} -When you enforce a policy to only allow actions and reusable workflows from your enterprise, and you enable {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_actions %}, {% data variables.product.prodname_dependabot %} will not run. To enable {% data variables.product.prodname_dependabot %} to run with your enterprise actions and reusable workflows, you should choose either to allow actions created by {% data variables.product.prodname_dotcom %}, or allow specified actions and reusable workflows. For more information, see "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#allowing-select-actions-and-reusable-workflows-to-run)." +When you enforce a policy to only allow actions and reusable workflows from your enterprise, and you enable {% data variables.product.prodname_dependabot %} on {% data variables.product.prodname_actions %}, {% data variables.product.prodname_dependabot %} will not run. To enable {% data variables.product.prodname_dependabot %} to run with your enterprise actions and reusable workflows, you should choose either to allow actions created by {% data variables.product.prodname_dotcom %}, or allow specified actions and reusable workflows. For more information, see [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#allowing-select-actions-and-reusable-workflows-to-run). {% endif %} diff --git a/data/reusables/dependabot/dependabot-on-actions-self-hosted-link.md b/data/reusables/dependabot/dependabot-on-actions-self-hosted-link.md index 9107da907c7b..d00d4b815ea6 100644 --- a/data/reusables/dependabot/dependabot-on-actions-self-hosted-link.md +++ b/data/reusables/dependabot/dependabot-on-actions-self-hosted-link.md @@ -1,3 +1,3 @@ {% ifversion dependabot-on-actions-self-hosted %} -To have greater control over {% data variables.product.prodname_dependabot %}'s access to your private registries and internal network resources, you can configure {% data variables.product.prodname_dependabot %} to run on {% data variables.product.prodname_actions %} self-hosted runners. For more information, see "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/about-dependabot-on-github-actions-runners)" and "[AUTOTITLE](/code-security/dependabot/maintain-dependencies/managing-dependabot-on-self-hosted-runners)." +To have greater control over {% data variables.product.prodname_dependabot %}'s access to your private registries and internal network resources, you can configure {% data variables.product.prodname_dependabot %} to run on {% data variables.product.prodname_actions %} self-hosted runners. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/about-dependabot-on-github-actions-runners) and [AUTOTITLE](/code-security/dependabot/maintain-dependencies/managing-dependabot-on-self-hosted-runners). {% endif %} diff --git a/data/reusables/dependabot/dependabot-runners-network-requirements.md b/data/reusables/dependabot/dependabot-runners-network-requirements.md index 72613c1627ba..443c054f21c5 100644 --- a/data/reusables/dependabot/dependabot-runners-network-requirements.md +++ b/data/reusables/dependabot/dependabot-runners-network-requirements.md @@ -1,6 +1,6 @@ {% data variables.product.prodname_dependabot %} runners require access to the public internet, {% data variables.product.prodname_dotcom_the_website %}, and any internal registries that will be used in {% data variables.product.prodname_dependabot_updates %}. To minimize the risk to your internal network, you should limit access from the Virtual Machine (VM) to your internal network. This reduces the potential for damage to internal systems if a runner were to download a hijacked dependency. {% ifversion fpt or ghec %} -You must also allow outbound traffic to `dependabot-actions.githubapp.com` to prevent the jobs for {% data variables.product.prodname_dependabot_security_updates %} from failing. For more information, see "[AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#communication-between-self-hosted-runners-and-github)." +You must also allow outbound traffic to `dependabot-actions.githubapp.com` to prevent the jobs for {% data variables.product.prodname_dependabot_security_updates %} from failing. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#communication-between-self-hosted-runners-and-github). {% endif %} diff --git a/data/reusables/dependabot/dependabot-security-updates-disable-for-alert-rules.md b/data/reusables/dependabot/dependabot-security-updates-disable-for-alert-rules.md index f2b7cba07a7c..9c3e686a1955 100644 --- a/data/reusables/dependabot/dependabot-security-updates-disable-for-alert-rules.md +++ b/data/reusables/dependabot/dependabot-security-updates-disable-for-alert-rules.md @@ -1,6 +1,6 @@ {% ifversion dependabot-auto-triage-rules %} > [!NOTE] -> When {% data variables.product.prodname_dependabot_security_updates %} are enabled for a repository, {% data variables.product.prodname_dependabot %} will automatically try to open pull requests to resolve **every** open {% data variables.product.prodname_dependabot %} alert that has an available patch. If you prefer to customize which alerts {% data variables.product.prodname_dependabot %} opens pull requests for, you should leave {% data variables.product.prodname_dependabot_security_updates %} **disabled** and create an auto-triage rule. For more information, see "[AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/customizing-auto-triage-rules-to-prioritize-dependabot-alerts)." +> When {% data variables.product.prodname_dependabot_security_updates %} are enabled for a repository, {% data variables.product.prodname_dependabot %} will automatically try to open pull requests to resolve **every** open {% data variables.product.prodname_dependabot %} alert that has an available patch. If you prefer to customize which alerts {% data variables.product.prodname_dependabot %} opens pull requests for, you should leave {% data variables.product.prodname_dependabot_security_updates %} **disabled** and create an auto-triage rule. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/customizing-auto-triage-rules-to-prioritize-dependabot-alerts). {% endif %} diff --git a/data/reusables/dependabot/dependabot-security-updates-groups-supported.md b/data/reusables/dependabot/dependabot-security-updates-groups-supported.md index 9b07638794e7..7c28b22f73a8 100644 --- a/data/reusables/dependabot/dependabot-security-updates-groups-supported.md +++ b/data/reusables/dependabot/dependabot-security-updates-groups-supported.md @@ -1,5 +1,5 @@ {% ifversion dependabot-grouped-security-updates-config %}You can use the `dependabot.yml` file to create separate rules to group {% data variables.product.prodname_dependabot_version_updates %} and {% data variables.product.prodname_dependabot_security_updates %}.{% else %} -You can only use the `dependabot.yml` file to create groups for {% data variables.product.prodname_dependabot_version_updates %}. Grouped {% data variables.product.prodname_dependabot_security_updates %} are enabled or disabled in your repository or organization settings and do not support customization. For more information, see "[AUTOTITLE](/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates#about-grouped-security-updates)."{% endif %} +You can only use the `dependabot.yml` file to create groups for {% data variables.product.prodname_dependabot_version_updates %}. Grouped {% data variables.product.prodname_dependabot_security_updates %} are enabled or disabled in your repository or organization settings and do not support customization. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates#about-grouped-security-updates).{% endif %} > [!NOTE] > If a grouped pull request for {% data variables.product.prodname_dependabot_version_updates %} contains a vulnerable package, {% data variables.product.prodname_dependabot_security_updates %} will still attempt to create a _separate_ pull request to update the vulnerable package to a secure version. Creating a separate pull request for security updates ensures you have visibility into package vulnerabilities. diff --git a/data/reusables/dependabot/dependabot-tos.md b/data/reusables/dependabot/dependabot-tos.md index accadedb4580..cd2eecff7f70 100644 --- a/data/reusables/dependabot/dependabot-tos.md +++ b/data/reusables/dependabot/dependabot-tos.md @@ -1,5 +1,5 @@ {% ifversion fpt %} {% data variables.product.prodname_dependabot %} and all related features are covered by [{% data variables.product.prodname_dotcom %}'s Terms of Service](/free-pro-team@latest/site-policy/github-terms/github-terms-of-service). {% elsif ghec %} -{% data variables.product.prodname_dependabot %} and all related features are covered by your license agreement. For more information, see "[{% data variables.product.company_short %} Enterprise Customer Terms](https://github.com/customer-terms)." +{% data variables.product.prodname_dependabot %} and all related features are covered by your license agreement. For more information, see [{% data variables.product.company_short %} Enterprise Customer Terms](https://github.com/customer-terms). {% endif %} diff --git a/data/reusables/dependabot/dependabot-updates-and-actions.md b/data/reusables/dependabot/dependabot-updates-and-actions.md index 92da0cf0dd5b..f3fb2b9b9d70 100644 --- a/data/reusables/dependabot/dependabot-updates-and-actions.md +++ b/data/reusables/dependabot/dependabot-updates-and-actions.md @@ -1,3 +1,3 @@ If you enable {% data variables.product.prodname_dependabot %} on a new repository and have {% data variables.product.prodname_actions %} enabled, {% data variables.product.prodname_dependabot %} will run on {% data variables.product.prodname_actions %} by default. -If you enable {% data variables.product.prodname_dependabot %} on a new repository and have {% data variables.product.prodname_actions %} disabled, {% data variables.product.prodname_dependabot %} will run on the legacy application in {% data variables.product.product_name %} to perform {% data variables.product.prodname_dependabot_updates %}. This doesn't provide as good performance, visibility, or control of {% data variables.product.prodname_dependabot_updates %} jobs as {% data variables.product.prodname_actions %} does. If you want to use {% data variables.product.prodname_dependabot %} with {% data variables.product.prodname_actions %}, you must ensure that your repository enables {% data variables.product.prodname_actions %}, then enable "{% data variables.product.prodname_dependabot %} on Actions runners" from the repository's {% ifversion code-security-wording-only %}"Code security"{% else %}"Code security and analysis"{% endif %} settings page. +If you enable {% data variables.product.prodname_dependabot %} on a new repository and have {% data variables.product.prodname_actions %} disabled, {% data variables.product.prodname_dependabot %} will run on the legacy application in {% data variables.product.github %} to perform {% data variables.product.prodname_dependabot_updates %}. This doesn't provide as good performance, visibility, or control of {% data variables.product.prodname_dependabot_updates %} jobs as {% data variables.product.prodname_actions %} does. If you want to use {% data variables.product.prodname_dependabot %} with {% data variables.product.prodname_actions %}, you must ensure that your repository enables {% data variables.product.prodname_actions %}, then enable "{% data variables.product.prodname_dependabot %} on Actions runners" from the repository's {% ifversion code-security-wording-only %}"Code security"{% else %}"Code security and analysis"{% endif %} settings page. diff --git a/data/reusables/dependabot/dependabot-updates-prs-and-actions.md b/data/reusables/dependabot/dependabot-updates-prs-and-actions.md index ed221af284eb..3b27527a31e5 100644 --- a/data/reusables/dependabot/dependabot-updates-prs-and-actions.md +++ b/data/reusables/dependabot/dependabot-updates-prs-and-actions.md @@ -1 +1 @@ -{% ifversion fpt or ghec %}Pull requests opened by {% data variables.product.prodname_dependabot %} can trigger workflows that run actions. For more information, see "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions)."{% elsif ghes %} {% data reusables.dependabot.enabling-actions-for-ghes %} {% data variables.product.prodname_actions %} is required for {% data variables.product.prodname_dependabot_version_updates %} and {% data variables.product.prodname_dependabot_security_updates %} to run on {% data variables.product.product_name %}. For more information, see "[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)."{% endif %} +{% ifversion fpt or ghec %}Pull requests opened by {% data variables.product.prodname_dependabot %} can trigger workflows that run actions. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions).{% elsif ghes %} {% data reusables.dependabot.enabling-actions-for-ghes %} {% data variables.product.prodname_actions %} is required for {% data variables.product.prodname_dependabot_version_updates %} and {% data variables.product.prodname_dependabot_security_updates %} to run on {% data variables.product.github %}. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise).{% endif %} diff --git a/data/reusables/dependabot/dependabot-updates-signed-commits.md b/data/reusables/dependabot/dependabot-updates-signed-commits.md index cf5406c8c0dc..2035c5302d84 100644 --- a/data/reusables/dependabot/dependabot-updates-signed-commits.md +++ b/data/reusables/dependabot/dependabot-updates-signed-commits.md @@ -1 +1 @@ -{% data variables.product.prodname_dependabot %} signs its own commits by default, even if commit signing is not a requirement for the repository. For more information about verified commits, see "[AUTOTITLE](/authentication/managing-commit-signature-verification/about-commit-signature-verification)." +{% data variables.product.prodname_dependabot %} signs its own commits by default, even if commit signing is not a requirement for the repository. For more information about verified commits, see [AUTOTITLE](/authentication/managing-commit-signature-verification/about-commit-signature-verification). diff --git a/data/reusables/dependabot/dependabot-updates-supported-repos-ecosystems.md b/data/reusables/dependabot/dependabot-updates-supported-repos-ecosystems.md index bd4589dfc894..5b46a07a782b 100644 --- a/data/reusables/dependabot/dependabot-updates-supported-repos-ecosystems.md +++ b/data/reusables/dependabot/dependabot-updates-supported-repos-ecosystems.md @@ -1 +1 @@ -For information on the supported repositories and ecosystems, see "[AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories)." +For information on the supported repositories and ecosystems, see [AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories). diff --git a/data/reusables/dependabot/dependency-submission-api-build-time-dependencies.md b/data/reusables/dependabot/dependency-submission-api-build-time-dependencies.md index 155fa49dc9df..37b91def80fb 100644 --- a/data/reusables/dependabot/dependency-submission-api-build-time-dependencies.md +++ b/data/reusables/dependabot/dependency-submission-api-build-time-dependencies.md @@ -1 +1 @@ -You may not see all of your dependencies represented in the dependency graph, especially if some dependencies are build-time dependencies. You can use the {% data variables.dependency-submission-api.name %} to inform {% data variables.product.prodname_dotcom %} about your other dependencies, and receive security updates for them. For more information, see "[AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api)." +You may not see all of your dependencies represented in the dependency graph, especially if some dependencies are build-time dependencies. You can use the {% data variables.dependency-submission-api.name %} to inform {% data variables.product.prodname_dotcom %} about your other dependencies, and receive security updates for them. For more information, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api). diff --git a/data/reusables/dependabot/dismiss-low-impact-rule.md b/data/reusables/dependabot/dismiss-low-impact-rule.md index 7a564ab66b76..d944cfc3247c 100644 --- a/data/reusables/dependabot/dismiss-low-impact-rule.md +++ b/data/reusables/dependabot/dismiss-low-impact-rule.md @@ -1 +1 @@ -The `Dismiss low impact issues for development-scoped dependencies` is a {% data variables.product.company_short %} preset rule. This rule auto-dismisses certain types of vulnerabilities that are found in npm dependencies used in development. The rule has been curated to reduce false positives and reduce alert fatigue. You cannot modify {% data variables.dependabot.github_presets %}. For more information about {% data variables.dependabot.github_presets %}, see "[AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/using-github-preset-rules-to-prioritize-dependabot-alerts)." +The `Dismiss low impact issues for development-scoped dependencies` is a {% data variables.product.company_short %} preset rule. This rule auto-dismisses certain types of vulnerabilities that are found in npm dependencies used in development. The rule has been curated to reduce false positives and reduce alert fatigue. You cannot modify {% data variables.dependabot.github_presets %}. For more information about {% data variables.dependabot.github_presets %}, see [AUTOTITLE](/code-security/dependabot/dependabot-auto-triage-rules/using-github-preset-rules-to-prioritize-dependabot-alerts). diff --git a/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md b/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md index 3975804c8c78..b4e63f0cc96b 100644 --- a/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md +++ b/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md @@ -1,13 +1,13 @@ Repository administrators can enable or disable the dependency graph for private {% ifversion ghec %}or internal{% endif %} repositories. -You can enable or disable the dependency graph for all repositories owned by your user account. For more information, see "[AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-security-and-analysis-settings-for-your-personal-account)". +You can enable or disable the dependency graph for all repositories owned by your user account. For more information, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-security-and-analysis-settings-for-your-personal-account). -You can also enable the dependency graph for multiple repositories in an organization at the same time. For more information, see {% ifversion security-configurations %}"[AUTOTITLE](/code-security/securing-your-organization)."{% else %}"[AUTOTITLE](/code-security/getting-started/quickstart-for-securing-your-organization)."{% endif %} +You can also enable the dependency graph for multiple repositories in an organization at the same time. For more information, see {% ifversion security-configurations %}[AUTOTITLE](/code-security/securing-your-organization).{% else %}[AUTOTITLE](/code-security/getting-started/quickstart-for-securing-your-organization).{% endif %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-code-security-and-analysis %} -1. Read the message about granting {% data variables.product.product_name %} read-only access to the repository data to enable the dependency graph, then next to "Dependency Graph", click **Enable**. +1. Read the message about granting {% data variables.product.github %} read-only access to the repository data to enable the dependency graph, then next to "Dependency Graph", click **Enable**. ![Screenshot showing how to enable the dependency graph for a repository. The "Enable" button is highlighted with a dark orange outline.](/assets/images/help/repository/dependency-graph-enable-button.png) diff --git a/data/reusables/dependabot/enterprise-enable-dependabot.md b/data/reusables/dependabot/enterprise-enable-dependabot.md index 42bc0c5be299..44573f948b9a 100644 --- a/data/reusables/dependabot/enterprise-enable-dependabot.md +++ b/data/reusables/dependabot/enterprise-enable-dependabot.md @@ -1,10 +1,10 @@ {% ifversion ghes %} > [!NOTE] -> Your site administrator must set up {% data variables.product.prodname_dependabot_updates %} for {% data variables.location.product_location %} before you can use this feature. For more information, see "[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)." +> Your site administrator must set up {% data variables.product.prodname_dependabot_updates %} for {% data variables.location.product_location %} before you can use this feature. For more information, see [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise). {% ifversion security-feature-enablement-policies-dependabot %} > -> You may not be able to enable or disable {% data variables.product.prodname_dependabot_updates %} if an enterprise owner has set a policy at the enterprise level. For more information, see "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise)." +> You may not be able to enable or disable {% data variables.product.prodname_dependabot_updates %} if an enterprise owner has set a policy at the enterprise level. For more information, see [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise). {% endif %} {% endif %} diff --git a/data/reusables/dependabot/ghes-enabling-dependency-graph.md b/data/reusables/dependabot/ghes-enabling-dependency-graph.md index cbac93869c10..9dc8c461b5a2 100644 --- a/data/reusables/dependabot/ghes-enabling-dependency-graph.md +++ b/data/reusables/dependabot/ghes-enabling-dependency-graph.md @@ -1 +1 @@ -If the dependency graph is not available in your system, your enterprise owner can enable the dependency graph. For more information, see "[AUTOTITLE](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)." +If the dependency graph is not available in your system, your enterprise owner can enable the dependency graph. For more information, see [AUTOTITLE](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise). diff --git a/data/reusables/dependabot/no-dependabot-alerts-for-malware.md b/data/reusables/dependabot/no-dependabot-alerts-for-malware.md index 4e9dbd18721a..8549af2f6e1a 100644 --- a/data/reusables/dependabot/no-dependabot-alerts-for-malware.md +++ b/data/reusables/dependabot/no-dependabot-alerts-for-malware.md @@ -1 +1 @@ -{% data variables.product.prodname_dependabot %} doesn't generate {% data variables.product.prodname_dependabot_alerts %} for malware. For more information, see "[AUTOTITLE](/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/about-the-github-advisory-database#malware-advisories)." +{% data variables.product.prodname_dependabot %} doesn't generate {% data variables.product.prodname_dependabot_alerts %} for malware. For more information, see [AUTOTITLE](/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/about-the-github-advisory-database#malware-advisories). diff --git a/data/reusables/dependabot/pull-request-introduction.md b/data/reusables/dependabot/pull-request-introduction.md index e51cfadd3dae..ceb23738f2a7 100644 --- a/data/reusables/dependabot/pull-request-introduction.md +++ b/data/reusables/dependabot/pull-request-introduction.md @@ -1 +1 @@ -{% data variables.product.prodname_dependabot %} raises pull requests to update dependencies. Depending on how your repository is configured, {% data variables.product.prodname_dependabot %} may raise pull requests for version updates and/or for security updates. You manage these pull requests in the same way as any other pull request, but there are also some extra commands available. For information about enabling {% data variables.product.prodname_dependabot %} dependency updates, see "[AUTOTITLE](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates)" and "[AUTOTITLE](/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates)." +{% data variables.product.prodname_dependabot %} raises pull requests to update dependencies. Depending on how your repository is configured, {% data variables.product.prodname_dependabot %} may raise pull requests for version updates and/or for security updates. You manage these pull requests in the same way as any other pull request, but there are also some extra commands available. For information about enabling {% data variables.product.prodname_dependabot %} dependency updates, see [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates) and [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates). diff --git a/data/reusables/dependabot/quickstart-link.md b/data/reusables/dependabot/quickstart-link.md index b7aa3afe98fe..01ccb7695b03 100644 --- a/data/reusables/dependabot/quickstart-link.md +++ b/data/reusables/dependabot/quickstart-link.md @@ -1 +1 @@ -For an overview of the different features offered by {% data variables.product.prodname_dependabot %} and instructions on how to get started, see "[AUTOTITLE](/code-security/getting-started/dependabot-quickstart-guide)." +For an overview of the different features offered by {% data variables.product.prodname_dependabot %} and instructions on how to get started, see [AUTOTITLE](/code-security/getting-started/dependabot-quickstart-guide). diff --git a/data/reusables/dependabot/result-discrepancy.md b/data/reusables/dependabot/result-discrepancy.md index 241548122bf2..29d25914a3cd 100644 --- a/data/reusables/dependabot/result-discrepancy.md +++ b/data/reusables/dependabot/result-discrepancy.md @@ -1 +1 @@ -The results of dependency detection reported by {% data variables.product.product_name %} may be different from the results returned by other tools. There are good reasons for this and it's helpful to understand how {% data variables.product.prodname_dotcom %} determines dependencies for your project. +The results of dependency detection reported by {% data variables.product.github %} may be different from the results returned by other tools. There are good reasons for this and it's helpful to understand how {% data variables.product.github %} determines dependencies for your project. diff --git a/data/reusables/dependabot/supported-package-managers.md b/data/reusables/dependabot/supported-package-managers.md index 5dc9929b6d99..40e789f76b3c 100644 --- a/data/reusables/dependabot/supported-package-managers.md +++ b/data/reusables/dependabot/supported-package-managers.md @@ -6,8 +6,7 @@ Composer | `composer` | {% ifversion dependabot-updates-composerv1-c | {% ifversion dependabot-version-updates-devcontainer-support %} | [Dev containers](#dev-containers) | `devcontainers` | Not applicable | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "x" aria-label="Not supported" %} | | {% endif %} | -| {% ifversion dependabot-version-updates-enhanced-docker-support %} | -[Docker](#docker){% else %}Docker{% endif %} | `docker` | v1 | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | Not applicable | +[Docker](#docker) | `docker` | v1 | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | Not applicable | | {% ifversion dependabot-dotnet-sdk %} | .NET SDK | `dotnet-sdk` | >=.NET Core 3.1 | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | Not applicable | Not applicable | Not applicable | | {% endif %} | @@ -20,9 +19,9 @@ Go modules | `gomod` | v1 | {% octicon "check" aria-l [Maven](#maven) | `maven` | Not applicable | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | npm | `npm` | v6, v7, v8, v9 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | [NuGet](#nuget-cli) | `nuget` | {% ifversion fpt or ghec or ghes > 3.14 %}<=6.12.0{% elsif ghes = 3.14 or ghes = 3.13 %}<= 6.8.0{% elsif ghes = 3.12 %}<= 6.7.0{% else %}<= 4.8{% endif %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | -| {% ifversion dependabot-PEP621-support %}[pip](#pip-and-pip-compile){% else %}pip{% endif %} | `pip` | v21.1.2 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | +[pip](#pip-and-pip-compile) | `pip` | v21.1.2 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | pipenv | `pip` | <= 2021-05-29 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | -| {% ifversion dependabot-PEP621-support %}[pip-compile](#pip-and-pip-compile){% else %}pip-compile{% endif %} | `pip` | 6.1.0 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | +[pip-compile](#pip-and-pip-compile) | `pip` | 6.1.0 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | | {% ifversion dependabot-updates-pnpm-support %} | | {% ifversion dependabot-updates-pnpmv9-support %}pnpm{% else %}[pnpm](#pnpm){% endif %} | `npm` | v7, v8, v9 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} {% ifversion dependabot-updates-pnpmv9-support %}{% else %}(v7 and v8 only){% endif %}| {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | | {% endif %} | @@ -32,18 +31,16 @@ poetry | `pip` | v1 | {% octicon "check" aria-l [Swift](#swift) | `swift` | v5 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} (git only) | {% octicon "x" aria-label="Not supported" %} | | {% endif %} | [Terraform](#terraform) | `terraform` | >= 0.13, <= 1.10.x | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | Not applicable | -| {% ifversion dependabot-yarn-v3-update %} | -[yarn](#yarn) | `npm` | v1, v2, v3 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %}|{% else %}yarn | `npm` | v1 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | | -| {% endif %} | +[yarn](#yarn) | `npm` | v1, v2, v3 | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %}| > [!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. -For further information about ecosystem support for {% data variables.product.prodname_dependabot_security_updates %}, see also "[AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/dependency-graph-supported-package-ecosystems)." +For further information about ecosystem support for {% data variables.product.prodname_dependabot_security_updates %}, see also [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/dependency-graph-supported-package-ecosystems). #### Cargo -{% ifversion dependabot-updates-cargo-private-registry-support %}Private registry support includes cargo registries, so you can use {% data variables.product.prodname_dependabot %} to keep your Rust dependencies up-to-date. For more information, see "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/guidance-for-the-configuration-of-private-registries-for-dependabot#cargo)."{% else %}Private registry support applies to Git registries, and doesn't include cargo registries.{% endif %} +{% ifversion dependabot-updates-cargo-private-registry-support %}Private registry support includes cargo registries, so you can use {% data variables.product.prodname_dependabot %} to keep your Rust dependencies up-to-date. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/guidance-for-the-configuration-of-private-registries-for-dependabot#cargo).{% else %}Private registry support applies to Git registries, and doesn't include cargo registries.{% endif %} {% ifversion dependabot-version-updates-devcontainer-support %} @@ -59,20 +56,15 @@ Features in any valid dev container location will be updated in a single pull re {% endif %} -{% ifversion dependabot-version-updates-enhanced-docker-support %} - #### Docker -{% ifversion dependabot-version-updates-docker-metadata-support %} {% data variables.product.prodname_dependabot %} can add metadata from Docker images to pull requests for version updates. The metadata includes release notes, changelogs and the commit history. Repository administrators can use the metadata to quickly evaluate the stability risk of the dependency update. In order for {% data variables.product.prodname_dependabot %} to fetch Docker metadata, maintainers of Docker images must add the `org.opencontainers.image.source` label to their Dockerfile, and include the URL of the source repository. Additionally, maintainers must tag the repository with the same tags as the published Docker images. For an example, see the [`dependabot-fixtures/docker-with-source`](https://github.com/dependabot-fixtures/docker-with-source) repository. For more information on Docker labels, see [Extension image labels](https://docs.docker.com/desktop/extensions-sdk/extensions/labels/) and [BUILDX_GIT_LABELS](https://docs.docker.com/build/building/env-vars/#buildx_git_labels) in the Docker documentation. -{% endif %} -{% data variables.product.prodname_dependabot %} can update Docker image tags in Kubernetes manifests. Add an entry to the Docker `package-ecosystem` element of your `dependabot.yml` file for each directory containing a Kubernetes manifest which references Docker image tags. Kubernetes manifests can be Kubernetes Deployment YAML files or Helm charts. For information about configuring your `dependabot.yml` file for `docker`, see "`package-ecosystem`" in "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/dependabot-options-reference#package-ecosystem)." +{% data variables.product.prodname_dependabot %} can update Docker image tags in Kubernetes manifests. Add an entry to the Docker `package-ecosystem` element of your `dependabot.yml` file for each directory containing a Kubernetes manifest which references Docker image tags. Kubernetes manifests can be Kubernetes Deployment YAML files or Helm charts. For information about configuring your `dependabot.yml` file for `docker`, see "`package-ecosystem`" in [AUTOTITLE](/code-security/dependabot/working-with-dependabot/dependabot-options-reference#package-ecosystem). -{% data variables.product.prodname_dependabot %} supports both public and private Docker registries. For a list of the supported registries, see "`docker-registry`" in "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot#docker-registry)." -{% endif %} +{% data variables.product.prodname_dependabot %} supports both public and private Docker registries. For a list of the supported registries, see "`docker-registry`" in [AUTOTITLE](/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot#docker-registry). {% data variables.product.prodname_dependabot %} parses Docker image tags for Semantic Versioning ([SemVer](https://semver.org/)). If {% data variables.product.prodname_dependabot %} detects a tag with a pre-release, then it will only suggest an update to the latest version with a matching pre-release, and it will not suggest a newer version that use a different pre-release label. For more information, see the `dependabot-docker` [README.md](https://github.com/dependabot/dependabot-core/blob/main/docker/README.md) file in the `dependabot/dependabot-core` repository. @@ -82,21 +74,21 @@ In order for {% data variables.product.prodname_dependabot %} to fetch Docker me {% data reusables.actions.dependabot-version-updates-actions-caveats %} -For more information about using {% data variables.product.prodname_dependabot_version_updates %} with {% data variables.product.prodname_actions %}, see "[AUTOTITLE](/actions/security-guides/using-githubs-security-features-to-secure-your-use-of-github-actions#keeping-the-actions-in-your-workflows-secure-and-up-to-date)." +For more information about using {% data variables.product.prodname_dependabot_version_updates %} with {% data variables.product.prodname_actions %}, see [AUTOTITLE](/actions/security-guides/using-githubs-security-features-to-secure-your-use-of-github-actions#keeping-the-actions-in-your-workflows-secure-and-up-to-date). #### Gradle {% ifversion dependabot-security-updates-gradle-support %}{% else %}Gradle is supported for {% data variables.product.prodname_dependabot_version_updates %} only.{% endif %} {% data variables.product.prodname_dependabot %} doesn't run Gradle but supports updates to the following files: -* `build.gradle`, `build.gradle.kts` (for Kotlin projects){% ifversion dependabot-updates-gradle-versions-catalog-support %} -* `gradle/libs.versions.toml` (for projects using a standard Gradle version catalog){% endif %} +* `build.gradle`, `build.gradle.kts` (for Kotlin projects) +* `gradle/libs.versions.toml` (for projects using a standard Gradle version catalog) * 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). -{% data variables.product.prodname_dependabot %} uses information from the `pom.xml` file of dependencies to add links to release information in update pull requests. If the information is omitted from the `pom.xml` file, then it cannot be included in {% data variables.product.prodname_dependabot %} pull requests, see "[AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/optimizing-java-packages-dependabot)". +{% data variables.product.prodname_dependabot %} uses information from the `pom.xml` file of dependencies to add links to release information in update pull requests. If the information is omitted from the `pom.xml` file, then it cannot be included in {% data variables.product.prodname_dependabot %} pull requests, see [AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/optimizing-java-packages-dependabot). {% ifversion dependabot-security-updates-gradle-support %} -For {% data variables.product.prodname_dependabot_security_updates %}, Gradle support is limited to manual uploads of the dependency graph data using the {% data variables.dependency-submission-api.name %}. For more information about the {% data variables.dependency-submission-api.name %}, see "[AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api)." +For {% data variables.product.prodname_dependabot_security_updates %}, Gradle support is limited to manual uploads of the dependency graph data using the {% data variables.dependency-submission-api.name %}. For more information about the {% data variables.dependency-submission-api.name %}, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api). > [!NOTE] > * When you upload Gradle dependencies to the dependency graph using the {% data variables.dependency-submission-api.name %}, all project dependencies are uploaded, even transitive dependencies that aren't explicitly mentioned in any dependency file. When an alert is detected in a transitive dependency, {% data variables.product.prodname_dependabot %} isn't able to find the vulnerable dependency in the repository, and therefore won't create a security update for that alert. @@ -108,18 +100,15 @@ For {% data variables.product.prodname_dependabot_security_updates %}, Gradle su {% data variables.product.prodname_dependabot %} doesn't run Maven but supports updates to `pom.xml` files. -{% data variables.product.prodname_dependabot %} uses information from the `pom.xml` file of dependencies to add links to release information in update pull requests. If the information is omitted from the `pom.xml` file, then it cannot be included in {% data variables.product.prodname_dependabot %} pull requests, see "[AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/optimizing-java-packages-dependabot)". +{% data variables.product.prodname_dependabot %} uses information from the `pom.xml` file of dependencies to add links to release information in update pull requests. If the information is omitted from the `pom.xml` file, then it cannot be included in {% data variables.product.prodname_dependabot %} pull requests, see [AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/optimizing-java-packages-dependabot). #### NuGet CLI {% data variables.product.prodname_dependabot %} doesn't run the NuGet CLI but does support most features up until version {% ifversion dependabot-updates-v680-nuget-support %}6.8.0{% elsif ghes = 3.12 %}6.7.0{% else %}4.8{% endif %}. -{% ifversion dependabot-PEP621-support %} - #### pip and pip-compile In addition to supporting updates to `requirements.txt` files, {% data variables.product.prodname_dependabot %} supports updates to `pyproject.toml` files if they follow the PEP 621 standard. -{% endif %} {% ifversion dependabot-updates-pnpmv9-support %} @@ -136,7 +125,7 @@ pnpm is supported for {% data variables.product.prodname_dependabot_version_upda {% ifversion dependabot-updates-pub-private-registry %} -You can use {% data variables.product.prodname_dependabot %} to keep Dart dependencies up-to-date if you use private hosted pub repositories. For information about allowing {% data variables.product.prodname_dependabot %} to access private {% data variables.product.prodname_dotcom %} dependencies, see "[Allowing {% data variables.product.prodname_dependabot %} to access private dependencies](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-dependabot-to-access-private{% ifversion ghec or ghes %}-or-internal{% endif %}-dependencies)." +You can use {% data variables.product.prodname_dependabot %} to keep Dart dependencies up-to-date if you use private hosted pub repositories. For information about allowing {% data variables.product.prodname_dependabot %} to access private {% data variables.product.prodname_dotcom %} dependencies, see [Allowing {% data variables.product.prodname_dependabot %} to access private dependencies](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-dependabot-to-access-private{% ifversion ghec or ghes %}-or-internal{% endif %}-dependencies). {% endif %} diff --git a/data/reusables/dependabot/version-updates-for-actions.md b/data/reusables/dependabot/version-updates-for-actions.md index 9de624df48f5..4ff1f927a650 100644 --- a/data/reusables/dependabot/version-updates-for-actions.md +++ b/data/reusables/dependabot/version-updates-for-actions.md @@ -1 +1 @@ -You can also enable {% data variables.product.prodname_dependabot_version_updates %} for the actions that you add to your workflow. For more information, see "[AUTOTITLE](/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot)." +You can also enable {% data variables.product.prodname_dependabot_version_updates %} for the actions that you add to your workflow. For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot). diff --git a/data/reusables/dependency-graph/sbom-intro.md b/data/reusables/dependency-graph/sbom-intro.md index 2635121b2341..c5c80e1b3a7b 100644 --- a/data/reusables/dependency-graph/sbom-intro.md +++ b/data/reusables/dependency-graph/sbom-intro.md @@ -1,6 +1,6 @@ An SBOM is a formal, machine-readable inventory of a project's dependencies and associated information (such as {% ifversion ghes %}versions and package identifiers{% else %}versions, package identifiers, licenses, and copyright information{% endif %}). SBOMs help reduced supply chain risks by: -* providing transparency about the dependencies used by your repository -* allowing vulnerabilities to be identified early in the process -* providing insights in the license compliance, security, or quality issues that may exist in your codebase -* enabling you to better comply with various data protection standards +* Providing transparency about the dependencies used by your repository +* Allowing vulnerabilities to be identified early in the process +* Providing insights in the license compliance, security, or quality issues that may exist in your codebase +* Enabling you to better comply with various data protection standards diff --git a/data/reusables/desktop/choose-a-branch-to-merge.md b/data/reusables/desktop/choose-a-branch-to-merge.md index 65a1bc4acbda..07fbdf6fb2af 100644 --- a/data/reusables/desktop/choose-a-branch-to-merge.md +++ b/data/reusables/desktop/choose-a-branch-to-merge.md @@ -1,3 +1,3 @@ 1. Click **Choose a branch to merge into BRANCH**. - ![Screenshot of the "Current Branch" dropdown view. Below a list of branches, a button, labeled "Choose a branch to merge into my-feature", is outlined in orange.](/assets/images/help/desktop/merge-branch-button-list.png) + ![Screenshot of the "Current Branch" dropdown view. Below a list of branches, a "Choose a branch to merge into my-feature" button is outlined in orange.](/assets/images/help/desktop/merge-branch-button-list.png) diff --git a/data/reusables/desktop/choose-clone-repository.md b/data/reusables/desktop/choose-clone-repository.md index f921d6e239b6..bf65032fe775 100644 --- a/data/reusables/desktop/choose-clone-repository.md +++ b/data/reusables/desktop/choose-clone-repository.md @@ -8,6 +8,6 @@ {% windows %} - ![Screenshot of the "GitHub Desktop" menu bar on Windows. The "File" dropdown menu is expanded, and the "Clone Repository" option is highlighted with an orange outline.](/assets/images/help/desktop/clone-file-menu-windows.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. The "File" dropdown menu is expanded, and the "Clone Repository" option is outlined in orange.](/assets/images/help/desktop/clone-file-menu-windows.png) {% endwindows %} diff --git a/data/reusables/desktop/click-stash-all-changes.md b/data/reusables/desktop/click-stash-all-changes.md index f8c141d63d4c..54b70529adef 100644 --- a/data/reusables/desktop/click-stash-all-changes.md +++ b/data/reusables/desktop/click-stash-all-changes.md @@ -1,3 +1,3 @@ 1. Click **Stash All Changes**. - ![Screenshot of the "Changes" tab. The header bar, labeled "1 changed file", is outlined in orange. In a context menu, the cursor hovers over "Stash All Changes".](/assets/images/help/desktop/mac-stash-all-changes.png) + ![Screenshot of the "Changes" tab. The header shows "1 changed file" and is outlined in orange. "Stash All Changes" is highlighted in a context menu.](/assets/images/help/desktop/mac-stash-all-changes.png) diff --git a/data/reusables/desktop/cloning-location-tab.md b/data/reusables/desktop/cloning-location-tab.md index 88d87e6ae2e1..ed9cf4ef408b 100644 --- a/data/reusables/desktop/cloning-location-tab.md +++ b/data/reusables/desktop/cloning-location-tab.md @@ -1,3 +1,3 @@ 1. Click the tab that corresponds to the location of the repository you want to clone. You can also click **URL** to manually enter the repository location. - ![Screenshot of the "Clone a repository" window. At the top of the window, tabs labeled "GitHub.com", "GitHub Enterprise" and "URL" are highlighted with an orange outline.](/assets/images/help/desktop/choose-repository-location-mac.png) + ![Screenshot of the "Clone a repository" window. At the top of the window, "GitHub.com", "GitHub Enterprise" and "URL" tabs are outlined in orange.](/assets/images/help/desktop/choose-repository-location-mac.png) diff --git a/data/reusables/desktop/delete-tag.md b/data/reusables/desktop/delete-tag.md index 80812dcacb2f..34734b82e85d 100644 --- a/data/reusables/desktop/delete-tag.md +++ b/data/reusables/desktop/delete-tag.md @@ -1,6 +1,6 @@ 1. Right-click the commit. * If a commit has only one tag, click **Delete Tag TAG NAME**. - ![Screenshot of a list of commits in the "History" tab. Next to a commit, in a context menu, the cursor hovers over an option labeled "Delete tag hello-tag".](/assets/images/help/desktop/select-delete-tag.png) + ![Screenshot of a list of commits in the "History" tab. The cursor hovers over an option labeled "Delete tag hello-tag" in a context window.](/assets/images/help/desktop/select-delete-tag.png) * If a commit has multiple tags, hover over **Delete Tag...** and then click the tag that you want to delete. - ![Screenshot of a context menu in the "History" tab. Next to "Delete tag", a second menu is expanded, and the cursor hovers over an option labeled "hello-tag".](/assets/images/help/desktop/delete-tag-multiple.png) + ![Screenshot of a context menu in the "History" tab. Next to "Delete tag", a second menu is expanded. The cursor hovers over "hello-tag".](/assets/images/help/desktop/delete-tag-multiple.png) diff --git a/data/reusables/desktop/open-repository-settings.md b/data/reusables/desktop/open-repository-settings.md index 351e5d6ce87b..3f0b92def992 100644 --- a/data/reusables/desktop/open-repository-settings.md +++ b/data/reusables/desktop/open-repository-settings.md @@ -8,7 +8,6 @@ {% windows %} - ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the open "Repository" dropdown menu, an option labeled "Repository Settings" is outlined in orange.](/assets/images/help/desktop/repository-settings-win.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the open "Repository" dropdown menu, the "Repository Settings" option is outlined.](/assets/images/help/desktop/repository-settings-win.png) {% endwindows %} - \ No newline at end of file diff --git a/data/reusables/desktop/revert-commit.md b/data/reusables/desktop/revert-commit.md index d803a464b03b..813ea5a68b7e 100644 --- a/data/reusables/desktop/revert-commit.md +++ b/data/reusables/desktop/revert-commit.md @@ -1,3 +1,3 @@ 1. Right-click the commit you want to revert and click **Revert Changes in Commit**. - ![Screenshot of a list of commits in the "History" tab. Next to a commit, in a context menu, the cursor hovers over the "Revert Changes in Commit" option.](/assets/images/help/desktop/commit-revert-mac.png) + ![Screenshot of a list of commits in the "History" tab. The cursor hovers over the "Revert Changes in Commit" option in a context menu.](/assets/images/help/desktop/commit-revert-mac.png) diff --git a/data/reusables/desktop/select-fork-behavior.md b/data/reusables/desktop/select-fork-behavior.md index a4a857d9bf3a..d8e495590b6a 100644 --- a/data/reusables/desktop/select-fork-behavior.md +++ b/data/reusables/desktop/select-fork-behavior.md @@ -1,6 +1,6 @@ 1. In the "Repository settings" window, in the left-hand sidebar, click **Fork Behavior**. 1. Under "I'll be using this fork...", use the radio buttons to select how you want to use the fork. - ![Screenshot of the "Fork Behavior" pane. Two radio buttons, labeled "To contribute to the parent repository" and "For my own purposes", are outlined in orange.](/assets/images/help/desktop/mac-fork-behavior-menu-contribute.png) + ![Screenshot of the "Fork Behavior" pane. Two radio buttons, "To contribute to the parent repository" and "For my own purposes", are outlined in orange.](/assets/images/help/desktop/mac-fork-behavior-menu-contribute.png) 1. Click **Save**. diff --git a/data/reusables/desktop/use-local-git-config.md b/data/reusables/desktop/use-local-git-config.md index d225bd72079d..d9a9368af0c7 100644 --- a/data/reusables/desktop/use-local-git-config.md +++ b/data/reusables/desktop/use-local-git-config.md @@ -1,2 +1,2 @@ 1. Under "For this repository I wish to", select **Use a local Git config**. -![Screenshot of the "Git Config" pane in the "Repository Settings" window. A selected radio button, labeled "Use a local Git config", is outlined in orange.](/assets/images/help/desktop/use-local-git-config.png) +![Screenshot of the "Git Config" pane in the "Repository Settings" window. The "Use a local Git config" radio button is selected and outlined in orange.](/assets/images/help/desktop/use-local-git-config.png) diff --git a/data/reusables/desktop/windows-choose-options.md b/data/reusables/desktop/windows-choose-options.md index f9f693bd1134..0e11ac6528a3 100644 --- a/data/reusables/desktop/windows-choose-options.md +++ b/data/reusables/desktop/windows-choose-options.md @@ -1,3 +1,3 @@ 1. Use the **File** menu, then click **Options**. - ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the expanded "File" dropdown menu, the "Options" item is highlighted with an orange outline.](/assets/images/help/desktop/windows-choose-options.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the expanded "File" dropdown menu, the "Options" item is outlined in orange.](/assets/images/help/desktop/windows-choose-options.png) diff --git a/data/reusables/desktop/windows-repository-settings-menu.md b/data/reusables/desktop/windows-repository-settings-menu.md index be91a5de4ac8..cbb10e1aa69e 100644 --- a/data/reusables/desktop/windows-repository-settings-menu.md +++ b/data/reusables/desktop/windows-repository-settings-menu.md @@ -1,3 +1,3 @@ 1. In the **Repository** menu, click **Repository settings...**. - ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the open "Repository" dropdown menu, an option labeled "Repository Settings" is outlined in orange.](/assets/images/help/desktop/repository-settings-win.png) + ![Screenshot of the "GitHub Desktop" menu bar on Windows. In the open "Repository" dropdown menu, "Repository Settings" is outlined in orange.](/assets/images/help/desktop/repository-settings-win.png) diff --git a/data/reusables/discussions/marking-a-comment-as-an-answer.md b/data/reusables/discussions/marking-a-comment-as-an-answer.md index cabc9db14349..332ced726104 100644 --- a/data/reusables/discussions/marking-a-comment-as-an-answer.md +++ b/data/reusables/discussions/marking-a-comment-as-an-answer.md @@ -4,7 +4,7 @@ When you mark a question as an answer, {% data variables.product.product_name %} ![Screenshot of a comment marked as the answer to a discussion.](/assets/images/help/discussions/comment-marked-as-answer.png) -{% ifversion discussions-mark-threaded-comment-as-answer %}You can also mark a threaded comment (in response to a comment) as the answer to a discussion. You can't mark a minimized comment as the answer to a discussion. {% else %}You can't mark a threaded comment in response to a comment as the answer to a discussion. You also can't mark a minimized comment as the answer to a discussion.{% endif %} +You can also mark a threaded comment (in response to a comment) as the answer to a discussion. You can't mark a minimized comment as the answer to a discussion. {% data reusables.discussions.navigate-to-repo-or-org %} {% data reusables.discussions.discussions-tab %} diff --git a/data/reusables/enterprise-accounts/access-enterprise-ghes.md b/data/reusables/enterprise-accounts/access-enterprise-ghes.md index dc46f76497b5..63fecb76804e 100644 --- a/data/reusables/enterprise-accounts/access-enterprise-ghes.md +++ b/data/reusables/enterprise-accounts/access-enterprise-ghes.md @@ -1,3 +1,3 @@ 1. In the top-right corner of {% data variables.product.prodname_ghe_server %}, click your profile photo, then click **Enterprise settings**. - ![Screenshot of the drop-down menu that appears when you click the profile photo on GitHub Enterprise Server. The "Enterprise settings" option is highlighted in a dark orange outline.](/assets/images/enterprise/settings/enterprise-settings.png) + ![Screenshot of the dropdown menu shown when you click the profile photo on GitHub Enterprise Server. The "Enterprise settings" option is outlined.](/assets/images/enterprise/settings/enterprise-settings.png) diff --git a/data/reusables/enterprise-accounts/advanced-security-individual-organization-policy-drop-down.md b/data/reusables/enterprise-accounts/advanced-security-individual-organization-policy-drop-down.md index 462ac5ff051b..6ace9af836ca 100644 --- a/data/reusables/enterprise-accounts/advanced-security-individual-organization-policy-drop-down.md +++ b/data/reusables/enterprise-accounts/advanced-security-individual-organization-policy-drop-down.md @@ -1,3 +1,3 @@ 1. Optionally, if you chose **Allow for selected organizations**, to the right of an organization, select the dropdown menu to enable {% data variables.product.prodname_advanced_security %} for the organization. - ![Screenshot of the {% data variables.product.prodname_advanced_security %} policies. The dropdown to select an {% data variables.product.prodname_advanced_security %} policy for individual organization in the enterprise account is highlighted with an orange outline.](/assets/images/help/enterprises/select-advanced-security-individual-organization-policy.png) + ![Screenshot of the dropdown menu to choose a {% data variables.product.prodname_advanced_security %} policy for selected organizations in the enterprise. The dropdown is outlined.](/assets/images/help/enterprises/select-advanced-security-individual-organization-policy.png) diff --git a/data/reusables/enterprise-accounts/continue-verifying-domain.md b/data/reusables/enterprise-accounts/continue-verifying-domain.md index 317d637de15d..11932711a51c 100644 --- a/data/reusables/enterprise-accounts/continue-verifying-domain.md +++ b/data/reusables/enterprise-accounts/continue-verifying-domain.md @@ -1,4 +1,4 @@ 1. To the right of the domain that's pending verification, click {% octicon "kebab-horizontal" aria-label="Show more options" %}, then click **Continue verifying**. - ![Screenshot of the list of verified and approved domains for your enterprise. A dropdown menu labeled with three dots is expanded and highlighted with an orange outline, along with the "Continue verifying domain" option.](/assets/images/help/enterprises/continue-verifying-domain-enterprise.png) + ![Screenshot of a dropdown menu with the kebab icon, used to manage a domain. The expanded menu and option to "Continue verifying domain" are outlined.](/assets/images/help/enterprises/continue-verifying-domain-enterprise.png) 1. Click **Verify**. diff --git a/data/reusables/enterprise-accounts/emu-cap-public-preview.md b/data/reusables/enterprise-accounts/emu-cap-public-preview.md index adcc16b1e947..cdcfd00b36a2 100644 --- a/data/reusables/enterprise-accounts/emu-cap-public-preview.md +++ b/data/reusables/enterprise-accounts/emu-cap-public-preview.md @@ -1,3 +1,4 @@ >[!NOTE] CAP protection for web sessions is currently in {% data variables.release-phases.public_preview %} and may change. > -> If IdP CAP support is already enabled for your enterprise, you can opt into extended protection for web sessions from your enterprise's "Authentication security" settings. To enable this feature, your enterprise must have 1,000 or fewer members, active or suspended. +> If IdP CAP support is already enabled for your enterprise, you can opt into extended protection for web sessions from your enterprise's "Authentication security" settings. +> When web session protection is enabled and a user's IP conditions are not satisfied, they can view and filter all user-owned resources but cannot view the details of the results for notifications, searches, personal dashboards, or starred repositories. diff --git a/data/reusables/enterprise-accounts/manage-seats.md b/data/reusables/enterprise-accounts/manage-seats.md index f4795da3326c..512f0ee4973a 100644 --- a/data/reusables/enterprise-accounts/manage-seats.md +++ b/data/reusables/enterprise-accounts/manage-seats.md @@ -3,5 +3,5 @@ ![Screenshot of the billing summary for an enterprise account. A link, labeled "Manage seats", is highlighted with an orange outline.](/assets/images/help/billing/enterprise-account-manage-seats-link.png) 1. In the "User licenses" section, under "Total Seats", enter a number of seats. - ![Screenshot of the "User licenses" section of the enterprise billing page. A selector box, labeled "Total seats", is highlighted with an orange outline.](/assets/images/help/billing/enterprise-account-total-seats.png) + ![Screenshot of the "User licenses" section of the enterprise billing page. A selector box, labeled "Total seats", is outlined.](/assets/images/help/billing/enterprise-account-total-seats.png) 1. Click **Update seats**. diff --git a/data/reusables/enterprise-accounts/view-current-policy-config-orgs.md b/data/reusables/enterprise-accounts/view-current-policy-config-orgs.md index 3d4b89829523..4511339006a2 100644 --- a/data/reusables/enterprise-accounts/view-current-policy-config-orgs.md +++ b/data/reusables/enterprise-accounts/view-current-policy-config-orgs.md @@ -1,3 +1,3 @@ Optionally, to view the current configuration for all organizations in the enterprise account before you change the setting, click **{% octicon "eye" aria-hidden="true" %} View your organizations' current configurations**. - ![Screenshot of a policy in the enterprise settings. A link, labeled "View your organizations' current configurations", is highlighted with an orange outline.](/assets/images/help/business-accounts/view-current-policy-implementation-link.png) + ![Screenshot of a policy in the enterprise settings. A link, labeled "View your organizations' current configurations", is outlined.](/assets/images/help/business-accounts/view-current-policy-implementation-link.png) diff --git a/data/reusables/enterprise-migration-tool/blob-storage-management-console.md b/data/reusables/enterprise-migration-tool/blob-storage-management-console.md index 4e5e27a6dea8..fc0db11e20f1 100644 --- a/data/reusables/enterprise-migration-tool/blob-storage-management-console.md +++ b/data/reusables/enterprise-migration-tool/blob-storage-management-console.md @@ -1,4 +1,4 @@ -After you set up an AWS S3 storage bucket or Azure Blob Storage storage account, configure blob storage in the {% data variables.enterprise.management_console %} of {% data variables.location.product_location_enterprise %}. For more information about the {% data variables.enterprise.management_console %}, see "[Administering your instance from the Management Console]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/administering-your-instance-from-the-management-console)." +After you set up an AWS S3 storage bucket or Azure Blob Storage storage account, configure blob storage in the {% data variables.enterprise.management_console %} of {% data variables.location.product_location_enterprise %}. For more information about the {% data variables.enterprise.management_console %}, see [Administering your instance from the Management Console]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/administering-your-instance-from-the-management-console). 1. From an administrative account on {% data variables.product.prodname_ghe_server %}, in the upper-right corner of any page, click {% octicon "rocket" aria-label="Site admin" %}. 1. If you're not already on the "Site admin" page, in the upper-left corner, click **Site admin**. @@ -6,7 +6,7 @@ After you set up an AWS S3 storage bucket or Azure Blob Storage storage account, 1. Log into the {% data variables.enterprise.management_console %}. 1. In the top navigation bar, click **Settings**. 1. Under **Migrations**, click **Enable {% data variables.product.company_short %} Migrations**. -1. Optionally, to import storage settings you configured for {% data variables.product.prodname_actions %}, select **Copy Storage settings from Actions**. For more information see, "[Enabling GitHub Actions with Azure Blob storage]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage)" and "[Enabling GitHub Actions with Amazon S3 storage]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-amazon-s3-storage)." +1. Optionally, to import storage settings you configured for {% data variables.product.prodname_actions %}, select **Copy Storage settings from Actions**. For more information see, [Enabling GitHub Actions with Azure Blob storage]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage) and [Enabling GitHub Actions with Amazon S3 storage]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-amazon-s3-storage). > [!NOTE] > After copying your storage settings, you may still need to update the configuration of your cloud storage account to work with {% data variables.product.prodname_importer_proper_name %}. In particular, you must ensure that {% data variables.product.prodname_dotcom %}'s IP addresses are allowlisted. For more information, see [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-between-github-products/managing-access-for-a-migration-between-github-products#configuring-ip-allow-lists-for-migrations). diff --git a/data/reusables/enterprise-migration-tool/ip-ranges-ghecom.md b/data/reusables/enterprise-migration-tool/ip-ranges-ghecom.md index efa74d0ce7a2..46656313777e 100644 --- a/data/reusables/enterprise-migration-tool/ip-ranges-ghecom.md +++ b/data/reusables/enterprise-migration-tool/ip-ranges-ghecom.md @@ -1,22 +1,6 @@ -You'll need to add the following IP ranges to your IP allow list(s): +You must allow: -* 192.30.252.0/22 -* 185.199.108.0/22 -* 140.82.112.0/20 -* 143.55.64.0/20 -* 2a0a:a440::/29 -* 2606:50c0::/32 -* 4.231.155.80/29 -* 4.225.9.96/29 -* 51.12.144.32/29 -* 20.199.1.232/29 -* 51.12.152.184/29 -* 20.199.6.80/29 -* 51.12.152.240/29 -* 20.19.101.136/29 -* 51.12.252.16/28 -* 74.241.131.48/28 -* 20.240.211.176/28 -* 108.143.221.96/28 -* 20.61.46.32/28 -* 20.224.62.160/28 +* Ranges required for everyone +* Additional ranges that depend on your data residency region + +For the ranges to add, see [AUTOTITLE](/enterprise-cloud@latest/admin/data-residency/network-details-for-ghecom#ip-ranges-for-github-enterprise-importer). diff --git a/data/reusables/enterprise/azure-maps-auth-deprecation-link.md b/data/reusables/enterprise/azure-maps-auth-deprecation-link.md index 825e0b4ba316..2376c34dc315 100644 --- a/data/reusables/enterprise/azure-maps-auth-deprecation-link.md +++ b/data/reusables/enterprise/azure-maps-auth-deprecation-link.md @@ -1 +1 @@ -For more information, see the "[Deprecations](/admin/release-notes#{{ allVersions[currentVersion].currentRelease }}.{% ifversion ghes = 3.10 %}4{% elsif ghes = 3.11 %}1{% endif %}-deprecations)" section in the release notes. +For more information, see the [Deprecations](/admin/release-notes#{{ allVersions[currentVersion].currentRelease }}.{% ifversion ghes = 3.10 %}4{% elsif ghes = 3.11 %}1{% endif %}-deprecations) section in the release notes. diff --git a/data/reusables/enterprise/enterprise-types.md b/data/reusables/enterprise/enterprise-types.md index 00471010324f..a94daa3fd489 100644 --- a/data/reusables/enterprise/enterprise-types.md +++ b/data/reusables/enterprise/enterprise-types.md @@ -5,4 +5,4 @@ While setting up your trial of {% data variables.product.prodname_ghe_cloud %}, * Enterprise with personal accounts * Enterprise with managed users -To help you decide which choice is best for your enterprise, see "[AUTOTITLE]({% ifversion not ghec %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/understanding-iam-for-enterprises/choosing-an-enterprise-type-for-github-enterprise-cloud){% ifversion not ghec %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +To help you decide which choice is best for your enterprise, see [AUTOTITLE]({% ifversion not ghec %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/understanding-iam-for-enterprises/choosing-an-enterprise-type-for-github-enterprise-cloud){% ifversion not ghec %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} diff --git a/data/reusables/enterprise/view-user-namespace-repos.md b/data/reusables/enterprise/view-user-namespace-repos.md index 1269f6bb765d..1f471378c6c6 100644 --- a/data/reusables/enterprise/view-user-namespace-repos.md +++ b/data/reusables/enterprise/view-user-namespace-repos.md @@ -1,3 +1,3 @@ 1. In the "Repository creation" section, under "Block the creation of user namespace repositories," click **View user namespace repositories in your enterprise**. - ![Screenshot of the "Repository creation" section of the "Repository policies" page. A link, labeled with an eye icon and "View user namespace repositories in your enterprise," is outlined in orange.](/assets/images/help/business-accounts/view-user-namespace-repos.png) + ![Screenshot of a "Repository creation" section. A link labeled with an eye icon and "View user namespace repositories in your enterprise" is outlined.](/assets/images/help/business-accounts/view-user-namespace-repos.png) diff --git a/data/reusables/enterprise_installation/new-instance-attack-vector-warning.md b/data/reusables/enterprise_installation/new-instance-attack-vector-warning.md index b4e7a8b32e2e..8c6aeb609899 100644 --- a/data/reusables/enterprise_installation/new-instance-attack-vector-warning.md +++ b/data/reusables/enterprise_installation/new-instance-attack-vector-warning.md @@ -1,2 +1,2 @@ > [!WARNING] -> To prevent an attacker from compromising the new instance, ensure that you personally set the {% ifversion enterprise-management-console-multi-user-auth %}root {% endif %}{% data variables.enterprise.management_console %} password and create the first user as soon as possible. +> To prevent an attacker from compromising the new instance, ensure that you personally set the root {% data variables.enterprise.management_console %} password and create the first user as soon as possible. diff --git a/data/reusables/enterprise_installation/new-instance-config-summary.md b/data/reusables/enterprise_installation/new-instance-config-summary.md index 31f0d3a45911..81c5719f4249 100644 --- a/data/reusables/enterprise_installation/new-instance-config-summary.md +++ b/data/reusables/enterprise_installation/new-instance-config-summary.md @@ -1 +1 @@ -To configure the instance, you must upload a license file, set the {% ifversion enterprise-management-console-multi-user-auth %}root {% endif %}{% data variables.enterprise.management_console %} password, configure the instance's settings, and restart the instance. +To configure the instance, you must upload a license file, set the root {% data variables.enterprise.management_console %} password, configure the instance's settings, and restart the instance. diff --git a/data/reusables/enterprise_installation/ssh-into-instance.md b/data/reusables/enterprise_installation/ssh-into-instance.md index 61a46d915b6b..c5d59428cac0 100644 --- a/data/reusables/enterprise_installation/ssh-into-instance.md +++ b/data/reusables/enterprise_installation/ssh-into-instance.md @@ -1,4 +1,4 @@ -1. SSH into {% data variables.location.product_location %}. If your instance comprises multiple nodes, for example if high availability or geo-replication are configured, SSH into the primary node. If you use a cluster, you can SSH into any node. Replace HOSTNAME with the hostname for your instance, or the hostname or IP address of a node. For more information, see "[AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh)." +1. SSH into {% data variables.location.product_location %}. If your instance comprises multiple nodes, for example if high availability or geo-replication are configured, SSH into the primary node. If you use a cluster, you can SSH into any node. Replace HOSTNAME with the hostname for your instance, or the hostname or IP address of a node. For more information, see [AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh). ```shell copy ssh -p 122 admin@HOSTNAME diff --git a/data/reusables/enterprise_installation/ssh-into-target-instance.md b/data/reusables/enterprise_installation/ssh-into-target-instance.md index b907c703659c..560bd1a8c7bc 100644 --- a/data/reusables/enterprise_installation/ssh-into-target-instance.md +++ b/data/reusables/enterprise_installation/ssh-into-target-instance.md @@ -1,4 +1,4 @@ -1. SSH into your target {% data variables.product.prodname_ghe_server %} instance. For more information, see "[AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh)." +1. SSH into your target {% data variables.product.prodname_ghe_server %} instance. For more information, see [AUTOTITLE]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh). ```shell ssh -p 122 admin@HOSTNAME diff --git a/data/reusables/enterprise_management_console/custom-maintenance-message.md b/data/reusables/enterprise_management_console/custom-maintenance-message.md index ea308a53d0ec..30d181b12577 100644 --- a/data/reusables/enterprise_management_console/custom-maintenance-message.md +++ b/data/reusables/enterprise_management_console/custom-maintenance-message.md @@ -1,3 +1 @@ -{%- ifversion custom-maintenance-mode-message %} 1. Optionally, to set a custom message for users to see during the maintenance window, in the "Set a maintenance mode message" field, type a message. -{%- endif %} diff --git a/data/reusables/enterprise_management_console/type-management-console-password.md b/data/reusables/enterprise_management_console/type-management-console-password.md index 2fb3c67ac288..5646c4e15cc4 100644 --- a/data/reusables/enterprise_management_console/type-management-console-password.md +++ b/data/reusables/enterprise_management_console/type-management-console-password.md @@ -1,6 +1,2 @@ -{%- ifversion enterprise-management-console-multi-user-auth %} 1. If you have created multiple {% data variables.enterprise.management_console %} user accounts, select **Root site admin** or **{% data variables.enterprise.management_console %} user**. For more information about {% data variables.enterprise.management_console %} user accounts see, [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/managing-access-to-the-management-console). 1. Type your {% data variables.enterprise.management_console %} credentials. Then click **Continue**. -{%- else %} -1. If prompted, type your {% data variables.enterprise.management_console %} password. -{%- endif %} diff --git a/data/reusables/enterprise_management_console/unlocking-management-console-with-shell.md b/data/reusables/enterprise_management_console/unlocking-management-console-with-shell.md index de72c870971d..fed3a416b2c9 100644 --- a/data/reusables/enterprise_management_console/unlocking-management-console-with-shell.md +++ b/data/reusables/enterprise_management_console/unlocking-management-console-with-shell.md @@ -1 +1 @@ -If the root site administrator's {% data variables.enterprise.management_console %} login is locked, someone with administrative SSH access must unlock the login. To immediately unlock access to the {% data variables.enterprise.management_console %}{% ifversion enterprise-management-console-multi-user-auth %} by the root site administrator{% endif %}, use the `ghe-reactivate-admin-login` command via the administrative shell. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-reactivate-admin-login) and [AUTOTITLE](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh). +If the root site administrator's {% data variables.enterprise.management_console %} login is locked, someone with administrative SSH access must unlock the login. To immediately unlock access to the {% data variables.enterprise.management_console %} by the root site administrator, use the `ghe-reactivate-admin-login` command via the administrative shell. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-reactivate-admin-login) and [AUTOTITLE](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh). diff --git a/data/reusables/enterprise_site_admin_settings/management-console-access.md b/data/reusables/enterprise_site_admin_settings/management-console-access.md index c3209cdf2d3c..a0a1b2fd94f3 100644 --- a/data/reusables/enterprise_site_admin_settings/management-console-access.md +++ b/data/reusables/enterprise_site_admin_settings/management-console-access.md @@ -2,4 +2,4 @@ {% data reusables.enterprise_site_admin_settings.management-console-overview %} For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/about-the-management-console). -You can access the {% data variables.enterprise.management_console %}{% ifversion enterprise-management-console-multi-user-auth %} as the root site administrator or a {% data variables.enterprise.management_console %} user{% endif %}. An administrator created the {% ifversion enterprise-management-console-multi-user-auth %}root site administrator {% endif %}password during the initial setup process for {% data variables.location.product_location %}. +You can access the {% data variables.enterprise.management_console %} as the root site administrator or a {% data variables.enterprise.management_console %} user. An administrator created the root site administrator password during the initial setup process for {% data variables.location.product_location %}. diff --git a/data/reusables/enterprise_site_admin_settings/repository-search.md b/data/reusables/enterprise_site_admin_settings/repository-search.md index b6bc9901dbac..dffdc89012d8 100644 --- a/data/reusables/enterprise_site_admin_settings/repository-search.md +++ b/data/reusables/enterprise_site_admin_settings/repository-search.md @@ -1,2 +1,2 @@ 1. Under "Search users, organizations, teams, repositories, gists, and applications", type the name of the repository in the text field. Then to the right of the field, click **Search**. -![Screenshot of the "Search" page of the "Site admin" settings. The button to search repositories, labeled "Search," is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/search-for-things.png) +![Screenshot of the "Search" page of the "Site admin" settings. The button to search repositories, labeled "Search," is outlined.](/assets/images/enterprise/site-admin-settings/search-for-things.png) diff --git a/data/reusables/enterprise_site_admin_settings/search-user-or-org.md b/data/reusables/enterprise_site_admin_settings/search-user-or-org.md index b047835b848f..e59d38f174a0 100644 --- a/data/reusables/enterprise_site_admin_settings/search-user-or-org.md +++ b/data/reusables/enterprise_site_admin_settings/search-user-or-org.md @@ -1,2 +1,2 @@ 1. Under "Search users, organizations, teams, repositories, gists, and applications", type the name of the user or organization in the text field. Then to the right of the field, click **Search**. -![Screenshot of the "Search" page of the "Site admin" settings. The button to search users and organizations, labeled "Search," is highlighted with an orange outline.](/assets/images/enterprise/site-admin-settings/search-for-things.png) +![Screenshot of the "Search" page of the "Site admin" settings. The button to search users and organizations, labeled "Search," is outlined.](/assets/images/enterprise/site-admin-settings/search-for-things.png) diff --git a/data/reusables/gated-features/attestations.md b/data/reusables/gated-features/attestations.md index d84e777be5cb..693860b344da 100644 --- a/data/reusables/gated-features/attestations.md +++ b/data/reusables/gated-features/attestations.md @@ -1 +1 @@ -Artifact attestations are available in public repositories for all current {% data variables.product.prodname_dotcom %} plans. They are not available on legacy plans, such as Bronze, Silver, or Gold. {% ifversion fpt %}If you are on a {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, or {% data variables.product.prodname_team %} plan, artefact attestations are only available for public repositories. To use artifact attestations in private or internal repositories, you must be on a {% data variables.product.prodname_ghe_cloud %} plan. {% endif %} +Artifact attestations are available in public repositories for all current {% data variables.product.prodname_dotcom %} plans. They are not available on legacy plans, such as Bronze, Silver, or Gold. {% ifversion fpt %}If you are on a {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, or {% data variables.product.prodname_team %} plan, artifact attestations are only available for public repositories. To use artifact attestations in private or internal repositories, you must be on a {% data variables.product.prodname_ghe_cloud %} plan. {% endif %} diff --git a/data/reusables/gated-features/enterprise-accounts.md b/data/reusables/gated-features/enterprise-accounts.md index e9af8cba1b5e..26a07384307b 100644 --- a/data/reusables/gated-features/enterprise-accounts.md +++ b/data/reusables/gated-features/enterprise-accounts.md @@ -1 +1 @@ -Enterprise accounts are available with {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}. For more information, see "[About enterprise accounts]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/overview/about-enterprise-accounts){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +Enterprise accounts are available with {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}. For more information, see [About enterprise accounts]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/overview/about-enterprise-accounts){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} diff --git a/data/reusables/getting-started/about-and-creating-teams.md b/data/reusables/getting-started/about-and-creating-teams.md index 99e0326e23c7..49dc2882e74e 100644 --- a/data/reusables/getting-started/about-and-creating-teams.md +++ b/data/reusables/getting-started/about-and-creating-teams.md @@ -1,3 +1,3 @@ -Teams are groups of organization members that you can create to reflect your company or group's structure with cascading access permissions and mentions. Organization members can send notifications to a team or request reviews, and teams can be visible or secret. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams/about-teams)." +Teams are groups of organization members that you can create to reflect your company or group's structure with cascading access permissions and mentions. Organization members can send notifications to a team or request reviews, and teams can be visible or secret. For more information, see [AUTOTITLE](/organizations/organizing-members-into-teams/about-teams). -You can create independent teams or have multiple levels of nested teams to reflect your group or company's hierarchy. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams/creating-a-team)." +You can create independent teams or have multiple levels of nested teams to reflect your group or company's hierarchy. For more information, see [AUTOTITLE](/organizations/organizing-members-into-teams/creating-a-team). diff --git a/data/reusables/getting-started/actions.md b/data/reusables/getting-started/actions.md index e8388bd4e9b0..aae55bd4c716 100644 --- a/data/reusables/getting-started/actions.md +++ b/data/reusables/getting-started/actions.md @@ -1 +1 @@ -With {% data variables.product.prodname_actions %}, you can automate and customize {% data variables.location.product_location %}'s development workflow on {% data variables.product.product_name %}. You can create your own actions, and use and customize actions shared by the {% data variables.product.prodname_dotcom %} community. For more information, see "[AUTOTITLE](/actions/learn-github-actions)." +With {% data variables.product.prodname_actions %}, you can automate and customize {% data variables.location.product_location %}'s development workflow on {% data variables.product.product_name %}. You can create your own actions, and use and customize actions shared by the {% data variables.product.prodname_dotcom %} community. For more information, see [AUTOTITLE](/actions/learn-github-actions). diff --git a/data/reusables/getting-started/adding-members-to-organizations.md b/data/reusables/getting-started/adding-members-to-organizations.md index cd4aeff18189..ee8dc25a1745 100644 --- a/data/reusables/getting-started/adding-members-to-organizations.md +++ b/data/reusables/getting-started/adding-members-to-organizations.md @@ -1 +1 @@ -You can add members to organizations in {% data variables.location.product_location %} as long as you are an organization owner in the organizations you want to manage. You can also configure visibility of organization membership. For more information, see "[AUTOTITLE](/organizations/managing-membership-in-your-organization/adding-people-to-your-organization)" and "[AUTOTITLE](/admin/user-management/managing-organizations-in-your-enterprise/configuring-visibility-for-organization-membership)." +You can add members to organizations in {% data variables.location.product_location %} as long as you are an organization owner in the organizations you want to manage. You can also configure visibility of organization membership. For more information, see [AUTOTITLE](/organizations/managing-membership-in-your-organization/adding-people-to-your-organization) and [AUTOTITLE](/admin/user-management/managing-organizations-in-your-enterprise/configuring-visibility-for-organization-membership). diff --git a/data/reusables/getting-started/api.md b/data/reusables/getting-started/api.md index 7600eebef8d2..cf5cb60692a2 100644 --- a/data/reusables/getting-started/api.md +++ b/data/reusables/getting-started/api.md @@ -1 +1 @@ -There are two versions of the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API: the REST API and the GraphQL API. You can use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs to automate common tasks, [back up your data](/repositories/archiving-a-github-repository/backing-up-a-repository), or {% ifversion fpt or ghec %}[create integrations](/get-started/exploring-integrations/about-integrations){% else %}create integrations{% endif %} that extend {% data variables.product.product_name %}. For more information, see "[AUTOTITLE](/rest/overview/about-githubs-apis)." +There are two versions of the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API: the REST API and the GraphQL API. You can use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs to automate common tasks, [back up your data](/repositories/archiving-a-github-repository/backing-up-a-repository), or {% ifversion fpt or ghec %}[create integrations](/get-started/exploring-integrations/about-integrations){% else %}create integrations{% endif %} that extend {% data variables.product.product_name %}. For more information, see [AUTOTITLE](/rest/overview/about-githubs-apis). diff --git a/data/reusables/getting-started/being-social.md b/data/reusables/getting-started/being-social.md index eabd146c179e..12110f1ada15 100644 --- a/data/reusables/getting-started/being-social.md +++ b/data/reusables/getting-started/being-social.md @@ -1 +1 @@ -Each repository on {% data variables.product.prodname_dotcom %} is owned by a person or an organization. You can interact with the people, repositories, and organizations by connecting and following them on {% data variables.product.product_name %}. For more information, see "[AUTOTITLE](/get-started/start-your-journey/finding-inspiration-on-github)." +Each repository on {% data variables.product.prodname_dotcom %} is owned by a person or an organization. You can interact with the people, repositories, and organizations by connecting and following them on {% data variables.product.product_name %}. For more information, see [AUTOTITLE](/get-started/start-your-journey/finding-inspiration-on-github). diff --git a/data/reusables/getting-started/configuring-security-features.md b/data/reusables/getting-started/configuring-security-features.md index 5aa47ecad58d..4ba3ffa6bb6f 100644 --- a/data/reusables/getting-started/configuring-security-features.md +++ b/data/reusables/getting-started/configuring-security-features.md @@ -1 +1 @@ -To keep {% ifversion ghes %}the organizations in {% data variables.location.product_location %}{% else %}your organization{% endif %} secure, you can use a variety of {% data variables.product.prodname_dotcom %} security features, including security policies, dependency graphs, secret scanning and Dependabot security and version updates. For more information, see {% ifversion security-configurations %}"[AUTOTITLE](/code-security/securing-your-organization)."{% else %}"[AUTOTITLE](/code-security/getting-started/quickstart-for-securing-your-organization)."{% endif %} +To keep {% ifversion ghes %}the organizations in {% data variables.location.product_location %}{% else %}your organization{% endif %} secure, you can use a variety of {% data variables.product.prodname_dotcom %} security features, including security policies, dependency graphs, secret scanning and Dependabot security and version updates. For more information, see {% ifversion security-configurations %}[AUTOTITLE](/code-security/securing-your-organization).{% else %}[AUTOTITLE](/code-security/getting-started/quickstart-for-securing-your-organization).{% endif %} diff --git a/data/reusables/getting-started/contact-support-enterprise.md b/data/reusables/getting-started/contact-support-enterprise.md index 9539346c0036..656d138072af 100644 --- a/data/reusables/getting-started/contact-support-enterprise.md +++ b/data/reusables/getting-started/contact-support-enterprise.md @@ -1 +1 @@ -{% data variables.product.product_name %} includes access to {% data variables.contact.enterprise_support %}. {% data variables.contact.enterprise_support %} can help you troubleshoot issues that come up on {% data variables.product.product_name %}. {% ifversion ghes %}You can also choose to sign up for {% data variables.product.prodname_dotcom %} Premium Support for additional features. {% endif %}For more information, see "[AUTOTITLE](/support/learning-about-github-support/about-github-support)." +{% data variables.product.product_name %} includes access to {% data variables.contact.enterprise_support %}. {% data variables.contact.enterprise_support %} can help you troubleshoot issues that come up on {% data variables.product.product_name %}. {% ifversion ghes %}You can also choose to sign up for {% data variables.product.prodname_dotcom %} Premium Support for additional features. {% endif %}For more information, see [AUTOTITLE](/support/learning-about-github-support/about-github-support). diff --git a/data/reusables/getting-started/contact-support.md b/data/reusables/getting-started/contact-support.md index fe4c8c352d40..8dc90d65f37d 100644 --- a/data/reusables/getting-started/contact-support.md +++ b/data/reusables/getting-started/contact-support.md @@ -1 +1 @@ -{% data variables.contact.github_support %} can help you troubleshoot issues you run into while using {% data variables.product.prodname_dotcom %}. For more information, see "[AUTOTITLE](/support/learning-about-github-support/about-github-support)." +{% data variables.contact.github_support %} can help you troubleshoot issues you run into while using {% data variables.product.prodname_dotcom %}. For more information, see [AUTOTITLE](/support/learning-about-github-support/about-github-support). diff --git a/data/reusables/getting-started/create-a-repository.md b/data/reusables/getting-started/create-a-repository.md index 8ab19ccbc204..7434050ef559 100644 --- a/data/reusables/getting-started/create-a-repository.md +++ b/data/reusables/getting-started/create-a-repository.md @@ -1 +1 @@ -Creating a repository for your project allows you to store code in {% data variables.product.prodname_dotcom %}. This provides a backup of your work that you can choose to share with other developers. For more information, see "[AUTOTITLE](/repositories/creating-and-managing-repositories/quickstart-for-repositories)." +Creating a repository for your project allows you to store code in {% data variables.product.prodname_dotcom %}. This provides a backup of your work that you can choose to share with other developers. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/quickstart-for-repositories). diff --git a/data/reusables/getting-started/creating-organizations.md b/data/reusables/getting-started/creating-organizations.md index 5b22742820c4..cfd04e759983 100644 --- a/data/reusables/getting-started/creating-organizations.md +++ b/data/reusables/getting-started/creating-organizations.md @@ -1 +1 @@ -You can create new organizations in {% data variables.location.product_location %} to reflect your company or group's structure. For more information, see "[AUTOTITLE](/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch)." +You can create new organizations in {% data variables.location.product_location %} to reflect your company or group's structure. For more information, see [AUTOTITLE](/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch). diff --git a/data/reusables/getting-started/creating-teams.md b/data/reusables/getting-started/creating-teams.md index d11164be85a6..521b38a7152b 100644 --- a/data/reusables/getting-started/creating-teams.md +++ b/data/reusables/getting-started/creating-teams.md @@ -1 +1 @@ -Teams are groups of organization members that can be granted permissions to specific repositories as a group. You can create individual teams or multiple levels of nested teams in each of your organizations. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams/creating-a-team)" and "[AUTOTITLE](/organizations/organizing-members-into-teams/adding-organization-members-to-a-team)." +Teams are groups of organization members that can be granted permissions to specific repositories as a group. You can create individual teams or multiple levels of nested teams in each of your organizations. For more information, see [AUTOTITLE](/organizations/organizing-members-into-teams/creating-a-team) and [AUTOTITLE](/organizations/organizing-members-into-teams/adding-organization-members-to-a-team). diff --git a/data/reusables/getting-started/enforcing-repo-management-policies.md b/data/reusables/getting-started/enforcing-repo-management-policies.md index fa8da7f8d77f..c0374b60a306 100644 --- a/data/reusables/getting-started/enforcing-repo-management-policies.md +++ b/data/reusables/getting-started/enforcing-repo-management-policies.md @@ -1 +1 @@ -As an enterprise owner, you can set repository management policies for all organizations in {% data variables.location.product_location %}, or allow policies to be set separately in each organization. For more information, see "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise)." +As an enterprise owner, you can set repository management policies for all organizations in {% data variables.location.product_location %}, or allow policies to be set separately in each organization. For more information, see [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise). diff --git a/data/reusables/getting-started/enterprise-advanced-security.md b/data/reusables/getting-started/enterprise-advanced-security.md index c1814ae91d2d..a3c9b3743ca6 100644 --- a/data/reusables/getting-started/enterprise-advanced-security.md +++ b/data/reusables/getting-started/enterprise-advanced-security.md @@ -1 +1 @@ -If you have a GitHub Advanced Security license for your enterprise account, you can enforce policies to manage {% data variables.product.prodname_GH_advanced_security %} features for organizations owned by an enterprise account. For more information, see "[AUTOTITLE](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise)." +If you have a GitHub Advanced Security license for your enterprise account, you can enforce policies to manage {% data variables.product.prodname_GH_advanced_security %} features for organizations owned by an enterprise account. For more information, see [AUTOTITLE](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise). diff --git a/data/reusables/getting-started/fork-a-repository.md b/data/reusables/getting-started/fork-a-repository.md index b8489b72efa3..7eeeb2d446b2 100644 --- a/data/reusables/getting-started/fork-a-repository.md +++ b/data/reusables/getting-started/fork-a-repository.md @@ -1 +1 @@ -Forking a repository will allow you to make changes to another repository without affecting the original. For more information, see "[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo)." +Forking a repository will allow you to make changes to another repository without affecting the original. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo). diff --git a/data/reusables/getting-started/github-pages-enterprise.md b/data/reusables/getting-started/github-pages-enterprise.md index b9675fbf505f..172661c72abc 100644 --- a/data/reusables/getting-started/github-pages-enterprise.md +++ b/data/reusables/getting-started/github-pages-enterprise.md @@ -1 +1 @@ -{% data variables.product.prodname_pages %} is a static site hosting service that takes HTML, CSS, and JavaScript files straight from a repository and publishes a website. You can enable or disable {% data variables.product.prodname_pages %} for your enterprise members at the organization level. For more information, see "[AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise)" and "[AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages)." +{% data variables.product.prodname_pages %} is a static site hosting service that takes HTML, CSS, and JavaScript files straight from a repository and publishes a website. You can enable or disable {% data variables.product.prodname_pages %} for your enterprise members at the organization level. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise) and [AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages). diff --git a/data/reusables/getting-started/giving-access-to-repositories-projects-apps.md b/data/reusables/getting-started/giving-access-to-repositories-projects-apps.md index c9b44a9aa123..4a93f91211f9 100644 --- a/data/reusables/getting-started/giving-access-to-repositories-projects-apps.md +++ b/data/reusables/getting-started/giving-access-to-repositories-projects-apps.md @@ -1,3 +1,3 @@ -You can give organization members, teams, and outside collaborators different levels of access to repositories owned by your organization with repository roles. For more information, see "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)." +You can give organization members, teams, and outside collaborators different levels of access to repositories owned by your organization with repository roles. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization). -You can also customize access to your organization's projects and allow individual organization members to manage your organization's {% data variables.product.prodname_github_apps %}. For more information, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/managing-access-to-your-projects)," "[AUTOTITLE](/organizations/managing-access-to-your-organizations-project-boards)," and "[AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization)." +You can also customize access to your organization's projects and allow individual organization members to manage your organization's {% data variables.product.prodname_github_apps %}. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/managing-access-to-your-projects), [AUTOTITLE](/organizations/managing-access-to-your-organizations-project-boards), and [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization). diff --git a/data/reusables/getting-started/learning-enterprise.md b/data/reusables/getting-started/learning-enterprise.md index 481527db7243..4c1089bdba33 100644 --- a/data/reusables/getting-started/learning-enterprise.md +++ b/data/reusables/getting-started/learning-enterprise.md @@ -1,3 +1,3 @@ Your enterprise members can learn new skills by completing fun, realistic projects in their very own GitHub repository with [{% data variables.product.prodname_learning %}](https://skills.github.com/). Each course is a hands-on lesson created by the GitHub community and taught by a friendly bot. -For more information, see "[AUTOTITLE](/get-started/start-your-journey/git-and-github-learning-resources)." +For more information, see [AUTOTITLE](/get-started/start-your-journey/git-and-github-learning-resources). diff --git a/data/reusables/getting-started/learning.md b/data/reusables/getting-started/learning.md index 81f4f7c2a033..cc86a12b02fe 100644 --- a/data/reusables/getting-started/learning.md +++ b/data/reusables/getting-started/learning.md @@ -1,3 +1,3 @@ You can learn new skills by completing fun, realistic projects in your very own GitHub repository with [{% data variables.product.prodname_learning %}](https://skills.github.com/). Each course is a hands-on lesson created by the GitHub community and taught by a friendly bot. -For more information, see "[AUTOTITLE](/get-started/start-your-journey/git-and-github-learning-resources)." +For more information, see [AUTOTITLE](/get-started/start-your-journey/git-and-github-learning-resources). diff --git a/data/reusables/getting-started/managing-enterprise-members.md b/data/reusables/getting-started/managing-enterprise-members.md index f162a21d6c40..cc70f7d9d05e 100644 --- a/data/reusables/getting-started/managing-enterprise-members.md +++ b/data/reusables/getting-started/managing-enterprise-members.md @@ -1 +1 @@ -You can manage settings and audit activity for the members of {% data variables.location.product_location %}. You can {% ifversion ghes %}promote an enterprise member to be a site administrator, {% endif %}manage dormant users, view the audit log for user activity, and customize messages that enterprise members will see. For more information, see "[AUTOTITLE](/admin/user-management/managing-users-in-your-enterprise)." +You can manage settings and audit activity for the members of {% data variables.location.product_location %}. You can {% ifversion ghes %}promote an enterprise member to be a site administrator, {% endif %}manage dormant users, view the audit log for user activity, and customize messages that enterprise members will see. For more information, see [AUTOTITLE](/admin/user-management/managing-users-in-your-enterprise). diff --git a/data/reusables/getting-started/managing-org-members.md b/data/reusables/getting-started/managing-org-members.md index d484bcd24a80..c2d77e212f50 100644 --- a/data/reusables/getting-started/managing-org-members.md +++ b/data/reusables/getting-started/managing-org-members.md @@ -1 +1 @@ -You can invite anyone to be a member of your organization, as long as they have a personal account on {% data variables.product.prodname_dotcom %}. You can also remove members and reinstate former members. For more information, see "[AUTOTITLE](/organizations/managing-membership-in-your-organization)." +You can invite anyone to be a member of your organization, as long as they have a personal account on {% data variables.product.prodname_dotcom %}. You can also remove members and reinstate former members. For more information, see [AUTOTITLE](/organizations/managing-membership-in-your-organization). diff --git a/data/reusables/getting-started/managing-org-policies.md b/data/reusables/getting-started/managing-org-policies.md index d0875f482b88..bb02d80159b1 100644 --- a/data/reusables/getting-started/managing-org-policies.md +++ b/data/reusables/getting-started/managing-org-policies.md @@ -1,5 +1,5 @@ You can manage permissions and policies for a number of different actions and features in your organization. -For example, to protect your organization's data, you can restrict repository creation in your organization. You can also choose to allow or prevent the forking of private repositories owned by your organization. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization)" and "[AUTOTITLE](/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)." +For example, to protect your organization's data, you can restrict repository creation in your organization. You can also choose to allow or prevent the forking of private repositories owned by your organization. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization) and [AUTOTITLE](/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization). -For the full list of settings you can configure for your organization, see "[AUTOTITLE](/organizations/managing-organization-settings)." +For the full list of settings you can configure for your organization, see [AUTOTITLE](/organizations/managing-organization-settings). diff --git a/data/reusables/getting-started/managing-repo-changes.md b/data/reusables/getting-started/managing-repo-changes.md index fa5ba0d7f99f..bbcb5afe7e6d 100644 --- a/data/reusables/getting-started/managing-repo-changes.md +++ b/data/reusables/getting-started/managing-repo-changes.md @@ -1,3 +1,3 @@ -You can configure permissions for creating, transferring and deleting repositories in your organization, including which types members can create. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization)" and "[AUTOTITLE](/organizations/managing-organization-settings/setting-permissions-for-deleting-or-transferring-repositories)." +You can configure permissions for creating, transferring and deleting repositories in your organization, including which types members can create. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization) and [AUTOTITLE](/organizations/managing-organization-settings/setting-permissions-for-deleting-or-transferring-repositories). -You can also restrict or grant the ability to change repository visibility. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization)." +You can also restrict or grant the ability to change repository visibility. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization). diff --git a/data/reusables/getting-started/managing-team-settings.md b/data/reusables/getting-started/managing-team-settings.md index dfe54662690e..e7964fedcaf3 100644 --- a/data/reusables/getting-started/managing-team-settings.md +++ b/data/reusables/getting-started/managing-team-settings.md @@ -1,3 +1,3 @@ -You can designate a "team maintainer" to manage team settings and discussions, among other privileges. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams/assigning-the-team-maintainer-role-to-a-team-member)." +You can designate a "team maintainer" to manage team settings and discussions, among other privileges. For more information, see [AUTOTITLE](/organizations/organizing-members-into-teams/assigning-the-team-maintainer-role-to-a-team-member). -You can manage code review assignments for your team, change team visibility, manage scheduled reminders for your team, and more in your team's settings. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams)." +You can manage code review assignments for your team, change team visibility, manage scheduled reminders for your team, and more in your team's settings. For more information, see [AUTOTITLE](/organizations/organizing-members-into-teams). diff --git a/data/reusables/getting-started/math-and-diagrams.md b/data/reusables/getting-started/math-and-diagrams.md index e2589d42093b..6f886caeb6aa 100644 --- a/data/reusables/getting-started/math-and-diagrams.md +++ b/data/reusables/getting-started/math-and-diagrams.md @@ -1 +1 @@ -{% ifversion mermaid %}You can use Markdown to add rendered math expressions, diagrams, maps, and 3D models to your wiki. For more information on creating rendered math expressions, see "[AUTOTITLE](/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions)." For more information on creating diagrams, maps and 3D models, see "[AUTOTITLE](/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams)."{% endif %} +{% ifversion mermaid %}You can use Markdown to add rendered math expressions, diagrams, maps, and 3D models to your wiki. For more information on creating rendered math expressions, see [AUTOTITLE](/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions). For more information on creating diagrams, maps and 3D models, see [AUTOTITLE](/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams).{% endif %} diff --git a/data/reusables/getting-started/open-source-projects.md b/data/reusables/getting-started/open-source-projects.md index 2d5021cd6a2a..60cd5013b28c 100644 --- a/data/reusables/getting-started/open-source-projects.md +++ b/data/reusables/getting-started/open-source-projects.md @@ -1,4 +1,4 @@ -Contributing to open source projects on {% data variables.product.prodname_dotcom %} can be a rewarding way to learn, teach, and build experience in just about any skill you can imagine. For more information, see "[How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)" in the Open Source Guides. +Contributing to open source projects on {% data variables.product.prodname_dotcom %} can be a rewarding way to learn, teach, and build experience in just about any skill you can imagine. For more information, see [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/) in the Open Source Guides. -You can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in [Explore {% data variables.product.prodname_dotcom %}](https://github.com/explore).{% ifversion fpt or ghec %} For more information, see "[AUTOTITLE](/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github)." +You can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in [Explore {% data variables.product.prodname_dotcom %}](https://github.com/explore).{% ifversion fpt or ghec %} For more information, see [AUTOTITLE](/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github). {% endif %} diff --git a/data/reusables/getting-started/org-permissions-and-roles.md b/data/reusables/getting-started/org-permissions-and-roles.md index 4060a1c276b2..34157bbece5a 100644 --- a/data/reusables/getting-started/org-permissions-and-roles.md +++ b/data/reusables/getting-started/org-permissions-and-roles.md @@ -1 +1 @@ -Each person in your organization has a role that defines their level of access to the organization. The member role is the default, and you can assign owner and billing manager roles as well as "team maintainer" permissions. For more information, see "[AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization)." +Each person in your organization has a role that defines their level of access to the organization. The member role is the default, and you can assign owner and billing manager roles as well as "team maintainer" permissions. For more information, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization). diff --git a/data/reusables/getting-started/packages.md b/data/reusables/getting-started/packages.md index ffaa354cfbe7..04495d94ae1e 100644 --- a/data/reusables/getting-started/packages.md +++ b/data/reusables/getting-started/packages.md @@ -1 +1 @@ -{% data variables.product.prodname_registry %} is a software package hosting service that allows you to host your software packages privately or publicly and use packages as dependencies in your projects. For more information, see "[AUTOTITLE](/packages/learn-github-packages/introduction-to-github-packages)." +{% data variables.product.prodname_registry %} is a software package hosting service that allows you to host your software packages privately or publicly and use packages as dependencies in your projects. For more information, see [AUTOTITLE](/packages/learn-github-packages/introduction-to-github-packages). diff --git a/data/reusables/getting-started/requiring-2fa.md b/data/reusables/getting-started/requiring-2fa.md index 89a787a7e0c8..97dcbca86f43 100644 --- a/data/reusables/getting-started/requiring-2fa.md +++ b/data/reusables/getting-started/requiring-2fa.md @@ -1 +1 @@ -You can view whether your organization members have two-factor authentication enabled and choose to require two-factor authentication in your organization. For more information, see "[AUTOTITLE](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/requiring-two-factor-authentication-in-your-organization)." +You can view whether your organization members have two-factor authentication enabled and choose to require two-factor authentication in your organization. For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/requiring-two-factor-authentication-in-your-organization). diff --git a/data/reusables/getting-started/reviewing-org-audit-log-and-integrations.md b/data/reusables/getting-started/reviewing-org-audit-log-and-integrations.md index 1fb69fe3a375..ad4052d5165c 100644 --- a/data/reusables/getting-started/reviewing-org-audit-log-and-integrations.md +++ b/data/reusables/getting-started/reviewing-org-audit-log-and-integrations.md @@ -1,3 +1,3 @@ -The audit log for your organization allows you, as an organization owner, to review the actions performed by members of the organization within the last 180 days. For more information, see "[AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization)." +The audit log for your organization allows you, as an organization owner, to review the actions performed by members of the organization within the last 180 days. For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization). -You can also review and configure the permission levels for your organization's installed integrations. For more information, see "[AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/reviewing-github-apps-installed-in-your-organization)." +You can also review and configure the permission levels for your organization's installed integrations. For more information, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/reviewing-github-apps-installed-in-your-organization). diff --git a/data/reusables/getting-started/setting-org-and-repo-permissions.md b/data/reusables/getting-started/setting-org-and-repo-permissions.md index b31dc6af078f..2e27a5f0d061 100644 --- a/data/reusables/getting-started/setting-org-and-repo-permissions.md +++ b/data/reusables/getting-started/setting-org-and-repo-permissions.md @@ -1,3 +1,3 @@ -We recommend giving a limited number of members in each organization an organization owner role, which provides complete administrative access for that organization. For more information, see "[AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization)." +We recommend giving a limited number of members in each organization an organization owner role, which provides complete administrative access for that organization. For more information, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization). -For organizations where you have admin permissions, you can also customize access to each repository with granular permission levels. For more information, see "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)." +For organizations where you have admin permissions, you can also customize access to each repository with granular permission levels. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization). diff --git a/data/reusables/getting-started/sponsors.md b/data/reusables/getting-started/sponsors.md index 45fcf128e686..1488db5ef866 100644 --- a/data/reusables/getting-started/sponsors.md +++ b/data/reusables/getting-started/sponsors.md @@ -1 +1 @@ -{% data variables.product.prodname_sponsors %} allows you to make a monthly recurring payment to a developer or organization who designs, creates, or maintains open source projects you depend on. For more information, see "[AUTOTITLE](/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." +{% data variables.product.prodname_sponsors %} allows you to make a monthly recurring payment to a developer or organization who designs, creates, or maintains open source projects you depend on. For more information, see [AUTOTITLE](/sponsors/getting-started-with-github-sponsors/about-github-sponsors). diff --git a/data/reusables/getting-started/using-org-community-files-and-moderation-tools.md b/data/reusables/getting-started/using-org-community-files-and-moderation-tools.md index 12d126fd6e12..0a75118a27c3 100644 --- a/data/reusables/getting-started/using-org-community-files-and-moderation-tools.md +++ b/data/reusables/getting-started/using-org-community-files-and-moderation-tools.md @@ -1,3 +1,3 @@ -You can create default community health files, such as a CONTRIBUTING.md file, a CODE_OF_CONDUCT.md file, or even issue and pull request templates, for your organization. These default files will be used for any repository owned by your organization that does not contain its own file of that type. For more information, see "[AUTOTITLE](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." +You can create default community health files, such as a CONTRIBUTING.md file, a CODE_OF_CONDUCT.md file, or even issue and pull request templates, for your organization. These default files will be used for any repository owned by your organization that does not contain its own file of that type. For more information, see [AUTOTITLE](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file). -{% data variables.product.prodname_dotcom %} offers multiple tools for moderating and managing your community. For more information, see "[AUTOTITLE](/communities/setting-up-your-project-for-healthy-contributions/about-community-management-and-moderation#tools-for-moderating-your-community)." +{% data variables.product.prodname_dotcom %} offers multiple tools for moderating and managing your community. For more information, see [AUTOTITLE](/communities/setting-up-your-project-for-healthy-contributions/about-community-management-and-moderation#tools-for-moderating-your-community). diff --git a/data/reusables/github-connect/enable-github-connect.md b/data/reusables/github-connect/enable-github-connect.md index 529643110db9..2f53e55187f9 100644 --- a/data/reusables/github-connect/enable-github-connect.md +++ b/data/reusables/github-connect/enable-github-connect.md @@ -1,4 +1,4 @@ {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.github-connect-tab %} -1. Under "{% data variables.product.prodname_github_connect %} is not enabled yet", click **Enable {% data variables.product.prodname_github_connect %}**. By clicking **Enable {% data variables.product.prodname_github_connect %}**, you agree to the "[AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#connect)." +1. Under "{% data variables.product.prodname_github_connect %} is not enabled yet", click **Enable {% data variables.product.prodname_github_connect %}**. By clicking **Enable {% data variables.product.prodname_github_connect %}**, you agree to the [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#connect). 1. To the right of the enterprise account you'd like to connect, click **Connect**. diff --git a/data/reusables/github-connect/license-sync.md b/data/reusables/github-connect/license-sync.md index 91a3b95c2f74..36e6629bb723 100644 --- a/data/reusables/github-connect/license-sync.md +++ b/data/reusables/github-connect/license-sync.md @@ -1 +1 @@ -| Automatic user license sync | Manage license usage across your {% data variables.product.prodname_enterprise %} deployments by automatically syncing user licenses from {% data variables.location.product_location %} to {% data variables.product.prodname_ghe_cloud %}. | "[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise)" | +| Automatic user license sync | Manage license usage across your {% data variables.product.prodname_enterprise %} deployments by automatically syncing user licenses from {% data variables.location.product_location %} to {% data variables.product.prodname_ghe_cloud %}. | [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise) | diff --git a/data/reusables/github-connect/unified-contributions.md b/data/reusables/github-connect/unified-contributions.md index ea8a33390c20..f01a3c06eb0d 100644 --- a/data/reusables/github-connect/unified-contributions.md +++ b/data/reusables/github-connect/unified-contributions.md @@ -1 +1 @@ -| Unified contributions | Allow users to include anonymized contribution counts for their work on {% data variables.location.product_location %} in their contribution graphs on {% data variables.product.prodname_ghe_cloud %}. | "[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-unified-contributions-for-your-enterprise)" | +| Unified contributions | Allow users to include anonymized contribution counts for their work on {% data variables.location.product_location %} in their contribution graphs on {% data variables.product.prodname_ghe_cloud %}. | [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-unified-contributions-for-your-enterprise) | diff --git a/data/reusables/github-connect/unified-search.md b/data/reusables/github-connect/unified-search.md index af97acbf7fec..3c923e35bf31 100644 --- a/data/reusables/github-connect/unified-search.md +++ b/data/reusables/github-connect/unified-search.md @@ -1 +1 @@ -| Unified search | Allow users to include repositories on {% data variables.product.prodname_ghe_cloud %} in their search results when searching from {% data variables.location.product_location %}. | "[AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-unified-search-for-your-enterprise)" | +| Unified search | Allow users to include repositories on {% data variables.product.prodname_ghe_cloud %} in their search results when searching from {% data variables.location.product_location %}. | [AUTOTITLE](/admin/configuration/configuring-github-connect/enabling-unified-search-for-your-enterprise) | diff --git a/data/reusables/gpg/set-auto-sign.md b/data/reusables/gpg/set-auto-sign.md index 7246571da029..8c98b3ac2ae6 100644 --- a/data/reusables/gpg/set-auto-sign.md +++ b/data/reusables/gpg/set-auto-sign.md @@ -5,4 +5,4 @@ git config --global tag.gpgSign true ``` - For more information, see "[AUTOTITLE](/authentication/managing-commit-signature-verification/signing-commits)." + For more information, see [AUTOTITLE](/authentication/managing-commit-signature-verification/signing-commits). diff --git a/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md b/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md index a9b99865fe57..fcadb9fceaac 100644 --- a/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md +++ b/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md @@ -7,4 +7,4 @@ After you create an IP allow list, you can enable allowed IP addresses. When you {% endif %} -Before you enable your IP allow list, you can check whether your allow list will permit a connection from a particular IP address. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +Before you enable your IP allow list, you can check whether your allow list will permit a connection from a particular IP address. For more information, see [Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted). diff --git a/data/reusables/identity-and-permissions/check-ip-address.md b/data/reusables/identity-and-permissions/check-ip-address.md index 003e8a36b457..05b53dd97fca 100644 --- a/data/reusables/identity-and-permissions/check-ip-address.md +++ b/data/reusables/identity-and-permissions/check-ip-address.md @@ -1 +1 @@ -1. Optionally, check if a particular IP address would be allowed by any of the enabled entries in your list. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +1. Optionally, check if a particular IP address would be allowed by any of the enabled entries in your list. For more information, see [Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted). diff --git a/data/reusables/identity-and-permissions/ip-allow-lists-cidr-notation.md b/data/reusables/identity-and-permissions/ip-allow-lists-cidr-notation.md index 0d2e7a9bf497..09b6af21a4ac 100644 --- a/data/reusables/identity-and-permissions/ip-allow-lists-cidr-notation.md +++ b/data/reusables/identity-and-permissions/ip-allow-lists-cidr-notation.md @@ -1 +1 @@ -You can approve access for a single IP address, or a range of addresses, using CIDR notation. For more information, see "[CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation)" on Wikipedia. +You can approve access for a single IP address, or a range of addresses, using CIDR notation. For more information, see [CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation) on Wikipedia. diff --git a/data/reusables/identity-and-permissions/ip-allow-lists-enterprise.md b/data/reusables/identity-and-permissions/ip-allow-lists-enterprise.md index 107cabfbea58..acef567708a9 100644 --- a/data/reusables/identity-and-permissions/ip-allow-lists-enterprise.md +++ b/data/reusables/identity-and-permissions/ip-allow-lists-enterprise.md @@ -1,5 +1,5 @@ When you enable the allow list, the IP addresses you have configured are immediately added to the allow lists of organizations in your enterprise. If you disable the allow list, the addresses are removed from the organization allow lists. -{% data reusables.identity-and-permissions.org-enterprise-allow-list-interaction %} For more information, see "[AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)." +{% data reusables.identity-and-permissions.org-enterprise-allow-list-interaction %} For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization). -You can choose to automatically add to your allow list any IP addresses configured for {% data variables.product.prodname_github_apps %} installed in your enterprise. The creator of a {% data variables.product.prodname_github_app %} can configure an allow list for their application, specifying the IP addresses at which the application runs. By inheriting their allow list into yours, you avoid connection requests from the application being refused. For more information, see "[Allowing access by GitHub Apps](#allowing-access-by-github-apps)." +You can choose to automatically add to your allow list any IP addresses configured for {% data variables.product.prodname_github_apps %} installed in your enterprise. The creator of a {% data variables.product.prodname_github_app %} can configure an allow list for their application, specifying the IP addresses at which the application runs. By inheriting their allow list into yours, you avoid connection requests from the application being refused. For more information, see [Allowing access by GitHub Apps](#allowing-access-by-github-apps). diff --git a/data/reusables/identity-and-permissions/ip-allow-lists-githubapps-enterprise.md b/data/reusables/identity-and-permissions/ip-allow-lists-githubapps-enterprise.md index 35e16222db81..d3554c088e24 100644 --- a/data/reusables/identity-and-permissions/ip-allow-lists-githubapps-enterprise.md +++ b/data/reusables/identity-and-permissions/ip-allow-lists-githubapps-enterprise.md @@ -4,7 +4,7 @@ If you're using an allow list, you can also choose to automatically add to your {% data reusables.apps.ip-allow-list-only-apps %} -For more information about how to create an allow list for a {% data variables.product.prodname_github_app %} you have created, see "[AUTOTITLE](/apps/maintaining-github-apps/managing-allowed-ip-addresses-for-a-github-app)." +For more information about how to create an allow list for a {% data variables.product.prodname_github_app %} you have created, see [AUTOTITLE](/apps/maintaining-github-apps/managing-allowed-ip-addresses-for-a-github-app). To enable automatic addition of IP addresses for {% data variables.product.prodname_github_apps %}: diff --git a/data/reusables/identity-and-permissions/revoking-identity-team-sync.md b/data/reusables/identity-and-permissions/revoking-identity-team-sync.md index 2d7cfcfb8039..4abf19ba22d4 100644 --- a/data/reusables/identity-and-permissions/revoking-identity-team-sync.md +++ b/data/reusables/identity-and-permissions/revoking-identity-team-sync.md @@ -1,2 +1,2 @@ > [!WARNING] -> If your organization uses team synchronization, revoking a person's SSO identity will remove that person from any teams mapped to IdP groups. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group)." +> If your organization uses team synchronization, revoking a person's SSO identity will remove that person from any teams mapped to IdP groups. For more information, see [AUTOTITLE](/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group). diff --git a/data/reusables/identity-and-permissions/sync-team-with-idp-group.md b/data/reusables/identity-and-permissions/sync-team-with-idp-group.md index dcd5d9fa9d75..5b3b7a8496b2 100644 --- a/data/reusables/identity-and-permissions/sync-team-with-idp-group.md +++ b/data/reusables/identity-and-permissions/sync-team-with-idp-group.md @@ -1 +1 @@ -After you enable team synchronization, team maintainers and organization owners can connect a team to an IdP group on {% data variables.product.prodname_dotcom %} or through the API. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group)" and "[AUTOTITLE](/rest/teams#team-sync)." +After you enable team synchronization, team maintainers and organization owners can connect a team to an IdP group on {% data variables.product.prodname_dotcom %} or through the API. For more information, see [AUTOTITLE](/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group) and [AUTOTITLE](/rest/teams#team-sync). diff --git a/data/reusables/identity-and-permissions/team-sync-confirm-scim.md b/data/reusables/identity-and-permissions/team-sync-confirm-scim.md index 060bb62330d9..fb365957d63b 100644 --- a/data/reusables/identity-and-permissions/team-sync-confirm-scim.md +++ b/data/reusables/identity-and-permissions/team-sync-confirm-scim.md @@ -1 +1 @@ -1. We recommend you confirm that your users have SAML enabled and have a linked SCIM identity to avoid potential provisioning errors. For more information, see "[AUTOTITLE](/organizations/managing-saml-single-sign-on-for-your-organization/troubleshooting-identity-and-access-management-for-your-organization)." +1. We recommend you confirm that your users have SAML enabled and have a linked SCIM identity to avoid potential provisioning errors. For more information, see [AUTOTITLE](/organizations/managing-saml-single-sign-on-for-your-organization/troubleshooting-identity-and-access-management-for-your-organization). diff --git a/data/reusables/identity-and-permissions/team-sync-okta-requirements.md b/data/reusables/identity-and-permissions/team-sync-okta-requirements.md index fb0136a4e10c..bb84c3de2cd6 100644 --- a/data/reusables/identity-and-permissions/team-sync-okta-requirements.md +++ b/data/reusables/identity-and-permissions/team-sync-okta-requirements.md @@ -1,5 +1,5 @@ Before you enable team synchronization for Okta, you or your IdP administrator must: -* Configure the SAML, SSO, and SCIM integration for your organization using Okta. For more information, see "[AUTOTITLE](/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta)." +* Configure the SAML, SSO, and SCIM integration for your organization using Okta. For more information, see [AUTOTITLE](/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta). * Provide the tenant URL for your Okta instance. * Generate a valid SSWS token with read-only admin permissions for your Okta installation as a service user. For more information, see [Create the token](https://developer.okta.com/docs/guides/create-an-api-token/create-the-token/) and [Service users](https://help.okta.com/asa/en-us/Content/Topics/Adv_Server_Access/docs/service-users.htm) in Okta's documentation. diff --git a/data/reusables/identity-and-permissions/verification-status-check.md b/data/reusables/identity-and-permissions/verification-status-check.md index 53d269b0da3d..2e87736793fe 100644 --- a/data/reusables/identity-and-permissions/verification-status-check.md +++ b/data/reusables/identity-and-permissions/verification-status-check.md @@ -1 +1 @@ -You can check the verification status of your signed commits or tags on {% data variables.product.product_name %} and view why your commit signatures might be unverified. For more information, see "[AUTOTITLE](/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status)." +You can check the verification status of your signed commits or tags on {% data variables.product.product_name %} and view why your commit signatures might be unverified. For more information, see [AUTOTITLE](/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status). diff --git a/data/reusables/issues/release-stage.md b/data/reusables/issues/release-stage.md index b503d75980de..a49b300e4668 100644 --- a/data/reusables/issues/release-stage.md +++ b/data/reusables/issues/release-stage.md @@ -1,3 +1,3 @@ >[!NOTE] ->Issue types, sub-issues, and advanced issue search are currently in an opt-in {% data variables.release-phases.public_preview %} for organizations. To learn more and add your organization to the waitlist, see the "[GitHub Blog](https://github.blog/changelog/2024-10-01-evolving-github-issues-public-preview)." +>Issue types, sub-issues, and advanced issue search are currently in {% data variables.release-phases.public_preview %} for organizations. See the [GitHub Blog](https://github.blog/changelog/2025-01-13-evolving-github-issues). diff --git a/data/reusables/large_files/can-include-lfs-objects-archives.md b/data/reusables/large_files/can-include-lfs-objects-archives.md index 215145ff14a1..e5025e47220a 100644 --- a/data/reusables/large_files/can-include-lfs-objects-archives.md +++ b/data/reusables/large_files/can-include-lfs-objects-archives.md @@ -1,3 +1,3 @@ {% ifversion fpt or ghec %} -You can choose whether {% data variables.large_files.product_name_short %} objects are included in [source code archives](/repositories/working-with-files/using-files/downloading-source-code-archives), such as ZIP files and tarballs, that {% data variables.product.product_name %} creates for your repository. For more information, see "[AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-git-lfs-objects-in-archives-of-your-repository)." +You can choose whether {% data variables.large_files.product_name_short %} objects are included in [source code archives](/repositories/working-with-files/using-files/downloading-source-code-archives), such as ZIP files and tarballs, that {% data variables.product.product_name %} creates for your repository. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-git-lfs-objects-in-archives-of-your-repository). {% endif %} diff --git a/data/reusables/large_files/resolving-upload-failures.md b/data/reusables/large_files/resolving-upload-failures.md index c64dda0e9228..af7e6a563f9e 100644 --- a/data/reusables/large_files/resolving-upload-failures.md +++ b/data/reusables/large_files/resolving-upload-failures.md @@ -1 +1 @@ -If there are referenced {% data variables.large_files.product_name_short %} files that did not upload successfully, you will receive an error message. For more information, see "[AUTOTITLE](/repositories/working-with-files/managing-large-files/resolving-git-large-file-storage-upload-failures)." +If there are referenced {% data variables.large_files.product_name_short %} files that did not upload successfully, you will receive an error message. For more information, see [AUTOTITLE](/repositories/working-with-files/managing-large-files/resolving-git-large-file-storage-upload-failures). diff --git a/data/reusables/marketplace/free-trials.md b/data/reusables/marketplace/free-trials.md index f3c0e809576c..569f7217dfb0 100644 --- a/data/reusables/marketplace/free-trials.md +++ b/data/reusables/marketplace/free-trials.md @@ -1 +1 @@ -If you choose a paid plan with a free trial, you can cancel at any time during your trial period without being charged, but you will automatically lose access to the app. Your paid subscription will start at the end of the 14-day trial. For more information, see "[AUTOTITLE](/billing/managing-billing-for-github-marketplace-apps/about-billing-for-github-marketplace)." +If you choose a paid plan with a free trial, you can cancel at any time during your trial period without being charged, but you will automatically lose access to the app. Your paid subscription will start at the end of the 14-day trial. For more information, see [AUTOTITLE](/billing/managing-billing-for-github-marketplace-apps/about-billing-for-github-marketplace). diff --git a/data/reusables/marketplace/marketplace-apps-not-actions.md b/data/reusables/marketplace/marketplace-apps-not-actions.md index 930f59c0f7bf..0afa4cd1aa88 100644 --- a/data/reusables/marketplace/marketplace-apps-not-actions.md +++ b/data/reusables/marketplace/marketplace-apps-not-actions.md @@ -1,2 +1,2 @@ > [!NOTE] -> This article applies to publishing apps in {% data variables.product.prodname_marketplace %} only. For more information about publishing {% data variables.product.prodname_actions %} in {% data variables.product.prodname_marketplace %}, see "[AUTOTITLE](/actions/creating-actions/publishing-actions-in-github-marketplace)." +> This article applies to publishing apps in {% data variables.product.prodname_marketplace %} only. For more information about publishing {% data variables.product.prodname_actions %} in {% data variables.product.prodname_marketplace %}, see [AUTOTITLE](/actions/creating-actions/publishing-actions-in-github-marketplace). diff --git a/data/reusables/marketplace/marketplace-apps-only.md b/data/reusables/marketplace/marketplace-apps-only.md index 4b4227f9e9c3..4a898b1a7998 100644 --- a/data/reusables/marketplace/marketplace-apps-only.md +++ b/data/reusables/marketplace/marketplace-apps-only.md @@ -1,2 +1,2 @@ > [!NOTE] -> This article applies to installing and purchasing apps from {% data variables.product.prodname_marketplace %} only. For more information on apps purchased from integrators, see "[AUTOTITLE](/get-started/exploring-integrations/about-integrations)." +> This article applies to installing and purchasing apps from {% data variables.product.prodname_marketplace %} only. For more information on apps purchased from integrators, see [AUTOTITLE](/get-started/exploring-integrations/about-integrations). diff --git a/data/reusables/marketplace/marketplace-enterprise-account.md b/data/reusables/marketplace/marketplace-enterprise-account.md index 2ec86eb80eec..126cf0e968a0 100644 --- a/data/reusables/marketplace/marketplace-enterprise-account.md +++ b/data/reusables/marketplace/marketplace-enterprise-account.md @@ -1,4 +1,4 @@ > [!NOTE] -> To use a {% data variables.product.prodname_marketplace %} app, you must install the app on an organization account within your enterprise. For more information, see "[AUTOTITLE](/apps/using-github-apps/installing-a-github-app-from-github-marketplace-for-your-organizations)." +> To use a {% data variables.product.prodname_marketplace %} app, you must install the app on an organization account within your enterprise. For more information, see [AUTOTITLE](/apps/using-github-apps/installing-a-github-app-from-github-marketplace-for-your-organizations). > > You cannot purchase or manage paid {% data variables.product.prodname_marketplace %} apps if your enterprise account is invoiced. Organizations belonging to an enterprise can view and use {% data variables.product.prodname_marketplace %} apps from their billing settings, but you can only purchase or manage apps through your enterprise account. Only enterprise owners who are also organization owners can purchase {% data variables.product.prodname_marketplace %} apps. diff --git a/data/reusables/migrations/create-empty-repo.md b/data/reusables/migrations/create-empty-repo.md index b72f68cd2e32..30debc9bb812 100644 --- a/data/reusables/migrations/create-empty-repo.md +++ b/data/reusables/migrations/create-empty-repo.md @@ -1 +1 @@ -1. Create a new repository on {% data variables.product.github %}. To avoid errors, do not initialize the new repository with README, license, or gitignore files. You can add these files after your project has been pushed to {% data variables.product.product_name %}. For more information, see "[AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-new-repository)." +1. Create a new repository on {% data variables.product.github %}. To avoid errors, do not initialize the new repository with README, license, or gitignore files. You can add these files after your project has been pushed to {% data variables.product.product_name %}. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-new-repository). diff --git a/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghecom.md b/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghecom.md index 7e4f7a94ec25..d587606da80c 100644 --- a/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghecom.md +++ b/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghecom.md @@ -1 +1 @@ -If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "[Migrations from any Git repository to {% data variables.enterprise.data_residency_site %}](#any-git-repository-to-ghecom)." +If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see [Migrations from any Git repository to {% data variables.enterprise.data_residency_site %}](#any-git-repository-to-ghecom). diff --git a/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghes.md b/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghes.md index ab2b163d8324..43b321447ad3 100644 --- a/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghes.md +++ b/data/reusables/migrations/migration-instructions-for-any-git-repository-to-ghes.md @@ -1 +1 @@ -If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "[Any Git repository to {% data variables.product.prodname_ghe_server %}](#any-git-repository-to-github-enterprise-server)." +If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see [Any Git repository to {% data variables.product.prodname_ghe_server %}](#any-git-repository-to-github-enterprise-server). diff --git a/data/reusables/migrations/migration-instructions-for-any-git-repository-to-githubcom.md b/data/reusables/migrations/migration-instructions-for-any-git-repository-to-githubcom.md index 96a95a81e57e..ef134c62f572 100644 --- a/data/reusables/migrations/migration-instructions-for-any-git-repository-to-githubcom.md +++ b/data/reusables/migrations/migration-instructions-for-any-git-repository-to-githubcom.md @@ -1 +1 @@ -If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "[Migrations from any Git repository to {% data variables.product.prodname_dotcom_the_website %}](#any-git-repository-to-githubcom)." +If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see [Migrations from any Git repository to {% data variables.product.prodname_dotcom_the_website %}](#any-git-repository-to-githubcom). diff --git a/data/reusables/models/steps-to-open-model-playground.md b/data/reusables/models/steps-to-open-model-playground.md new file mode 100644 index 000000000000..1fe45a6265b8 --- /dev/null +++ b/data/reusables/models/steps-to-open-model-playground.md @@ -0,0 +1,5 @@ +1. Go to [github.com/marketplace/models](https://github.com/marketplace/models). +1. Click **Model: Select a Model** at the top left of the page. +1. Choose a model from the dropdown menu. + + Alternatively, in the dropdown menu, click **View all models**, click a model in the Marketplace, then click **{% octicon "command-palette" aria-hidden="true" %} Playground**. diff --git a/data/reusables/notifications-v2/notifications-inbox-required-setting.md b/data/reusables/notifications-v2/notifications-inbox-required-setting.md index 113375a40d72..18f2aeb711a9 100644 --- a/data/reusables/notifications-v2/notifications-inbox-required-setting.md +++ b/data/reusables/notifications-v2/notifications-inbox-required-setting.md @@ -1 +1 @@ -To use the notifications inbox on {% data variables.product.prodname_dotcom %} and {% data variables.product.prodname_mobile %}, you must enable web and mobile notifications in your notification settings. +To use the notifications inbox on {% data variables.product.prodname_dotcom %} and {% data variables.product.prodname_mobile %}, you must enable notifications for both **Email** and **On {% data variables.product.github %}** in your notification settings. diff --git a/data/reusables/notifications/email-restrictions-verification.md b/data/reusables/notifications/email-restrictions-verification.md index 7f7827fb92fb..7990b158f53e 100644 --- a/data/reusables/notifications/email-restrictions-verification.md +++ b/data/reusables/notifications/email-restrictions-verification.md @@ -1 +1 @@ -{% ifversion fpt or ghec %}To continue receiving email notifications after you enable restrictions, members must verify any email addresses within domains that you verify or approve. For more information, see "[AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/verifying-your-email-address)."{% endif %} +{% ifversion fpt or ghec %}To continue receiving email notifications after you enable restrictions, members must verify any email addresses within domains that you verify or approve. For more information, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/verifying-your-email-address).{% endif %} diff --git a/data/reusables/notifications/shared_state.md b/data/reusables/notifications/shared_state.md index 0af38705ab1a..2ab30afab949 100644 --- a/data/reusables/notifications/shared_state.md +++ b/data/reusables/notifications/shared_state.md @@ -1,2 +1,2 @@ > [!TIP] -> If you receive both web and email notifications, you can automatically sync the read or unread status of the notification so that web notifications are automatically marked as read once you've read the corresponding email notification. To enable this sync, your email client must be able to view images from {% ifversion fpt or ghec %}`notifications@github.com`{% else %}the `no-reply` email address {% ifversion ghes %}for {% data variables.location.product_location %}, which your site administrator configures{% endif %}{% endif %}. +> If you receive notifications both via email and on {% data variables.product.github %}, you can automatically sync the read or unread status of the notification so that notifications on {% data variables.product.github %} are automatically marked as read once you've read the corresponding email notification. To enable this sync, your email client must be able to view images from {% ifversion fpt or ghec %}`notifications@github.com`{% else %}the `no-reply` email address {% ifversion ghes %}for {% data variables.location.product_location %}, which your site administrator configures{% endif %}{% endif %}. diff --git a/data/reusables/notifications/vulnerable-dependency-notification-enable.md b/data/reusables/notifications/vulnerable-dependency-notification-enable.md index 719a974e015f..08d8a2cdcde1 100644 --- a/data/reusables/notifications/vulnerable-dependency-notification-enable.md +++ b/data/reusables/notifications/vulnerable-dependency-notification-enable.md @@ -1 +1 @@ -To receive notifications about {% data variables.product.prodname_dependabot_alerts %} on repositories, you need to watch these repositories, and subscribe to receive "All Activity" notifications or configure custom settings to include "Security alerts." For more information, see "[AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)." +To receive notifications about {% data variables.product.prodname_dependabot_alerts %} on repositories, you need to watch these repositories, and subscribe to receive "All Activity" notifications or configure custom settings to include "Security alerts." For more information, see [AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository). diff --git a/data/reusables/notifications/vulnerable-dependency-notification-options.md b/data/reusables/notifications/vulnerable-dependency-notification-options.md index c0bbb958275b..b70c6fdb95c5 100644 --- a/data/reusables/notifications/vulnerable-dependency-notification-options.md +++ b/data/reusables/notifications/vulnerable-dependency-notification-options.md @@ -3,7 +3,7 @@ * In your inbox, as web notifications. A web notification is sent when {% data variables.product.prodname_dependabot %} is enabled for a repository, when a new manifest file is committed to the repository, and when a new vulnerability with a critical or high severity is found (**On {% data variables.product.prodname_dotcom %}** option). * By email. An email is sent when {% data variables.product.prodname_dependabot %} is enabled for a repository, when a new manifest file is committed to the repository, and when a new vulnerability with a critical or high severity is found (**Email** option). * On the command line. Warnings are displayed as callbacks when you push to repositories with any insecure dependencies (**CLI** option). -* On {% data variables.product.prodname_mobile %}, as web notifications. For more information, see "[AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#enabling-push-notifications-with-github-mobile)." +* On {% data variables.product.prodname_mobile %}, as web notifications. For more information, see [AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#enabling-push-notifications-with-github-mobile). > [!NOTE] > The email and web/{% data variables.product.prodname_mobile %} notifications are: diff --git a/data/reusables/notifications/watch-settings.md b/data/reusables/notifications/watch-settings.md index cbfecfb313e8..a55b7e825609 100644 --- a/data/reusables/notifications/watch-settings.md +++ b/data/reusables/notifications/watch-settings.md @@ -1 +1 @@ -For more information about setting up notification preferences, see "[AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)" and "[Configuring your watch settings for an individual repository](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)." +For more information about setting up notification preferences, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) and [Configuring your watch settings for an individual repository](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository). diff --git a/data/reusables/organizations/add-extension-to-cert.md b/data/reusables/organizations/add-extension-to-cert.md index 5a7a7d3d9f7e..0ce28b8abae5 100644 --- a/data/reusables/organizations/add-extension-to-cert.md +++ b/data/reusables/organizations/add-extension-to-cert.md @@ -1 +1 @@ -When you issue each client certificate, you must include an extension that specifies which {% data variables.product.product_name %} user the certificate is for. For more information, see "[AUTOTITLE](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)." +When you issue each client certificate, you must include an extension that specifies which {% data variables.product.product_name %} user the certificate is for. For more information, see [AUTOTITLE](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities). diff --git a/data/reusables/organizations/additional-permissions.md b/data/reusables/organizations/additional-permissions.md index 998fe0a25ef6..a25e13f98399 100644 --- a/data/reusables/organizations/additional-permissions.md +++ b/data/reusables/organizations/additional-permissions.md @@ -1,5 +1,3 @@ -{% ifversion discussions %} - ### Discussions * Create a discussion category @@ -9,8 +7,7 @@ * Hide or unhide discussion comments * Convert issues to discussions -For more information, see "[AUTOTITLE](/discussions)." -{% endif %} +For more information, see [AUTOTITLE](/discussions). ### Issue and Pull Requests @@ -36,7 +33,7 @@ For more information, see "[AUTOTITLE](/discussions)." * Manage wiki settings * Manage project settings * Manage pull request merging settings -* Manage {% data variables.product.prodname_pages %} settings (see "[AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)") +* Manage {% data variables.product.prodname_pages %} settings (see [AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)) * Manage webhooks * Manage deploy keys * Edit repository metadata @@ -50,9 +47,7 @@ For more information, see "[AUTOTITLE](/discussions)." * Create protected tags * Delete protected tags * Bypass branch protections -{%- ifversion edit-repository-rules %} * Edit repository rules -{%- endif %} ### Security diff --git a/data/reusables/organizations/api-insights-learn-about.md b/data/reusables/organizations/api-insights-learn-about.md index 50f1d086c1db..11de335d599a 100644 --- a/data/reusables/organizations/api-insights-learn-about.md +++ b/data/reusables/organizations/api-insights-learn-about.md @@ -1 +1 @@ -{% ifversion api-insights %}To learn about viewing an organization's API activity, including which requests exceeded primary rate limits, see "[AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/viewing-api-insights-in-your-organization)."{% endif %} +{% ifversion api-insights %}To learn about viewing an organization's API activity, including which requests exceeded primary rate limits, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/viewing-api-insights-in-your-organization).{% endif %} diff --git a/data/reusables/organizations/blocking-a-user.md b/data/reusables/organizations/blocking-a-user.md index 8a698a354f40..81287ce08ccb 100644 --- a/data/reusables/organizations/blocking-a-user.md +++ b/data/reusables/organizations/blocking-a-user.md @@ -1 +1 @@ -When you block a user, you can choose to block them indefinitely or for a specific amount of time. If you block someone for a specific amount of time, they are automatically unblocked after the chosen time expires. If you block someone indefinitely, you can unblock them manually at any time. For more information, see "[AUTOTITLE](/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization)." +When you block a user, you can choose to block them indefinitely or for a specific amount of time. If you block someone for a specific amount of time, they are automatically unblocked after the chosen time expires. If you block someone indefinitely, you can unblock them manually at any time. For more information, see [AUTOTITLE](/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization). diff --git a/data/reusables/organizations/child-team-inherits-permissions.md b/data/reusables/organizations/child-team-inherits-permissions.md index 5e926fa94eb6..96dae7a42400 100644 --- a/data/reusables/organizations/child-team-inherits-permissions.md +++ b/data/reusables/organizations/child-team-inherits-permissions.md @@ -1 +1 @@ -Child teams inherit the access permissions of the parent team. For more information on team hierarchies, see "[AUTOTITLE](/organizations/organizing-members-into-teams/about-teams#nested-teams)." +Child teams inherit the access permissions of the parent team. For more information on team hierarchies, see [AUTOTITLE](/organizations/organizing-members-into-teams/about-teams#nested-teams). diff --git a/data/reusables/organizations/create-team-choose-parent.md b/data/reusables/organizations/create-team-choose-parent.md index 35867678d5ef..3c0fd8aa9c71 100644 --- a/data/reusables/organizations/create-team-choose-parent.md +++ b/data/reusables/organizations/create-team-choose-parent.md @@ -1 +1 @@ -1. Optionally, if you're creating a child team, under "Parent team", select the **Select a parent team** dropdown menu and click a parent team. For more information about child teams, see "[AUTOTITLE](/organizations/organizing-members-into-teams/about-teams#nested-teams)." +1. Optionally, if you're creating a child team, under "Parent team", select the **Select a parent team** dropdown menu and click a parent team. For more information about child teams, see [AUTOTITLE](/organizations/organizing-members-into-teams/about-teams#nested-teams). diff --git a/data/reusables/organizations/custom-org-roles-create-new-step.md b/data/reusables/organizations/custom-org-roles-create-new-step.md index c1bb0b5d9ba6..89de2a03bb03 100644 --- a/data/reusables/organizations/custom-org-roles-create-new-step.md +++ b/data/reusables/organizations/custom-org-roles-create-new-step.md @@ -3,12 +3,12 @@ 1. Under "Add permissions", click the **Organization** or **Repository** tab to select the type of permissions you want to add to the custom role. * To add permissions for the organization, click the **Organization** tab, then select the dropdown menu and click the permissions you want your custom role to include. - * To choose a base repository role to inherit, click the **Repository** tab, then select the dropdown menu and click the base role you want to include in the custom role. For more information about the available base repository roles, see "[Base roles for repository access](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles#base-roles-for-repository-access)." + * To choose a base repository role to inherit, click the **Repository** tab, then select the dropdown menu and click the base role you want to include in the custom role. For more information about the available base repository roles, see [Base roles for repository access](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles#base-roles-for-repository-access). - Once you've selected a base repository role, you can add additional permissions to the custom role. For more information about the available permissions, see "[Additional permissions for repository access](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles#additional-permissions-for-repository-access)." + Once you've selected a base repository role, you can add additional permissions to the custom role. For more information about the available permissions, see [Additional permissions for repository access](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles#additional-permissions-for-repository-access). >[!NOTE] Adding a repository role and permissions to a custom organization role is currently in {% data variables.release-phases.public_preview %} and subject to change. {% else %} -1. Under "Add permissions", click the text field, then select the permissions you want to add to the custom role. For more information about the available permissions, see "[AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles#additional-permissions-for-custom-roles)."{% endif %} +1. Under "Add permissions", click the text field, then select the permissions you want to add to the custom role. For more information about the available permissions, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/about-custom-organization-roles#additional-permissions-for-custom-roles).{% endif %} 1. Click **Create role**. diff --git a/data/reusables/organizations/data_saved_for_reinstating_a_former_org_member.md b/data/reusables/organizations/data_saved_for_reinstating_a_former_org_member.md index 97e74e215c40..090bffd7957b 100644 --- a/data/reusables/organizations/data_saved_for_reinstating_a_former_org_member.md +++ b/data/reusables/organizations/data_saved_for_reinstating_a_former_org_member.md @@ -1,2 +1,2 @@ > [!NOTE] -> When you remove a user from your organization, their membership data is saved for three months. You can restore their data, or any private forks they owned of your organization's repositories, if you invite the user to rejoin the organization within that time frame. For more information, see "[AUTOTITLE](/organizations/managing-membership-in-your-organization/reinstating-a-former-member-of-your-organization)." +> When you remove a user from your organization, their membership data is saved for three months. You can restore their data, or any private forks they owned of your organization's repositories, if you invite the user to rejoin the organization within that time frame. For more information, see [AUTOTITLE](/organizations/managing-membership-in-your-organization/reinstating-a-former-member-of-your-organization). diff --git a/data/reusables/organizations/new-org-permissions-more-info.md b/data/reusables/organizations/new-org-permissions-more-info.md index b9c98a362b99..6cca95d2045b 100644 --- a/data/reusables/organizations/new-org-permissions-more-info.md +++ b/data/reusables/organizations/new-org-permissions-more-info.md @@ -1 +1 @@ -For more information, see "[AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization)." +For more information, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization). diff --git a/data/reusables/organizations/new-repo-permissions-more-info.md b/data/reusables/organizations/new-repo-permissions-more-info.md index 7575310e7d57..e1a0b7657d61 100644 --- a/data/reusables/organizations/new-repo-permissions-more-info.md +++ b/data/reusables/organizations/new-repo-permissions-more-info.md @@ -1 +1 @@ -For more information, see "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)." +For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization). diff --git a/data/reusables/organizations/organization-rulesets-targeting-repositories-step.md b/data/reusables/organizations/organization-rulesets-targeting-repositories-step.md index 17e02f00ecfd..d80dd5345902 100644 --- a/data/reusables/organizations/organization-rulesets-targeting-repositories-step.md +++ b/data/reusables/organizations/organization-rulesets-targeting-repositories-step.md @@ -2,11 +2,11 @@ With your ruleset, you can choose to target all repositories in your organizatio {% ifversion repository-properties %} -For more information about custom properties, see "[AUTOTITLE](/organizations/managing-organization-settings/managing-custom-properties-for-repositories-in-your-organization)." +For more information about custom properties, see [AUTOTITLE](/organizations/managing-organization-settings/managing-custom-properties-for-repositories-in-your-organization). {% endif %} -If a repository is targeted by a ruleset created at the organization level, only owners of the organization can edit the ruleset. However, people with admin access to the repository, or with a custom role including the "edit repository rules" permission, can create additional rulesets at the repository level. The rules in these rulesets will be aggregated with the rules defined at the organization level. The result is that creating a new ruleset can make the rules targeting a branch or tag more restrictive, but never less restrictive. For more information on creating rulesets, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets)." +If a repository is targeted by a ruleset created at the organization level, only owners of the organization can edit the ruleset. However, people with admin access to the repository, or with a custom role including the "edit repository rules" permission, can create additional rulesets at the repository level. The rules in these rulesets will be aggregated with the rules defined at the organization level. The result is that creating a new ruleset can make the rules targeting a branch or tag more restrictive, but never less restrictive. For more information on creating rulesets, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets). #### Targeting all repositories in your organization @@ -16,7 +16,7 @@ To target all repositories in your organization, in the "Target repositories" se 1. To target a dynamic list of repositories in your organization by naming convention, in the "Target repositories" section, select **{% octicon "goal" aria-hidden="true" %} Target: REPOSITORIES**, then click **Dynamic list of repositories**. 1. To begin defining a targeting pattern, in the "Targeting criteria" section, select **Add a target** {% octicon "triangle-down" aria-hidden="true" %}, then click **Include by pattern** or **Exclude by pattern**. -1. In the modal dialog that appears, enter a repository naming pattern using `fnmatch` syntax, then click **Add Inclusion pattern** or **Add Exclusion pattern**. For more information on `fnmatch` syntax, see "[Using `fnmatch` syntax](#using-fnmatch-syntax)." +1. In the modal dialog that appears, enter a repository naming pattern using `fnmatch` syntax, then click **Add Inclusion pattern** or **Add Exclusion pattern**. For more information on `fnmatch` syntax, see [Using `fnmatch` syntax](#using-fnmatch-syntax). > [!NOTE] > You can add multiple targeting criteria to the same ruleset. For example, you could include any repositories matching the pattern `*cat*`, then specifically exclude a repository matching the pattern `not-a-cat`. @@ -27,7 +27,7 @@ To target all repositories in your organization, in the "Target repositories" se #### Targeting repositories by properties in your organization -You can target repositories in your organization by custom properties. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/managing-custom-properties-for-repositories-in-your-organization)." +You can target repositories in your organization by custom properties. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/managing-custom-properties-for-repositories-in-your-organization). 1. To target a dynamic list of repositories in your organization by properties, in the "Target repositories" section, select **{% octicon "goal" aria-hidden="true" %} Target: REPOSITORIES**, then click **Dynamic list by property**. 1. To add a target, in the "Targeting criteria" section, select **Add a target** {% octicon "triangle-down" aria-hidden="true" %}, then click **Include by property** or **Exclude by property**. diff --git a/data/reusables/organizations/precedence-for-different-levels.md b/data/reusables/organizations/precedence-for-different-levels.md index a6047d830830..c611f1473578 100644 --- a/data/reusables/organizations/precedence-for-different-levels.md +++ b/data/reusables/organizations/precedence-for-different-levels.md @@ -3,7 +3,7 @@ Roles and permissions are additive. If a person is given different levels of acc {% data reusables.organizations.mixed-roles-warning %} To resolve conflicting access, you can adjust your organization's base permissions or the team's access, or edit the custom role. For more information, see: -* "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/setting-base-permissions-for-an-organization)" -* "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository)" -* "[Editing a repository role](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization#editing-a-repository-role)"{% ifversion custom-org-roles %} -* "[AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-organization-roles#editing-a-custom-role)"{% endif %} +* [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/setting-base-permissions-for-an-organization) +* [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository) +* [Editing a repository role](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-custom-repository-roles-for-an-organization#editing-a-repository-role){% ifversion custom-org-roles %} +* [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-organization-roles#editing-a-custom-role){% endif %} diff --git a/data/reusables/organizations/repo-creation-constants.md b/data/reusables/organizations/repo-creation-constants.md index 576aca90e93c..e4971d40bf41 100644 --- a/data/reusables/organizations/repo-creation-constants.md +++ b/data/reusables/organizations/repo-creation-constants.md @@ -1 +1 @@ -Organization owners can always create any type of repository, and outside collaborators can never create any type of repository. For more information, see "[AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." +Organization owners can always create any type of repository, and outside collaborators can never create any type of repository. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility). diff --git a/data/reusables/organizations/restricted-app-access-requests.md b/data/reusables/organizations/restricted-app-access-requests.md index 9db590b7b48f..2ce7f2513aa5 100644 --- a/data/reusables/organizations/restricted-app-access-requests.md +++ b/data/reusables/organizations/restricted-app-access-requests.md @@ -1 +1 @@ -Organization owners can choose whether to allow outside collaborators to request access for unapproved {% data variables.product.prodname_oauth_apps %} and {% data variables.product.prodname_github_apps %}. For more information, see "[AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/limiting-oauth-app-and-github-app-access-requests)." +Organization owners can choose whether to allow outside collaborators to request access for unapproved {% data variables.product.prodname_oauth_apps %} and {% data variables.product.prodname_github_apps %}. For more information, see [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/limiting-oauth-app-and-github-app-access-requests). diff --git a/data/reusables/organizations/security-overview-feature-specific-page.md b/data/reusables/organizations/security-overview-feature-specific-page.md index 14cab09ebd65..9eefe104f540 100644 --- a/data/reusables/organizations/security-overview-feature-specific-page.md +++ b/data/reusables/organizations/security-overview-feature-specific-page.md @@ -1 +1 @@ -1. Optionally, use the sidebar on the left to explore alerts for a specific security feature in greater detail. On each page, you can use filters that are specific to that feature to refine your search. For more information about the available qualifiers, see "[AUTOTITLE](/code-security/security-overview/filtering-alerts-in-security-overview)." +1. Optionally, use the sidebar on the left to explore alerts for a specific security feature in greater detail. On each page, you can use filters that are specific to that feature to refine your search. For more information about the available qualifiers, see [AUTOTITLE](/code-security/security-overview/filtering-alerts-in-security-overview). diff --git a/data/reusables/organizations/team-api.md b/data/reusables/organizations/team-api.md index 0b9b41e9ae87..ab5a6a858418 100644 --- a/data/reusables/organizations/team-api.md +++ b/data/reusables/organizations/team-api.md @@ -1,3 +1,3 @@ These endpoints are only available to authenticated members of the team's [organization](/rest/orgs). OAuth access tokens require the `read:org` [scope](/apps/oauth-apps/building-oauth-apps/scopes-for-oauth-apps). {% data variables.product.prodname_dotcom %} generates the team's `slug` from the team `name`. -Where `pull` and `push` permissions are accepted, these will map to the **Read** and **Write** roles for an organization repository. For more information about repository roles, see "[AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)." +Where `pull` and `push` permissions are accepted, these will map to the **Read** and **Write** roles for an organization repository. For more information about repository roles, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization). diff --git a/data/reusables/organizations/team-discussions-api-deprecation.md b/data/reusables/organizations/team-discussions-api-deprecation.md index ea19b50f1e4e..3275cc2bde06 100644 --- a/data/reusables/organizations/team-discussions-api-deprecation.md +++ b/data/reusables/organizations/team-discussions-api-deprecation.md @@ -1,11 +1,11 @@ {% ifversion ghes %} > [!NOTE] -> The team discussions and team discussion comments endpoints are {% data variables.release-phases.closing_down %} in {% data variables.product.prodname_ghe_server %} 3.13 in favor of {% data variables.product.prodname_discussions %}. For more information about {% data variables.product.prodname_discussions %}, see "[AUTOTITLE](/discussions)." +> The team discussions and team discussion comments endpoints are {% data variables.release-phases.closing_down %} in {% data variables.product.prodname_ghe_server %} 3.13 in favor of {% data variables.product.prodname_discussions %}. For more information about {% data variables.product.prodname_discussions %}, see [AUTOTITLE](/discussions). {% elsif fpt or ghec %} > [!NOTE] -> The team discussions and team discussion comments endpoints are {% data variables.release-phases.closing_down %} on 2023-11-28 in favor of {% data variables.product.prodname_discussions %}. For more information about {% data variables.product.prodname_discussions %}, see "[AUTOTITLE](/discussions)." +> The team discussions and team discussion comments endpoints are {% data variables.release-phases.closing_down %} on 2023-11-28 in favor of {% data variables.product.prodname_discussions %}. For more information about {% data variables.product.prodname_discussions %}, see [AUTOTITLE](/discussions). {% endif %} diff --git a/data/reusables/organizations/team-discussions-deprecation.md b/data/reusables/organizations/team-discussions-deprecation.md index 2219cfec17f1..7d37c3c733d3 100644 --- a/data/reusables/organizations/team-discussions-deprecation.md +++ b/data/reusables/organizations/team-discussions-deprecation.md @@ -3,13 +3,13 @@ > [!NOTE] > Team Discussions are {% data variables.release-phases.retired %}. You can read more about this on the [GitHub Blog](https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/). > -> You can use {% data variables.product.prodname_discussions %} to create organization-level discussions. For more information about {% data variables.product.prodname_discussions %}, see "[AUTOTITLE](/discussions)." +> You can use {% data variables.product.prodname_discussions %} to create organization-level discussions. For more information about {% data variables.product.prodname_discussions %}, see [AUTOTITLE](/discussions). {% elsif ghes %} > [!NOTE] > Team Discussions are now {% data variables.release-phases.retired %}. You can read more about this on the [GitHub Blog](https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/). > -> You can use {% data variables.product.prodname_discussions %} to create organization-level discussions. For more information about{% data variables.product.prodname_discussions %}, see "[AUTOTITLE](/discussions)." +> You can use {% data variables.product.prodname_discussions %} to create organization-level discussions. For more information about{% data variables.product.prodname_discussions %}, see [AUTOTITLE](/discussions). {% endif %} diff --git a/data/reusables/organizations/team-discussions-migration.md b/data/reusables/organizations/team-discussions-migration.md index dc4ccd90647a..6af6bb7a1627 100644 --- a/data/reusables/organizations/team-discussions-migration.md +++ b/data/reusables/organizations/team-discussions-migration.md @@ -2,4 +2,4 @@ > [!NOTE] > Team discussions are {% data variables.release-phases.closing_down %} in {% data variables.product.prodname_ghe_server %} 3.13 in favor of {% data variables.product.prodname_discussions %}. You can transfer your existing team discussions to a repository's discussions by using a migration tool that allows team admins to migrate both public and private team discussions. Click the "Transfer" button in the banner at the top of your team discussions page, then choose the repository in your organization that you want to migrate the discussions to. > -> For more information about {% data variables.product.prodname_discussions %}, see "[AUTOTITLE](/discussions)." +> For more information about {% data variables.product.prodname_discussions %}, see [AUTOTITLE](/discussions). diff --git a/data/reusables/organizations/team-synchronization.md b/data/reusables/organizations/team-synchronization.md index 72677402e717..1cf827a3d071 100644 --- a/data/reusables/organizations/team-synchronization.md +++ b/data/reusables/organizations/team-synchronization.md @@ -1,3 +1,3 @@ {% ifversion fpt or ghec %} -{% ifversion fpt %}Organizations that use {% data variables.product.prodname_ghe_cloud %}{% else %}You{% endif %} can use team synchronization to automatically add and remove organization members to teams through an identity provider. For more information, see "[Synchronizing a team with an identity provider group]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +{% ifversion fpt %}Organizations that use {% data variables.product.prodname_ghe_cloud %}{% else %}You{% endif %} can use team synchronization to automatically add and remove organization members to teams through an identity provider. For more information, see [Synchronizing a team with an identity provider group]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} {% endif %} diff --git a/data/reusables/package_registry/about-packaging-and-actions.md b/data/reusables/package_registry/about-packaging-and-actions.md index b359bdfad755..866ab0372302 100644 --- a/data/reusables/package_registry/about-packaging-and-actions.md +++ b/data/reusables/package_registry/about-packaging-and-actions.md @@ -17,11 +17,11 @@ This will let you run the code in the pull request on your machine, which can he In addition to uploading packaging artifacts for testing in a continuous integration workflow, you can create workflows that build your project and publish packages to a package registry. * **Publish packages to {% data variables.product.prodname_registry %}** - {% data variables.product.prodname_registry %} can act as a package hosting service for many types of packages. You can choose to share your packages with all of {% data variables.product.prodname_dotcom %}, or private packages to share with collaborators or an organization. For more information, see "[AUTOTITLE](/packages/learn-github-packages/introduction-to-github-packages)." + {% data variables.product.prodname_registry %} can act as a package hosting service for many types of packages. You can choose to share your packages with all of {% data variables.product.prodname_dotcom %}, or private packages to share with collaborators or an organization. For more information, see [AUTOTITLE](/packages/learn-github-packages/introduction-to-github-packages). You may want to publish packages to {% data variables.product.prodname_registry %} on every push into the default branch. This will allow developers on your project to always be able to run and test the latest build from the default branch easily, by installing it from {% data variables.product.prodname_registry %}. -* **Publish packages to a package registry** +* **Publish packages to a package registry:** For many projects, publishing to a package registry is performed whenever a new version of a project is released. For example, a project that produces a JAR file may upload new releases to the Maven Central repository. Or, a .NET project may produce a nuget package and upload it to the NuGet Gallery. - You can automate this by creating a workflow that publishes packages to a package registry on every release creation. For more information, see "[AUTOTITLE](/repositories/releasing-projects-on-github/managing-releases-in-a-repository)." + You can automate this by creating a workflow that publishes packages to a package registry on every release creation. For more information, see [AUTOTITLE](/repositories/releasing-projects-on-github/managing-releases-in-a-repository). diff --git a/data/reusables/package_registry/actions-configuration.md b/data/reusables/package_registry/actions-configuration.md index f9352a018791..e20bb52f83fc 100644 --- a/data/reusables/package_registry/actions-configuration.md +++ b/data/reusables/package_registry/actions-configuration.md @@ -1 +1 @@ -Configuration steps vary by package client. For general information about configuring a workflow for {% data variables.product.prodname_actions %}, see "[AUTOTITLE](/actions/using-workflows)." +Configuration steps vary by package client. For general information about configuring a workflow for {% data variables.product.prodname_actions %}, see [AUTOTITLE](/actions/using-workflows). diff --git a/data/reusables/package_registry/add-npmrc-to-repo-step.md b/data/reusables/package_registry/add-npmrc-to-repo-step.md index 1c03025bd665..7ce88b216645 100644 --- a/data/reusables/package_registry/add-npmrc-to-repo-step.md +++ b/data/reusables/package_registry/add-npmrc-to-repo-step.md @@ -1 +1 @@ -1. Add the _.npmrc_ file to the repository where {% data variables.product.prodname_registry %} can find your project. For more information, see "[AUTOTITLE](/repositories/working-with-files/managing-files/adding-a-file-to-a-repository)." +1. Add the _.npmrc_ file to the repository where {% data variables.product.prodname_registry %} can find your project. For more information, see [AUTOTITLE](/repositories/working-with-files/managing-files/adding-a-file-to-a-repository). diff --git a/data/reusables/package_registry/admins-can-configure-package-types.md b/data/reusables/package_registry/admins-can-configure-package-types.md index 3921c20a035c..17ffa5f584a3 100644 --- a/data/reusables/package_registry/admins-can-configure-package-types.md +++ b/data/reusables/package_registry/admins-can-configure-package-types.md @@ -1,6 +1,6 @@ {% ifversion ghes %} > [!NOTE] -> This package type may not be available for your instance, because site administrators can enable or disable each supported package type. For more information, see "[AUTOTITLE](/admin/packages/configuring-package-ecosystem-support-for-your-enterprise)." +> This package type may not be available for your instance, because site administrators can enable or disable each supported package type. For more information, see [AUTOTITLE](/admin/packages/configuring-package-ecosystem-support-for-your-enterprise). {% endif %} diff --git a/data/reusables/package_registry/authenticate-packages-github-token.md b/data/reusables/package_registry/authenticate-packages-github-token.md index b8731067105c..6bbdc1712fa5 100644 --- a/data/reusables/package_registry/authenticate-packages-github-token.md +++ b/data/reusables/package_registry/authenticate-packages-github-token.md @@ -1 +1 @@ -For more information about `GITHUB_TOKEN` used in {% data variables.product.prodname_actions %} workflows, see "[AUTOTITLE](/actions/security-guides/automatic-token-authentication#using-the-github_token-in-a-workflow)." +For more information about `GITHUB_TOKEN` used in {% data variables.product.prodname_actions %} workflows, see [AUTOTITLE](/actions/security-guides/automatic-token-authentication#using-the-github_token-in-a-workflow). diff --git a/data/reusables/package_registry/authenticate-packages.md b/data/reusables/package_registry/authenticate-packages.md index c15920beb25b..1450842775c8 100644 --- a/data/reusables/package_registry/authenticate-packages.md +++ b/data/reusables/package_registry/authenticate-packages.md @@ -2,8 +2,8 @@ You need an access token to publish, install, and delete private, internal, and public packages. -You can use a {% data variables.product.pat_v1 %} to authenticate to {% data variables.product.prodname_registry %} or the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API. When you create a {% data variables.product.pat_v1 %}, you can assign the token different scopes depending on your needs. For more information about packages-related scopes for a {% data variables.product.pat_v1 %}, see "[AUTOTITLE](/packages/learn-github-packages/about-permissions-for-github-packages#about-scopes-and-permissions-for-package-registries)." +You can use a {% data variables.product.pat_v1 %} to authenticate to {% data variables.product.prodname_registry %} or the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API. When you create a {% data variables.product.pat_v1 %}, you can assign the token different scopes depending on your needs. For more information about packages-related scopes for a {% data variables.product.pat_v1 %}, see [AUTOTITLE](/packages/learn-github-packages/about-permissions-for-github-packages#about-scopes-and-permissions-for-package-registries). To authenticate to a {% data variables.product.prodname_registry %} registry within a {% data variables.product.prodname_actions %} workflow, you can use: * `GITHUB_TOKEN` to publish packages associated with the workflow repository. -* a {% data variables.product.pat_v1 %} with at least `read:packages` scope to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). +* A {% data variables.product.pat_v1 %} with at least `read:packages` scope to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). diff --git a/data/reusables/package_registry/authenticate-step.md b/data/reusables/package_registry/authenticate-step.md index 72c86ff875bc..6a26474201b7 100644 --- a/data/reusables/package_registry/authenticate-step.md +++ b/data/reusables/package_registry/authenticate-step.md @@ -1 +1 @@ -1. Authenticate to {% data variables.product.prodname_registry %}. For more information, see "[Authenticating to {% data variables.product.prodname_registry %}](#authenticating-to-github-packages)." +1. Authenticate to {% data variables.product.prodname_registry %}. For more information, see [Authenticating to {% data variables.product.prodname_registry %}](#authenticating-to-github-packages). diff --git a/data/reusables/package_registry/authenticate-to-container-registry-steps.md b/data/reusables/package_registry/authenticate-to-container-registry-steps.md index 63dfa8547049..c1be30d52a4c 100644 --- a/data/reusables/package_registry/authenticate-to-container-registry-steps.md +++ b/data/reusables/package_registry/authenticate-to-container-registry-steps.md @@ -3,13 +3,13 @@ 1. Create a new {% data variables.product.pat_v1 %} with the appropriate scopes for the tasks you want to accomplish. If your organization requires SSO, you must enable SSO for your new token. > [!NOTE] - > By default, when you select the `write:packages` scope for your {% data variables.product.pat_v1 %} in the user interface, the `repo` scope will also be selected. The `repo` scope offers unnecessary and broad access, which we recommend you avoid using for {% data variables.product.prodname_actions %} workflows in particular. For more information, see "[AUTOTITLE](/actions/security-guides/security-hardening-for-github-actions#considering-cross-repository-access)." As a workaround, you can select just the `write:packages` scope for your {% data variables.product.pat_v1 %} in the user interface with this url: `https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/settings/tokens/new?scopes=write:packages`. + > By default, when you select the `write:packages` scope for your {% data variables.product.pat_v1 %} in the user interface, the `repo` scope will also be selected. The `repo` scope offers unnecessary and broad access, which we recommend you avoid using for {% data variables.product.prodname_actions %} workflows in particular. For more information, see [AUTOTITLE](/actions/security-guides/security-hardening-for-github-actions#considering-cross-repository-access). As a workaround, you can select just the `write:packages` scope for your {% data variables.product.pat_v1 %} in the user interface with this url: `https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/settings/tokens/new?scopes=write:packages`. * Select the `read:packages` scope to download container images and read their metadata. * Select the `write:packages` scope to download and upload container images and read and write their metadata. * Select the `delete:packages` scope to delete container images. - For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." + For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). 1. Save your {% data variables.product.pat_v1 %}. We recommend saving your token as an environment variable. diff --git a/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md b/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md index 536fc72468c8..36b87593a946 100644 --- a/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md +++ b/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md @@ -1,7 +1,7 @@ -For registries that support granular permissions, if your {% data variables.product.prodname_actions %} workflow is using a {% data variables.product.pat_generic %} to authenticate to a registry, we highly recommend you update your workflow to use the `GITHUB_TOKEN`. For guidance on updating your workflows that authenticate to a registry with a {% data variables.product.pat_generic %}, see "[AUTOTITLE](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-a-registry-using-a-personal-access-token)." +For registries that support granular permissions, if your {% data variables.product.prodname_actions %} workflow is using a {% data variables.product.pat_generic %} to authenticate to a registry, we highly recommend you update your workflow to use the `GITHUB_TOKEN`. For guidance on updating your workflows that authenticate to a registry with a {% data variables.product.pat_generic %}, see [AUTOTITLE](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-a-registry-using-a-personal-access-token). {% data reusables.package_registry.delete-with-github-token-using-api-beta %} You can use a `GITHUB_TOKEN` in a {% data variables.product.prodname_actions %} workflow to delete or restore a package using the REST API, if the token has `admin` permission to the package. Repositories that publish packages using a workflow, and repositories that you have explicitly connected to packages, are automatically granted `admin` permission to packages in the repository. -For more information about the `GITHUB_TOKEN`, see "[AUTOTITLE](/actions/security-guides/automatic-token-authentication#using-the-github_token-in-a-workflow)." For more information about the best practices when using a registry in actions, see "[AUTOTITLE](/actions/security-guides/security-hardening-for-github-actions#considering-cross-repository-access)." +For more information about the `GITHUB_TOKEN`, see [AUTOTITLE](/actions/security-guides/automatic-token-authentication#using-the-github_token-in-a-workflow). For more information about the best practices when using a registry in actions, see [AUTOTITLE](/actions/security-guides/security-hardening-for-github-actions#considering-cross-repository-access). diff --git a/data/reusables/package_registry/auto-inherit-permissions-note.md b/data/reusables/package_registry/auto-inherit-permissions-note.md index 0765c33c07e1..8e587d7978aa 100644 --- a/data/reusables/package_registry/auto-inherit-permissions-note.md +++ b/data/reusables/package_registry/auto-inherit-permissions-note.md @@ -1,6 +1,6 @@ {% ifversion packages-inherit-permissions %} > [!NOTE] -> If you publish a package that is linked to a repository, the package automatically inherits the access permissions of the linked repository, and {% data variables.product.prodname_actions %} workflows in the linked repository automatically get access to the package, unless your organization has disabled automatic inheritance of access permissions. For more information, see "[AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#about-inheritance-of-access-permissions)." +> If you publish a package that is linked to a repository, the package automatically inherits the access permissions of the linked repository, and {% data variables.product.prodname_actions %} workflows in the linked repository automatically get access to the package, unless your organization has disabled automatic inheritance of access permissions. For more information, see [AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#about-inheritance-of-access-permissions). {% endif %} diff --git a/data/reusables/package_registry/container-registry-ghes-beta.md b/data/reusables/package_registry/container-registry-ghes-beta.md index 345816a3d523..15676af31215 100644 --- a/data/reusables/package_registry/container-registry-ghes-beta.md +++ b/data/reusables/package_registry/container-registry-ghes-beta.md @@ -2,6 +2,6 @@ >[!NOTE] {% data variables.product.prodname_container_registry %} is currently in {% data variables.release-phases.public_preview %} for {% data variables.product.product_name %} and subject to change. -Both {% data variables.product.prodname_registry %} and subdomain isolation must be enabled to use {% data variables.product.prodname_container_registry %}. For more information, see "[AUTOTITLE](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)." +Both {% data variables.product.prodname_registry %} and subdomain isolation must be enabled to use {% data variables.product.prodname_container_registry %}. For more information, see [AUTOTITLE](/packages/working-with-a-github-packages-registry/working-with-the-container-registry). {% endif %} diff --git a/data/reusables/package_registry/docker_registry_deprecation_status.md b/data/reusables/package_registry/docker_registry_deprecation_status.md index 068ee874ac1d..45283a75b6d1 100644 --- a/data/reusables/package_registry/docker_registry_deprecation_status.md +++ b/data/reusables/package_registry/docker_registry_deprecation_status.md @@ -1,2 +1,2 @@ > [!NOTE] -> The {% data variables.product.prodname_registry %} Docker registry {% ifversion ghes %} will be superseded in a future {% data variables.product.product_name %} release with the {% data variables.product.prodname_container_registry %}, which offers improved container support.{% elsif fpt %} is superseded by the {% data variables.product.prodname_container_registry %}, which offers improved container support. {% endif %} {% ifversion fpt or ghec %} For more information, see "[AUTOTITLE](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)." {% endif %} +> The {% data variables.product.prodname_registry %} Docker registry {% ifversion ghes %} will be superseded in a future {% data variables.product.product_name %} release with the {% data variables.product.prodname_container_registry %}, which offers improved container support.{% elsif fpt %} is superseded by the {% data variables.product.prodname_container_registry %}, which offers improved container support. {% endif %} {% ifversion fpt or ghec %} For more information, see [AUTOTITLE](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry). {% endif %} diff --git a/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md b/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md index 8eb30602fff0..36765932ea52 100644 --- a/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md +++ b/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md @@ -1,3 +1,3 @@ -As a next step, you can customize which package ecosystems you would like to make available to end users on {% data variables.product.github %}. For more information, see "[AUTOTITLE](/admin/packages/configuring-package-ecosystem-support-for-your-enterprise)." +As a next step, you can customize which package ecosystems you would like to make available to end users on {% data variables.product.github %}. For more information, see [AUTOTITLE](/admin/packages/configuring-package-ecosystem-support-for-your-enterprise). -For an overview of getting started with {% data variables.product.prodname_registry %} on {% data variables.product.prodname_dotcom %}, see "[AUTOTITLE](/admin/packages/getting-started-with-github-packages-for-your-enterprise)." +For an overview of getting started with {% data variables.product.prodname_registry %} on {% data variables.product.prodname_dotcom %}, see [AUTOTITLE](/admin/packages/getting-started-with-github-packages-for-your-enterprise). diff --git a/data/reusables/package_registry/no-graphql-to-delete-packages.md b/data/reusables/package_registry/no-graphql-to-delete-packages.md index d6e5ebf45226..ca9c3d8d8cfd 100644 --- a/data/reusables/package_registry/no-graphql-to-delete-packages.md +++ b/data/reusables/package_registry/no-graphql-to-delete-packages.md @@ -1,3 +1,3 @@ {% ifversion packages-registries-v2 %} -You cannot use the {% data variables.product.prodname_registry %} GraphQL API with registries that support granular permissions. For the registries that **only** support repository-scoped permissions, and can be used with the GraphQL API, see "[AUTOTITLE](/packages/learn-github-packages/about-permissions-for-github-packages#permissions-for-repository-scoped-packages)." +You cannot use the {% data variables.product.prodname_registry %} GraphQL API with registries that support granular permissions. For the registries that **only** support repository-scoped permissions, and can be used with the GraphQL API, see [AUTOTITLE](/packages/learn-github-packages/about-permissions-for-github-packages#permissions-for-repository-scoped-packages). {% endif %} diff --git a/data/reusables/package_registry/packages-classic-pat-only.md b/data/reusables/package_registry/packages-classic-pat-only.md index 3fc2440a69fa..3fa22af6516a 100644 --- a/data/reusables/package_registry/packages-classic-pat-only.md +++ b/data/reusables/package_registry/packages-classic-pat-only.md @@ -1,6 +1,6 @@ {% ifversion pat-v2 %} > [!NOTE] -> {% data variables.product.prodname_registry %} only supports authentication using a {% data variables.product.pat_v1 %}. For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." +> {% data variables.product.prodname_registry %} only supports authentication using a {% data variables.product.pat_v1 %}. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). {% endif %} diff --git a/data/reusables/package_registry/publish-docker-image.md b/data/reusables/package_registry/publish-docker-image.md index 1b0a8043029e..32be7c51fd7c 100644 --- a/data/reusables/package_registry/publish-docker-image.md +++ b/data/reusables/package_registry/publish-docker-image.md @@ -44,7 +44,7 @@ jobs: with: images: {% raw %}${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}{% endraw %} # This step uses the `docker/build-push-action` action to build the image, based on your repository's `Dockerfile`. If the build succeeds, it pushes the image to {% data variables.product.prodname_registry %}. - # It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see "[Usage](https://github.com/docker/build-push-action#usage)" in the README of the `docker/build-push-action` repository. + # It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see [Usage](https://github.com/docker/build-push-action#usage) in the README of the `docker/build-push-action` repository. # It uses the `tags` and `labels` parameters to tag and label the image with the output from the "meta" step. - name: Build and push Docker image id: push @@ -55,7 +55,7 @@ jobs: tags: {% raw %}${{ steps.meta.outputs.tags }}{% endraw %} labels: {% raw %}${{ steps.meta.outputs.labels }}{% endraw %} {% ifversion artifact-attestations %} - # This step generates an artifact attestation for the image, which is an unforgeable statement about where and how it was built. It increases supply chain security for people who consume the image. For more information, see "[AUTOTITLE](/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds)." + # This step generates an artifact attestation for the image, which is an unforgeable statement about where and how it was built. It increases supply chain security for people who consume the image. For more information, see [AUTOTITLE](/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds). - name: Generate artifact attestation uses: actions/attest-build-provenance@v2 with: diff --git a/data/reusables/package_registry/publishing-user-scoped-packages.md b/data/reusables/package_registry/publishing-user-scoped-packages.md index 28827004ff01..4fba127e0e2e 100644 --- a/data/reusables/package_registry/publishing-user-scoped-packages.md +++ b/data/reusables/package_registry/publishing-user-scoped-packages.md @@ -1 +1 @@ -When you first publish a package, the default visibility is private. To change the visibility or set access permissions, see "[AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." +When you first publish a package, the default visibility is private. To change the visibility or set access permissions, see [AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility). diff --git a/data/reusables/package_registry/required-scopes.md b/data/reusables/package_registry/required-scopes.md index 7b79ea967717..551f9ae8bbcf 100644 --- a/data/reusables/package_registry/required-scopes.md +++ b/data/reusables/package_registry/required-scopes.md @@ -1 +1 @@ -You must use a {% data variables.product.pat_v1 %} with the appropriate scopes to publish and install packages in {% data variables.product.prodname_registry %}. For more information, see "[AUTOTITLE](/packages/learn-github-packages/introduction-to-github-packages#authenticating-to-github-packages)." +You must use a {% data variables.product.pat_v1 %} with the appropriate scopes to publish and install packages in {% data variables.product.prodname_registry %}. For more information, see [AUTOTITLE](/packages/learn-github-packages/introduction-to-github-packages#authenticating-to-github-packages). diff --git a/data/reusables/package_registry/v2-actions-codespaces.md b/data/reusables/package_registry/v2-actions-codespaces.md index 34c28d911da6..51652d2546e0 100644 --- a/data/reusables/package_registry/v2-actions-codespaces.md +++ b/data/reusables/package_registry/v2-actions-codespaces.md @@ -1 +1 @@ -You can also choose to give access permissions to packages independently for{% ifversion fpt or ghec %} {% data variables.product.prodname_github_codespaces %} and{% endif %} {% data variables.product.prodname_actions %}. For more information, see "[AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-codespaces-access-to-your-package)" and "[AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." +You can also choose to give access permissions to packages independently for{% ifversion fpt or ghec %} {% data variables.product.prodname_github_codespaces %} and{% endif %} {% data variables.product.prodname_actions %}. For more information, see [AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-codespaces-access-to-your-package) and [AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package). diff --git a/data/reusables/package_registry/verify_repository_field.md b/data/reusables/package_registry/verify_repository_field.md index 462e08bc54ea..58ba6af4b6c0 100644 --- a/data/reusables/package_registry/verify_repository_field.md +++ b/data/reusables/package_registry/verify_repository_field.md @@ -1 +1 @@ -1. Verify the `repository` field in your project's _package.json_. The `repository` field must match the URL for your {% data variables.product.prodname_dotcom %} repository. For example, if your repository URL is `github.com/my-org/test` then the repository field should be `https://github.com/my-org/test.git`. +1. Verify the `repository` field in your project's `package.json`. The `repository` field must match the URL for your {% data variables.product.prodname_dotcom %} repository. For example, if your repository URL is `github.com/my-org/test` then the repository field should be `https://github.com/my-org/test.git`. diff --git a/data/reusables/package_registry/viewing-packages.md b/data/reusables/package_registry/viewing-packages.md index 3c8d076ae2b9..0a91b43ffebd 100644 --- a/data/reusables/package_registry/viewing-packages.md +++ b/data/reusables/package_registry/viewing-packages.md @@ -1 +1 @@ -After you publish a package, you can view the package on {% data variables.product.prodname_dotcom %}. For more information, see "[AUTOTITLE](/packages/learn-github-packages/viewing-packages)." +After you publish a package, you can view the package on {% data variables.product.prodname_dotcom %}. For more information, see [AUTOTITLE](/packages/learn-github-packages/viewing-packages). diff --git a/data/reusables/package_registry/visibility-and-access-permissions.md b/data/reusables/package_registry/visibility-and-access-permissions.md index c9621ccf36d2..129581ae99a0 100644 --- a/data/reusables/package_registry/visibility-and-access-permissions.md +++ b/data/reusables/package_registry/visibility-and-access-permissions.md @@ -1,11 +1,11 @@ -If a package belongs to a registry that supports granular permissions, anyone with admin permissions to the package can set the package to private or public, and can grant access permissions for the package that are separate from the permissions set at the organization and repository levels. For the list of registries that support granular permissions, see "[AUTOTITLE](/packages/learn-github-packages/about-permissions-for-github-packages#granular-permissions-for-userorganization-scoped-packages)." +If a package belongs to a registry that supports granular permissions, anyone with admin permissions to the package can set the package to private or public, and can grant access permissions for the package that are separate from the permissions set at the organization and repository levels. For the list of registries that support granular permissions, see [AUTOTITLE](/packages/learn-github-packages/about-permissions-for-github-packages#granular-permissions-for-userorganization-scoped-packages). In most registries, to pull a package, you must authenticate with a {% data variables.product.pat_generic %} or `GITHUB_TOKEN`, regardless of whether the package is public or private. However, in the {% data variables.product.prodname_container_registry %}, public packages allow anonymous access and can be pulled without authentication or signing in via the CLI. {% ifversion packages-inherit-permissions %} > [!NOTE] -> If you publish a package that is linked to a repository, the package inherits its permissions from the linked repository by default. To access the package's granular permissions settings, you must remove the package's inherited permissions. If you're the owner of an organization, you can disable the automatic inheritance of permissions for all new packages scoped to your organization. For more information, see "[AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#selecting-whether-a-package-inherits-permissions-from-a-repository)" and "[AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#disabling-automatic-inheritance-of-access-permissions-in-an-organization)." +> If you publish a package that is linked to a repository, the package inherits its permissions from the linked repository by default. To access the package's granular permissions settings, you must remove the package's inherited permissions. If you're the owner of an organization, you can disable the automatic inheritance of permissions for all new packages scoped to your organization. For more information, see [AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#selecting-whether-a-package-inherits-permissions-from-a-repository) and [AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#disabling-automatic-inheritance-of-access-permissions-in-an-organization). {% endif %} @@ -13,7 +13,7 @@ When you publish a package, you automatically get admin permissions to the packa For packages scoped to a personal account, you can give any person an access role. For packages scoped to an organization, you can give any person or team in the organization an access role. -If you are using a {% data variables.product.prodname_actions %} workflow to manage your packages, you can grant an access role to the repository the workflow is stored in {% data variables.package_registry.package-settings-actions-access-menu %}. For more information, see "[AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." +If you are using a {% data variables.product.prodname_actions %} workflow to manage your packages, you can grant an access role to the repository the workflow is stored in {% data variables.package_registry.package-settings-actions-access-menu %}. For more information, see [AUTOTITLE](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package). | Permission | Access description | |------------|--------------------| diff --git a/data/reusables/pages/about-front-matter.md b/data/reusables/pages/about-front-matter.md index 86ced932d97e..1c7882ac2346 100644 --- a/data/reusables/pages/about-front-matter.md +++ b/data/reusables/pages/about-front-matter.md @@ -1 +1 @@ -To set variables and metadata, such as a title and layout, for a page or post on your site, you can add YAML front matter to the top of any Markdown or HTML file. For more information, see "[Front Matter](https://jekyllrb.com/docs/front-matter/)" in the Jekyll documentation. +To set variables and metadata, such as a title and layout, for a page or post on your site, you can add YAML front matter to the top of any Markdown or HTML file. For more information, see [Front Matter](https://jekyllrb.com/docs/front-matter/) in the Jekyll documentation. diff --git a/data/reusables/pages/best-with-supported-themes.md b/data/reusables/pages/best-with-supported-themes.md index 1c207b80b9c1..d37f42711aa8 100644 --- a/data/reusables/pages/best-with-supported-themes.md +++ b/data/reusables/pages/best-with-supported-themes.md @@ -1,3 +1,3 @@ {% ifversion fpt or ghec %} -These instructions work best with themes that are officially supported by {% data variables.product.prodname_pages %}. For a complete list of supported themes, see "[Supported themes](https://pages.github.com/themes/)" on the {% data variables.product.prodname_pages %} site. +These instructions work best with themes that are officially supported by {% data variables.product.prodname_pages %}. For a complete list of supported themes, see [Supported themes](https://pages.github.com/themes/) on the {% data variables.product.prodname_pages %} site. {% endif %} diff --git a/data/reusables/pages/build-locally-download-cname.md b/data/reusables/pages/build-locally-download-cname.md index 2ae722bff90a..126b60faa52e 100644 --- a/data/reusables/pages/build-locally-download-cname.md +++ b/data/reusables/pages/build-locally-download-cname.md @@ -1 +1 @@ -1. If you use a static site generator to build your site locally and push the generated files to {% data variables.product.product_name %}, pull the commit that added the CNAME file to your local repository. For more information, see "[AUTOTITLE](/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages#cname-errors)." +1. If you use a static site generator to build your site locally and push the generated files to {% data variables.product.product_name %}, pull the commit that added the CNAME file to your local repository. For more information, see [AUTOTITLE](/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages#cname-errors). diff --git a/data/reusables/pages/check-workflow-run.md b/data/reusables/pages/check-workflow-run.md index 038c5e281062..5d2318a30ff7 100644 --- a/data/reusables/pages/check-workflow-run.md +++ b/data/reusables/pages/check-workflow-run.md @@ -1,7 +1,7 @@ {% ifversion build-pages-with-actions %} -1. Your {% data variables.product.prodname_pages %} site is built and deployed with a {% data variables.product.prodname_actions %} workflow. For more information, see "[AUTOTITLE](/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history)". +1. Your {% data variables.product.prodname_pages %} site is built and deployed with a {% data variables.product.prodname_actions %} workflow. For more information, see [AUTOTITLE](/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history). > [!NOTE] - > {% data variables.product.prodname_actions %} is free for public repositories. Usage charges apply for private and internal repositories that go beyond the monthly allotment of free minutes. For more information, see "[AUTOTITLE](/actions/learn-github-actions/usage-limits-billing-and-administration)". + > {% data variables.product.prodname_actions %} is free for public repositories. Usage charges apply for private and internal repositories that go beyond the monthly allotment of free minutes. For more information, see [AUTOTITLE](/actions/learn-github-actions/usage-limits-billing-and-administration). {% endif %} diff --git a/data/reusables/pages/configure-publishing-source.md b/data/reusables/pages/configure-publishing-source.md index f2efa9c7a47d..d3a2b7a63d2c 100644 --- a/data/reusables/pages/configure-publishing-source.md +++ b/data/reusables/pages/configure-publishing-source.md @@ -1 +1 @@ -1. Configure your publishing source. For more information, see "[AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." +1. Configure your publishing source. For more information, see [AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site). diff --git a/data/reusables/pages/create-repo-name.md b/data/reusables/pages/create-repo-name.md index 8225e7e5a754..bab1d2e5a6b6 100644 --- a/data/reusables/pages/create-repo-name.md +++ b/data/reusables/pages/create-repo-name.md @@ -1,3 +1,3 @@ 1. Type a name for your repository and an optional description. If you're creating a user or organization site, your repository must be named `.github.io` or `.github.io`. If your user or organization name contains uppercase letters, you must lowercase the letters. -For more information, see "[AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)." +For more information, see [AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites). ![Screenshot of {% data variables.product.prodname_pages %} settings in a repository. The repository name field contains the text "octocat.github.io" and is outlined in dark orange.](/assets/images/help/pages/create-repository-name-pages.png) diff --git a/data/reusables/pages/custom-domain-warning.md b/data/reusables/pages/custom-domain-warning.md index 80c22b7d3ee1..7ae9a4f550a4 100644 --- a/data/reusables/pages/custom-domain-warning.md +++ b/data/reusables/pages/custom-domain-warning.md @@ -1,2 +1,2 @@ > [!TIP] -> We recommend verifying your custom domain prior to adding it to your repository, in order to improve security and avoid takeover attacks. For more information, see "[AUTOTITLE](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)." +> We recommend verifying your custom domain prior to adding it to your repository, in order to improve security and avoid takeover attacks. For more information, see [AUTOTITLE](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages). diff --git a/data/reusables/pages/decide-publishing-source.md b/data/reusables/pages/decide-publishing-source.md index 9bbf96249e4f..25ed607fd1bc 100644 --- a/data/reusables/pages/decide-publishing-source.md +++ b/data/reusables/pages/decide-publishing-source.md @@ -1 +1 @@ -1. Decide which publishing source you want to use. For more information, see "[AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." +1. Decide which publishing source you want to use. For more information, see [AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site). diff --git a/data/reusables/pages/default-domain-information.md b/data/reusables/pages/default-domain-information.md index 4334df44d232..49ce6980ccc0 100644 --- a/data/reusables/pages/default-domain-information.md +++ b/data/reusables/pages/default-domain-information.md @@ -1 +1 @@ -For more information about the default domain for your site, see "[AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)." +For more information about the default domain for your site, see [AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites). diff --git a/data/reusables/pages/emu-org-only.md b/data/reusables/pages/emu-org-only.md index d5139dd2b071..66be8fbabc73 100644 --- a/data/reusables/pages/emu-org-only.md +++ b/data/reusables/pages/emu-org-only.md @@ -1,6 +1,6 @@ {% ifversion ghec %} > [!NOTE] -> If you're a {% data variables.enterprise.prodname_managed_user %}, you can only publish {% data variables.product.prodname_pages %} sites from repositories owned by organizations. For more information, see "[AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages#limitations-for-enterprise-managed-users)." +> If you're a {% data variables.enterprise.prodname_managed_user %}, you can only publish {% data variables.product.prodname_pages %} sites from repositories owned by organizations. For more information, see [AUTOTITLE](/pages/getting-started-with-github-pages/about-github-pages#limitations-for-enterprise-managed-users). {% endif %} diff --git a/data/reusables/pages/enforce-https-custom-domain.md b/data/reusables/pages/enforce-https-custom-domain.md index e2c22c4bc538..f14c781476e6 100644 --- a/data/reusables/pages/enforce-https-custom-domain.md +++ b/data/reusables/pages/enforce-https-custom-domain.md @@ -1 +1 @@ -1. Optionally, to enforce HTTPS encryption for your site, select **Enforce HTTPS**. It can take up to 24 hours before this option is available. For more information, see "[AUTOTITLE](/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https)." +1. Optionally, to enforce HTTPS encryption for your site, select **Enforce HTTPS**. It can take up to 24 hours before this option is available. For more information, see [AUTOTITLE](/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https). diff --git a/data/reusables/pages/ip-allow-list-pages.md b/data/reusables/pages/ip-allow-list-pages.md index c2a4399a3fcf..439077a043d3 100644 --- a/data/reusables/pages/ip-allow-list-pages.md +++ b/data/reusables/pages/ip-allow-list-pages.md @@ -1,3 +1,3 @@ If you use a custom {% data variables.product.prodname_actions %} workflow as a publishing source for your {% data variables.product.prodname_pages %} site, to permit the runner to connect and build the site, you must configure a rule for your IP allow list. -If you don't use a custom workflow, the build runner will have access to the repository for the {% data variables.product.prodname_pages %} site by default. For more information about publishing sources, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." +If you don't use a custom workflow, the build runner will have access to the repository for the {% data variables.product.prodname_pages %} site by default. For more information about publishing sources, see [Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site). diff --git a/data/reusables/pages/jekyll-install-troubleshooting.md b/data/reusables/pages/jekyll-install-troubleshooting.md index 8214364c261b..799d9ffe2a66 100644 --- a/data/reusables/pages/jekyll-install-troubleshooting.md +++ b/data/reusables/pages/jekyll-install-troubleshooting.md @@ -1,6 +1,6 @@ {% mac %} > [!TIP] -> If you see a Ruby error when you try to install Jekyll using Bundler, you may need to use a package manager, such as [RVM](https://rvm.io/) or [Homebrew](https://brew.sh/), to manage your Ruby installation. For more information, see "[Troubleshooting](https://jekyllrb.com/docs/troubleshooting/#jekyll--macos)" in the Jekyll documentation. +> If you see a Ruby error when you try to install Jekyll using Bundler, you may need to use a package manager, such as [RVM](https://rvm.io/) or [Homebrew](https://brew.sh/), to manage your Ruby installation. For more information, see [Troubleshooting](https://jekyllrb.com/docs/troubleshooting/#jekyll--macos) in the Jekyll documentation. {% endmac %} diff --git a/data/reusables/pages/must-have-repo-first.md b/data/reusables/pages/must-have-repo-first.md index 9ff4bc2b2d77..86deee1a4771 100644 --- a/data/reusables/pages/must-have-repo-first.md +++ b/data/reusables/pages/must-have-repo-first.md @@ -1 +1 @@ -Before you can create your site, you must have a repository for your site on {% data variables.product.product_name %}. If you're not creating your site in an existing repository, see "[Creating a repository for your site](#creating-a-repository-for-your-site)." +Before you can create your site, you must have a repository for your site on {% data variables.product.product_name %}. If you're not creating your site in an existing repository, see [Creating a repository for your site](#creating-a-repository-for-your-site). diff --git a/data/reusables/pages/navigate-publishing-source.md b/data/reusables/pages/navigate-publishing-source.md index d7603028fcf5..ab4c4264b7d2 100644 --- a/data/reusables/pages/navigate-publishing-source.md +++ b/data/reusables/pages/navigate-publishing-source.md @@ -1 +1 @@ -1. Navigate to the publishing source for your site. For more information, see "[AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." +1. Navigate to the publishing source for your site. For more information, see [AUTOTITLE](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site). diff --git a/data/reusables/pages/new-or-existing-repo.md b/data/reusables/pages/new-or-existing-repo.md index afe17b4dffc8..6c8efe1be81a 100644 --- a/data/reusables/pages/new-or-existing-repo.md +++ b/data/reusables/pages/new-or-existing-repo.md @@ -4,4 +4,4 @@ If you want to create a {% data variables.product.prodname_pages %} site for a r {% ifversion fpt or ghec %}If the account that owns the repository uses {% data variables.product.prodname_free_user %} or {% data variables.product.prodname_free_team %} for organizations, the repository must be public.{% endif %} - If you want to create a site in an existing repository, skip to the "[Creating your site](#creating-your-site)" section. + If you want to create a site in an existing repository, skip to the [Creating your site](#creating-your-site) section. diff --git a/data/reusables/pages/org-owners-can-restrict-pages-creation.md b/data/reusables/pages/org-owners-can-restrict-pages-creation.md index 5bb1b8caf8e3..23c46500430a 100644 --- a/data/reusables/pages/org-owners-can-restrict-pages-creation.md +++ b/data/reusables/pages/org-owners-can-restrict-pages-creation.md @@ -1,2 +1,2 @@ > [!NOTE] -> Organization owners can restrict the publication of {% data variables.product.prodname_pages %} sites from repositories owned by the organization. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization)." +> Organization owners can restrict the publication of {% data variables.product.prodname_pages %} sites from repositories owned by the organization. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization). diff --git a/data/reusables/pages/private_pages_are_public_warning.md b/data/reusables/pages/private_pages_are_public_warning.md index 7c82f3f200d0..db94d40cb6a2 100644 --- a/data/reusables/pages/private_pages_are_public_warning.md +++ b/data/reusables/pages/private_pages_are_public_warning.md @@ -1,5 +1,5 @@ > [!WARNING] -{% ifversion fpt %}> {% data variables.product.prodname_pages %} sites are publicly available on the internet, even if the repository for the site is private (if your plan or organization allows it). If you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see "[AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." -{% elsif ghec %}> Unless your enterprise uses {% data variables.product.prodname_emus %}, {% data variables.product.prodname_pages %} sites are publicly available on the internet by default, even if the repository for the site is private or internal. You can publish a site privately by managing access control for the site. Otherwise, if you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see "[AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)" and "[AUTOTITLE](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site)." -{% elsif ghes %}> If your site administrator has enabled Public Pages, {% data variables.product.prodname_pages %} sites are publicly available on the internet, even if the repository for the site is private or internal. If you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see "[AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise#enabling-public-sites-for-github-pages)" and "[AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." +{% ifversion fpt %}> {% data variables.product.prodname_pages %} sites are publicly available on the internet, even if the repository for the site is private (if your plan or organization allows it). If you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility). +{% elsif ghec %}> Unless your enterprise uses {% data variables.product.prodname_emus %}, {% data variables.product.prodname_pages %} sites are publicly available on the internet by default, even if the repository for the site is private or internal. You can publish a site privately by managing access control for the site. Otherwise, if you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility) and [AUTOTITLE](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site). +{% elsif ghes %}> If your site administrator has enabled Public Pages, {% data variables.product.prodname_pages %} sites are publicly available on the internet, even if the repository for the site is private or internal. If you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise#enabling-public-sites-for-github-pages) and [AUTOTITLE](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility). {% endif %} diff --git a/data/reusables/pages/recommend-bundler.md b/data/reusables/pages/recommend-bundler.md index bf380a20a825..d4df6f2ff3c8 100644 --- a/data/reusables/pages/recommend-bundler.md +++ b/data/reusables/pages/recommend-bundler.md @@ -1,4 +1,4 @@ We recommend using [Bundler](https://bundler.io/) to install and run Jekyll. Bundler manages Ruby gem dependencies, reduces Jekyll build errors, and prevents environment-related bugs. To install Bundler: - 1. Install Ruby. For more information, see "[Installing Ruby](https://www.ruby-lang.org/en/documentation/installation/)" in the Ruby documentation. - 1. Install Bundler. For more information, see "[Bundler](https://bundler.io/)." + 1. Install Ruby. For more information, see [Installing Ruby](https://www.ruby-lang.org/en/documentation/installation/) in the Ruby documentation. + 1. Install Bundler. For more information, see [Bundler](https://bundler.io/). diff --git a/data/reusables/pages/symlink-removal.md b/data/reusables/pages/symlink-removal.md index c19b53ad0459..131b386ba0ad 100644 --- a/data/reusables/pages/symlink-removal.md +++ b/data/reusables/pages/symlink-removal.md @@ -1,2 +1,2 @@ > [!NOTE] -> If your repository contains symbolic links, you will need to publish your site using a {% data variables.product.prodname_actions %} workflow. For more information about {% data variables.product.prodname_actions %}, see "[AUTOTITLE](/actions)." +> If your repository contains symbolic links, you will need to publish your site using a {% data variables.product.prodname_actions %} workflow. For more information about {% data variables.product.prodname_actions %}, see [AUTOTITLE](/actions). diff --git a/data/reusables/pages/test-locally.md b/data/reusables/pages/test-locally.md index 3fc17b5f5ff7..f1134911ab5a 100644 --- a/data/reusables/pages/test-locally.md +++ b/data/reusables/pages/test-locally.md @@ -1 +1 @@ -{% ifversion pages-custom-workflow %}If you are publishing from a branch, changes{% else %}Changes{% endif %} to your site are published automatically when the changes are merged into your site's publishing source. {% ifversion pages-custom-workflow %}If you are publishing from a custom {% data variables.product.prodname_actions %} workflow, changes are published whenever your workflow is triggered (typically by a push to the default branch). {% endif %}If you want to preview your changes first, you can make the changes locally instead of on {% data variables.product.product_name %}. Then, test your site locally. For more information, see "[AUTOTITLE](/pages/setting-up-a-github-pages-site-with-jekyll/testing-your-github-pages-site-locally-with-jekyll)." +{% ifversion pages-custom-workflow %}If you are publishing from a branch, changes{% else %}Changes{% endif %} to your site are published automatically when the changes are merged into your site's publishing source. {% ifversion pages-custom-workflow %}If you are publishing from a custom {% data variables.product.prodname_actions %} workflow, changes are published whenever your workflow is triggered (typically by a push to the default branch). {% endif %}If you want to preview your changes first, you can make the changes locally instead of on {% data variables.product.product_name %}. Then, test your site locally. For more information, see [AUTOTITLE](/pages/setting-up-a-github-pages-site-with-jekyll/testing-your-github-pages-site-locally-with-jekyll). diff --git a/data/reusables/pages/twenty-minutes-to-publish.md b/data/reusables/pages/twenty-minutes-to-publish.md index 38ca27c89e35..beefab8e7028 100644 --- a/data/reusables/pages/twenty-minutes-to-publish.md +++ b/data/reusables/pages/twenty-minutes-to-publish.md @@ -1,2 +1,2 @@ > [!NOTE] -> It can take up to 10 minutes for changes to your site to publish after you push the changes to {% data variables.product.product_name %}. If you don't see your {% data variables.product.prodname_pages %} site changes reflected in your browser after an hour, see "[AUTOTITLE](/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites)." +> It can take up to 10 minutes for changes to your site to publish after you push the changes to {% data variables.product.product_name %}. If you don't see your {% data variables.product.prodname_pages %} site changes reflected in your browser after an hour, see [AUTOTITLE](/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites). diff --git a/data/reusables/pages/wildcard-dns-warning.md b/data/reusables/pages/wildcard-dns-warning.md index b1b8c4a2ed08..11d6945a8189 100644 --- a/data/reusables/pages/wildcard-dns-warning.md +++ b/data/reusables/pages/wildcard-dns-warning.md @@ -1,2 +1,2 @@ > [!WARNING] -> We strongly recommend that you do not use wildcard DNS records, such as `*.example.com`. These records put you at an immediate risk of domain takeovers, even if you verify the domain. For example, if you verify `example.com` this prevents someone from using `a.example.com` but they could still take over `b.a.example.com` (which is covered by the wildcard DNS record). For more information, see "[AUTOTITLE](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)." +> We strongly recommend that you do not use wildcard DNS records, such as `*.example.com`. These records put you at an immediate risk of domain takeovers, even if you verify the domain. For example, if you verify `example.com` this prevents someone from using `a.example.com` but they could still take over `b.a.example.com` (which is covered by the wildcard DNS record). For more information, see [AUTOTITLE](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages). diff --git a/data/reusables/passkeys/add-passkey-option.md b/data/reusables/passkeys/add-passkey-option.md index 9046e342f2bf..2f5aff88fc9c 100644 --- a/data/reusables/passkeys/add-passkey-option.md +++ b/data/reusables/passkeys/add-passkey-option.md @@ -1 +1 @@ -Optionally, add a passkey to your account to enable a secure, passwordless login. See "[AUTOTITLE](/authentication/authenticating-with-a-passkey/about-passkeys)." +Optionally, add a passkey to your account to enable a secure, passwordless login. See [AUTOTITLE](/authentication/authenticating-with-a-passkey/about-passkeys). diff --git a/data/reusables/permissions/dependabot-alerts.md b/data/reusables/permissions/dependabot-alerts.md index 2942d2f9bccd..e6327981b941 100644 --- a/data/reusables/permissions/dependabot-alerts.md +++ b/data/reusables/permissions/dependabot-alerts.md @@ -1,2 +1,2 @@ * Repository administrators, organization owners, and people with **write** or **maintain** access -* Users and teams with explicit access. See "[Granting access to security alert](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)." +* Users and teams with explicit access. See [Granting access to security alert](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts). diff --git a/data/reusables/permissions/security-configuration-enterprise-enable.md b/data/reusables/permissions/security-configuration-enterprise-enable.md index 5fd5f7261566..af1afb07165f 100644 --- a/data/reusables/permissions/security-configuration-enterprise-enable.md +++ b/data/reusables/permissions/security-configuration-enterprise-enable.md @@ -1 +1 @@ -{% ifversion ghec %}Enterprise owners and members with the **admin** role{% else %}Site administrators{% endif %} +{% ifversion fpt or ghec %}Enterprise owners and members with the **admin** role{% else %}Site administrators{% endif %} diff --git a/data/reusables/policies/github-community-guidelines-and-terms.md b/data/reusables/policies/github-community-guidelines-and-terms.md index 81923e5b4e60..ca41bfb1f8a8 100644 --- a/data/reusables/policies/github-community-guidelines-and-terms.md +++ b/data/reusables/policies/github-community-guidelines-and-terms.md @@ -1 +1 @@ -{% data variables.product.company_short %} provides a baseline code of conduct for everyone who uses {% data variables.product.prodname_dotcom %}. For more information, see "[AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-of-service)" and "[AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-community-guidelines)." +{% data variables.product.company_short %} provides a baseline code of conduct for everyone who uses {% data variables.product.prodname_dotcom %}. For more information, see [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-of-service) and [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-community-guidelines). diff --git a/data/reusables/pre-release-program/expiring-user-access-tokens.md b/data/reusables/pre-release-program/expiring-user-access-tokens.md index a85fb99b2cb8..a7d528c7f820 100644 --- a/data/reusables/pre-release-program/expiring-user-access-tokens.md +++ b/data/reusables/pre-release-program/expiring-user-access-tokens.md @@ -1 +1 @@ -User access tokens that expire are currently an optional feature and are subject to change. To opt in or out of the token expiration feature, see "[AUTOTITLE](/apps/maintaining-github-apps/activating-optional-features-for-github-apps)." For more information, see "[Expiring user-to-server access tokens for GitHub Apps](https://developer.github.com/changes/2020-04-30-expiring-user-to-server-access-tokens-for-github-apps)." +User access tokens that expire are currently an optional feature and are subject to change. To opt in or out of the token expiration feature, see [AUTOTITLE](/apps/maintaining-github-apps/activating-optional-features-for-github-apps). For more information, see [Expiring user-to-server access tokens for GitHub Apps](https://developer.github.com/changes/2020-04-30-expiring-user-to-server-access-tokens-for-github-apps). diff --git a/data/reusables/products/which-product-to-use.md b/data/reusables/products/which-product-to-use.md index 93c20c9cc37e..e70260860721 100644 --- a/data/reusables/products/which-product-to-use.md +++ b/data/reusables/products/which-product-to-use.md @@ -1 +1 @@ -If you're not sure whether {% data variables.product.prodname_ghe_cloud %}, {% data variables.product.prodname_ghe_server %}, or both are best for your organization, contact {% data variables.contact.contact_enterprise_sales %}. If your organization has 11 or fewer developers, consider {% data variables.product.prodname_team %}; organizations with 12 or more developers typically benefit the most from {% data variables.product.prodname_enterprise %}. For more information, see "[AUTOTITLE](/get-started/learning-about-github/githubs-plans)." +If you're not sure whether {% data variables.product.prodname_ghe_cloud %}, {% data variables.product.prodname_ghe_server %}, or both are best for your organization, contact {% data variables.contact.contact_enterprise_sales %}. If your organization has 11 or fewer developers, consider {% data variables.product.prodname_team %}; organizations with 12 or more developers typically benefit the most from {% data variables.product.prodname_enterprise %}. For more information, see [AUTOTITLE](/get-started/learning-about-github/githubs-plans). diff --git a/data/reusables/profile/profile-readme.md b/data/reusables/profile/profile-readme.md index d431262acff8..5e6d699b71ea 100644 --- a/data/reusables/profile/profile-readme.md +++ b/data/reusables/profile/profile-readme.md @@ -1 +1 @@ -If you add a README file to the root of a public repository with the same name as your username, that README will automatically appear on your profile page. You can edit your profile README with {% data variables.product.company_short %} Flavored Markdown to create a personalized section on your profile. For more information, see "[AUTOTITLE](/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme)." +If you add a README file to the root of a public repository with the same name as your username, that README will automatically appear on your profile page. You can edit your profile README with {% data variables.product.company_short %} Flavored Markdown to create a personalized section on your profile. For more information, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme). diff --git a/data/reusables/project-management/copy-project-boards.md b/data/reusables/project-management/copy-project-boards.md index ad2a973e6b1a..ff7e55419907 100644 --- a/data/reusables/project-management/copy-project-boards.md +++ b/data/reusables/project-management/copy-project-boards.md @@ -1,3 +1,3 @@ {% ifversion fpt or ghec %} -You can also copy a {% data variables.projects.projects_v1_board %} to reuse its customizations for similar projects. For more information, see "[AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/copying-a-project-board)." +You can also copy a {% data variables.projects.projects_v1_board %} to reuse its customizations for similar projects. For more information, see [AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/copying-a-project-board). {% endif %} diff --git a/data/reusables/project-management/for-more-info-project-keyboard-shortcuts.md b/data/reusables/project-management/for-more-info-project-keyboard-shortcuts.md index 94659914641f..d72a411bb07a 100644 --- a/data/reusables/project-management/for-more-info-project-keyboard-shortcuts.md +++ b/data/reusables/project-management/for-more-info-project-keyboard-shortcuts.md @@ -1 +1 @@ -For more information about keyboard shortcuts, see "{% data variables.projects.projects_v1_boards_caps %}" in "[AUTOTITLE](/get-started/accessibility/keyboard-shortcuts#project-boards)." +For more information about keyboard shortcuts, see "{% data variables.projects.projects_v1_boards_caps %}" in [AUTOTITLE](/get-started/accessibility/keyboard-shortcuts#project-boards). diff --git a/data/reusables/project-management/project-board-import-with-api.md b/data/reusables/project-management/project-board-import-with-api.md index f711eabde211..0c325f55a250 100644 --- a/data/reusables/project-management/project-board-import-with-api.md +++ b/data/reusables/project-management/project-board-import-with-api.md @@ -1 +1 @@ -You can use {% data variables.product.prodname_dotcom %}'s API to import a {% data variables.projects.projects_v1_board %}. For more information, see "[AUTOTITLE](/graphql/reference/mutations#importproject/)." +You can use {% data variables.product.prodname_dotcom %}'s API to import a {% data variables.projects.projects_v1_board %}. For more information, see [AUTOTITLE](/graphql/reference/mutations#importproject/). diff --git a/data/reusables/project-management/project-board-permissions.md b/data/reusables/project-management/project-board-permissions.md index 1152a00bcf47..0a50a9680d45 100644 --- a/data/reusables/project-management/project-board-permissions.md +++ b/data/reusables/project-management/project-board-permissions.md @@ -1,3 +1,3 @@ * **Read**, which gives people permission to view a {% data variables.projects.projects_v1_board %}. -* **Write**, which gives people permission to view a {% data variables.projects.projects_v1_board %}, link repositories to a {% data variables.projects.projects_v1_board %}, and interact with a {% data variables.projects.projects_v1_board %}. For more information, see "[AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/linking-a-repository-to-a-project-board)." +* **Write**, which gives people permission to view a {% data variables.projects.projects_v1_board %}, link repositories to a {% data variables.projects.projects_v1_board %}, and interact with a {% data variables.projects.projects_v1_board %}. For more information, see [AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/linking-a-repository-to-a-project-board). * **Admin**, which gives people permission to view a {% data variables.projects.projects_v1_board %}, interact with a {% data variables.projects.projects_v1_board %}, manage {% data variables.projects.projects_v1_board %} settings, and manage other people's access to the {% data variables.projects.projects_v1_board %}. diff --git a/data/reusables/project-management/resync-automation.md b/data/reusables/project-management/resync-automation.md index 4a71a02642ad..47285da8ff26 100644 --- a/data/reusables/project-management/resync-automation.md +++ b/data/reusables/project-management/resync-automation.md @@ -1 +1 @@ -When you close a {% data variables.projects.projects_v1_board %}, any workflow automation configured for the {% data variables.projects.projects_v1_board %} will pause. If you reopen a {% data variables.projects.projects_v1_board %}, you have the option to sync automation, which updates the position of the cards on the board according to the automation settings configured for the project. For more information, see "[AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/reopening-a-closed-project-board)" or "[AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/closing-a-project-board)." +When you close a {% data variables.projects.projects_v1_board %}, any workflow automation configured for the {% data variables.projects.projects_v1_board %} will pause. If you reopen a {% data variables.projects.projects_v1_board %}, you have the option to sync automation, which updates the position of the cards on the board according to the automation settings configured for the project. For more information, see [AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/reopening-a-closed-project-board) or [AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/closing-a-project-board). diff --git a/data/reusables/project-management/use-automated-template.md b/data/reusables/project-management/use-automated-template.md index d812bddcacac..83f8d3cc65b7 100644 --- a/data/reusables/project-management/use-automated-template.md +++ b/data/reusables/project-management/use-automated-template.md @@ -1 +1 @@ -You can use a {% data variables.projects.projects_v1_board %} template to create a {% data variables.projects.projects_v1_board %} with automation already configured. For more information, see "[AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards#templates-for-project-boards)." +You can use a {% data variables.projects.projects_v1_board %} template to create a {% data variables.projects.projects_v1_board %} with automation already configured. For more information, see [AUTOTITLE](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards#templates-for-project-boards). diff --git a/data/reusables/projects/classic-project-creation.md b/data/reusables/projects/classic-project-creation.md index 21b16b8193b5..b972246bc816 100644 --- a/data/reusables/projects/classic-project-creation.md +++ b/data/reusables/projects/classic-project-creation.md @@ -1,6 +1,6 @@ {% ifversion fpt or ghec %} > [!NOTE] -> You can only create a new {% data variables.projects.projects_v1_board %} for an organization, user, or repository that already has at least one {% data variables.projects.projects_v1_board %}. If you're unable to create a {% data variables.projects.projects_v1_board %}, create a {% data variables.projects.project_v2 %} instead. For more information, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/creating-projects/creating-a-project)." +> You can only create a new {% data variables.projects.projects_v1_board %} for an organization, user, or repository that already has at least one {% data variables.projects.projects_v1_board %}. If you're unable to create a {% data variables.projects.projects_v1_board %}, create a {% data variables.projects.project_v2 %} instead. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/creating-projects/creating-a-project). {% endif %} diff --git a/data/reusables/projects/enable_enterprise_workflows.md b/data/reusables/projects/enable_enterprise_workflows.md index 05547b09bf63..663ed8ff7a08 100644 --- a/data/reusables/projects/enable_enterprise_workflows.md +++ b/data/reusables/projects/enable_enterprise_workflows.md @@ -1,2 +1,2 @@ > [!NOTE] -> Project workflow automations must be enabled by an enterprise owner in the enterprise settings page for policies for projects. For more information, see "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise)." +> Project workflow automations must be enabled by an enterprise owner in the enterprise settings page for policies for projects. For more information, see [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise). diff --git a/data/reusables/projects/index-select.md b/data/reusables/projects/index-select.md index 2d489341d996..196d8b58a3be 100644 --- a/data/reusables/projects/index-select.md +++ b/data/reusables/projects/index-select.md @@ -1,4 +1,4 @@ -1. Optionally, in the text box above the list of projects, enter a filter to choose which projects are displayed. For more information on filter syntax, see "[Syntax for filtering a list of projects](#syntax-for-filtering-a-list-of-projects)" in this article. +1. Optionally, in the text box above the list of projects, enter a filter to choose which projects are displayed. For more information on filter syntax, see [Syntax for filtering a list of projects](#syntax-for-filtering-a-list-of-projects) in this article. ![Screenshot of the main page for a team. In the horizontal navigation bar, the "Projects" tab is outlined in dark orange.](/assets/images/help/projects-v2/index-filter-box.png) diff --git a/data/reusables/projects/migration-permissions-warning.md b/data/reusables/projects/migration-permissions-warning.md index 0c3ae554ad0e..debc709969a5 100644 --- a/data/reusables/projects/migration-permissions-warning.md +++ b/data/reusables/projects/migration-permissions-warning.md @@ -1 +1 @@ -When you migrate a {% data variables.projects.projects_v1_board %} to an organization, the organization's base permission for projects will not be applied. After migrating your project, make sure to confirm the project's permissions. For more information, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/managing-access-to-your-projects)." +When you migrate a {% data variables.projects.projects_v1_board %} to an organization, the organization's base permission for projects will not be applied. After migrating your project, make sure to confirm the project's permissions. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/managing-access-to-your-projects). diff --git a/data/reusables/projects/org-templates.md b/data/reusables/projects/org-templates.md index 6b1274836262..0874eabfda3a 100644 --- a/data/reusables/projects/org-templates.md +++ b/data/reusables/projects/org-templates.md @@ -1 +1 @@ -You can also set projects in your organization as templates{% ifversion projects-v2-org-templates-GA-updates %}, and curate a list of recommended templates to highlight, {% endif %} that other organization members can then use as the base for the projects they create. For more information, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/managing-project-templates-in-your-organization)." +You can also set projects in your organization as templates{% ifversion projects-v2-org-templates-GA-updates %}, and curate a list of recommended templates to highlight, {% endif %} that other organization members can then use as the base for the projects they create. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/managing-project-templates-in-your-organization). diff --git a/data/reusables/projects/owners-can-limit-visibility-permissions.md b/data/reusables/projects/owners-can-limit-visibility-permissions.md index 136aad303b71..371959203b00 100644 --- a/data/reusables/projects/owners-can-limit-visibility-permissions.md +++ b/data/reusables/projects/owners-can-limit-visibility-permissions.md @@ -1 +1 @@ -Organization owners can control the ability of organization members to create public {% data variables.projects.projects_v2_and_v1_if_create %}, or change the visibility of existing {% data variables.projects.projects_v2_and_v1 %} to public. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization)." +Organization owners can control the ability of organization members to create public {% data variables.projects.projects_v2_and_v1_if_create %}, or change the visibility of existing {% data variables.projects.projects_v2_and_v1 %} to public. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization). diff --git a/data/reusables/projects/project-description.md b/data/reusables/projects/project-description.md index 9159c05dd29b..8df39231dfe9 100644 --- a/data/reusables/projects/project-description.md +++ b/data/reusables/projects/project-description.md @@ -3,7 +3,7 @@ You can set your project's description and README to share the purpose of your p {% data reusables.projects.project-settings %} 1. To add a short description to your project, under "Add a description", type your description in the text box and click **Save**. 1. To update your project's README, under "README", type your content in the text box. - * You can format your README using Markdown. For more information, see "[AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax)." + * You can format your README using Markdown. For more information, see [AUTOTITLE](/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax). * To toggle between the text box and a preview of your changes, click {% octicon "eye" aria-label="The preview icon" %} or {% octicon "pencil" aria-label="The edit icon" %}. 1. To save changes to your README, click **Save**. diff --git a/data/reusables/projects/project_boards_old.md b/data/reusables/projects/project_boards_old.md index 537f2d89ee1b..aa63e63a41dd 100644 --- a/data/reusables/projects/project_boards_old.md +++ b/data/reusables/projects/project_boards_old.md @@ -3,7 +3,7 @@ {% ifversion projects-v2 %} >[!NOTE] ->* {% data variables.product.prodname_projects_v2 %}, the all-new projects experience, is now available. For more information about {% data variables.product.prodname_projects_v2 %}, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)." +>* {% data variables.product.prodname_projects_v2 %}, the all-new projects experience, is now available. For more information about {% data variables.product.prodname_projects_v2 %}, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects). >* You can only create a new {% data variables.projects.projects_v1_board %} for an organization{% ifversion projects-v1-create-repo-project %}, repository, {% endif %} or user that already has at least one {% data variables.projects.projects_v1_board %}. {% ifversion projects-v1-create-repo-project %}{% else %} You cannot create new {% data variables.projects.projects_v1_boards %} for repositories. {% endif %} If you're unable to create a {% data variables.projects.projects_v1_board %}, create a project instead. {% endif %} diff --git a/data/reusables/projects/projects-api.md b/data/reusables/projects/projects-api.md index 25d3fe9c56a7..18dc8ae7ed8e 100644 --- a/data/reusables/projects/projects-api.md +++ b/data/reusables/projects/projects-api.md @@ -3,7 +3,7 @@ {% ifversion fpt or ghec %} > [!NOTE] -> * These endpoints only interact with {% data variables.product.prodname_projects_v1 %}. To manage {% data variables.product.prodname_projects_v2 %}, use the GraphQL API. For more information, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects)." +> * These endpoints only interact with {% data variables.product.prodname_projects_v1 %}. To manage {% data variables.product.prodname_projects_v2 %}, use the GraphQL API. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects). > * To create a new {% data variables.projects.projects_v1_board %}, the organization, user, or repository must already have at least one {% data variables.projects.projects_v1_board %}. {% endif %} @@ -13,6 +13,6 @@ > [!NOTE] {% data reusables.projects.sunset_notice_content %} > -> These endpoints only interact with {% data variables.product.prodname_projects_v1 %}. To manage {% data variables.product.prodname_projects_v2 %}, use the GraphQL API. For more information, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects)." +> These endpoints only interact with {% data variables.product.prodname_projects_v1 %}. To manage {% data variables.product.prodname_projects_v2 %}, use the GraphQL API. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects). {% endif %} diff --git a/data/reusables/projects/sunset_notice_content.md b/data/reusables/projects/sunset_notice_content.md index 9d2c19253de7..4d68d84066a7 100644 --- a/data/reusables/projects/sunset_notice_content.md +++ b/data/reusables/projects/sunset_notice_content.md @@ -1,3 +1,3 @@ >{% data variables.product.prodname_projects_v1_caps %} has been removed. You can read more about this change on [{% data variables.product.prodname_blog %}](https://gh.io/projects-classic-sunset-notice). > ->The new and improved Projects experience is available. For more information, see "[AUTOTITLE](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)." +>The new and improved Projects experience is available. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects). diff --git a/data/reusables/pull_requests/auto-merge-requires-branch-protection.md b/data/reusables/pull_requests/auto-merge-requires-branch-protection.md index eb731406b011..708ed9203e7d 100644 --- a/data/reusables/pull_requests/auto-merge-requires-branch-protection.md +++ b/data/reusables/pull_requests/auto-merge-requires-branch-protection.md @@ -1,2 +1,2 @@ > [!NOTE] -> The option to enable auto-merge is shown only on pull requests that cannot be merged immediately. For example, when a branch protection rule enforces "Require pull request reviews before merging" or "Require status checks to pass before merging" and these conditions are not yet met. For more information, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule)." +> The option to enable auto-merge is shown only on pull requests that cannot be merged immediately. For example, when a branch protection rule enforces "Require pull request reviews before merging" or "Require status checks to pass before merging" and these conditions are not yet met. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule). diff --git a/data/reusables/pull_requests/automatically-delete-branches.md b/data/reusables/pull_requests/automatically-delete-branches.md index 10e14c7b026d..1bcc053ddf7a 100644 --- a/data/reusables/pull_requests/automatically-delete-branches.md +++ b/data/reusables/pull_requests/automatically-delete-branches.md @@ -1 +1 @@ -You can have head branches automatically deleted after pull requests are merged in your repository. For more information, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-the-automatic-deletion-of-branches)." +You can have head branches automatically deleted after pull requests are merged in your repository. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-the-automatic-deletion-of-branches). diff --git a/data/reusables/pull_requests/close-issues-using-keywords.md b/data/reusables/pull_requests/close-issues-using-keywords.md index bd649c6ed02c..0703c2a32593 100644 --- a/data/reusables/pull_requests/close-issues-using-keywords.md +++ b/data/reusables/pull_requests/close-issues-using-keywords.md @@ -1 +1 @@ -You can link a pull request to an issue to show that a fix is in progress and to automatically close the issue when someone merges the pull request. For more information, see "[AUTOTITLE](/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)." +You can link a pull request to an issue to show that a fix is in progress and to automatically close the issue when someone merges the pull request. For more information, see [AUTOTITLE](/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue). diff --git a/data/reusables/pull_requests/code-review-limits.md b/data/reusables/pull_requests/code-review-limits.md index 3e69a88f4bdb..9676d53d3723 100644 --- a/data/reusables/pull_requests/code-review-limits.md +++ b/data/reusables/pull_requests/code-review-limits.md @@ -1 +1 @@ -By default, in public repositories, any user can submit reviews that approve or request changes to a pull request. Organization owners and repository admins can limit who is able to give approving pull request reviews or request changes. For more information, see "[AUTOTITLE](/organizations/managing-organization-settings/managing-pull-request-reviews-in-your-organization)" and "[AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-pull-request-reviews-in-your-repository)." +By default, in public repositories, any user can submit reviews that approve or request changes to a pull request. Organization owners and repository admins can limit who is able to give approving pull request reviews or request changes. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/managing-pull-request-reviews-in-your-organization) and [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-pull-request-reviews-in-your-repository). diff --git a/data/reusables/pull_requests/configure_pull_request_merges_intro.md b/data/reusables/pull_requests/configure_pull_request_merges_intro.md index 653022fd8215..bc17ab413f48 100644 --- a/data/reusables/pull_requests/configure_pull_request_merges_intro.md +++ b/data/reusables/pull_requests/configure_pull_request_merges_intro.md @@ -1 +1 @@ -You can configure pull request merge options to meet your workflow needs and preferences for managing Git history. For more information, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges)." +You can configure pull request merge options to meet your workflow needs and preferences for managing Git history. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges). diff --git a/data/reusables/pull_requests/default-commit-message-squash-merge.md b/data/reusables/pull_requests/default-commit-message-squash-merge.md index a41114138018..c568384f930e 100644 --- a/data/reusables/pull_requests/default-commit-message-squash-merge.md +++ b/data/reusables/pull_requests/default-commit-message-squash-merge.md @@ -1 +1 @@ -For information about the default commit messages for squash merges, see "[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#merge-message-for-a-squash-merge)." +For information about the default commit messages for squash merges, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#merge-message-for-a-squash-merge). diff --git a/data/reusables/pull_requests/merge-queue-overview.md b/data/reusables/pull_requests/merge-queue-overview.md index 0336fa41aa81..8168b6781762 100644 --- a/data/reusables/pull_requests/merge-queue-overview.md +++ b/data/reusables/pull_requests/merge-queue-overview.md @@ -6,4 +6,4 @@ Using a merge queue is particularly useful on branches that have a relatively hi Once a pull request has passed all required branch protection checks, a user with write access to the repository can add the pull request to the queue. The merge queue will ensure the pull request's changes pass all required status checks when applied to the latest version of the target branch and any pull requests already in the queue. -A merge queue may use {% data variables.product.prodname_actions %} or your own CI provider to run required checks on pull requests in a merge queue. For more information, see "[AUTOTITLE](/actions)." +A merge queue may use {% data variables.product.prodname_actions %} or your own CI provider to run required checks on pull requests in a merge queue. For more information, see [AUTOTITLE](/actions). diff --git a/data/reusables/pull_requests/merge-queue-references.md b/data/reusables/pull_requests/merge-queue-references.md index 0919a9eeddf9..40647aacfc99 100644 --- a/data/reusables/pull_requests/merge-queue-references.md +++ b/data/reusables/pull_requests/merge-queue-references.md @@ -1,2 +1,2 @@ -For more information about merge queues, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-a-merge-queue)." +For more information about merge queues, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-a-merge-queue). diff --git a/data/reusables/pull_requests/path-filtering-required-workflows.md b/data/reusables/pull_requests/path-filtering-required-workflows.md index 747ae71c801a..935ecb0048fe 100644 --- a/data/reusables/pull_requests/path-filtering-required-workflows.md +++ b/data/reusables/pull_requests/path-filtering-required-workflows.md @@ -1,11 +1,11 @@ {% ifversion required-workflows-deprecation %} -You should not use path or branch filtering to skip workflow runs if the workflow is required. For more information, see "[AUTOTITLE](/actions/managing-workflow-runs/skipping-workflow-runs){% ifversion required-workflows %}" and "[AUTOTITLE](/actions/using-workflows/required-workflows){% endif %}." +You should not use path or branch filtering to skip workflow runs if the workflow is required. For more information, see [AUTOTITLE](/actions/managing-workflow-runs/skipping-workflow-runs){% ifversion required-workflows %} and [AUTOTITLE](/actions/using-workflows/required-workflows){% endif %}. {% endif %} {% ifversion repo-rules-required-workflows %} -You should not use path or branch filtering to skip workflow runs if the workflow is required to pass before merging. For more information, see "[AUTOTITLE](/actions/managing-workflow-runs/skipping-workflow-runs)" and "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#require-workflows-to-pass-before-merging)." +You should not use path or branch filtering to skip workflow runs if the workflow is required to pass before merging. For more information, see [AUTOTITLE](/actions/managing-workflow-runs/skipping-workflow-runs) and [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#require-workflows-to-pass-before-merging). {% endif %} diff --git a/data/reusables/pull_requests/required-checks-must-pass-to-merge.md b/data/reusables/pull_requests/required-checks-must-pass-to-merge.md index a19b7dcc42b1..894e9a46026f 100644 --- a/data/reusables/pull_requests/required-checks-must-pass-to-merge.md +++ b/data/reusables/pull_requests/required-checks-must-pass-to-merge.md @@ -1 +1 @@ -If status checks are required for a repository, the required status checks must pass before you can merge your branch into the protected branch. For more information, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches#require-status-checks-before-merging)." +If status checks are required for a repository, the required status checks must pass before you can merge your branch into the protected branch. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches#require-status-checks-before-merging). diff --git a/data/reusables/pull_requests/required-reviews-for-prs-summary.md b/data/reusables/pull_requests/required-reviews-for-prs-summary.md index 42c2ac1f75b9..799dfa30bdd5 100644 --- a/data/reusables/pull_requests/required-reviews-for-prs-summary.md +++ b/data/reusables/pull_requests/required-reviews-for-prs-summary.md @@ -1 +1 @@ -Repository administrators{% ifversion edit-repository-rules %} or custom roles with the "edit repository rules" permission{% endif %} can require that all pull requests receive a specific number of approving reviews before someone merges the pull request into a protected branch. You can require approving reviews from people with write permissions in the repository or from a designated code owner. +Repository administrators or custom roles with the "edit repository rules" permission can require that all pull requests receive a specific number of approving reviews before someone merges the pull request into a protected branch. You can require approving reviews from people with write permissions in the repository or from a designated code owner. diff --git a/data/reusables/pull_requests/resolving-conversations.md b/data/reusables/pull_requests/resolving-conversations.md index d5ab4c114394..83d1c02c6669 100644 --- a/data/reusables/pull_requests/resolving-conversations.md +++ b/data/reusables/pull_requests/resolving-conversations.md @@ -6,7 +6,7 @@ To indicate that a conversation on the **Files changed** tab is complete, click The entire conversation will be collapsed and marked as resolved, making it easier to find conversations that still need to be addressed. -If the suggestion in a comment is out of your pull request's scope, you can open a new issue that tracks the feedback and links back to the original comment. For more information, see "[AUTOTITLE](/issues/tracking-your-work-with-issues/creating-an-issue)." +If the suggestion in a comment is out of your pull request's scope, you can open a new issue that tracks the feedback and links back to the original comment. For more information, see [AUTOTITLE](/issues/tracking-your-work-with-issues/creating-an-issue). #### Discovering and navigating conversations diff --git a/data/reusables/pull_requests/retention-checks-data.md b/data/reusables/pull_requests/retention-checks-data.md index 71f0d6f5e47b..c81ab30adc9a 100644 --- a/data/reusables/pull_requests/retention-checks-data.md +++ b/data/reusables/pull_requests/retention-checks-data.md @@ -4,7 +4,7 @@ {% elsif ghes %} -Site administrators can control the retention policy for checks data on {% data variables.location.product_location %}. For more information, see "[AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-applications#enabling-retention-policy-for-checks)." +Site administrators can control the retention policy for checks data on {% data variables.location.product_location %}. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/configuring-applications#enabling-retention-policy-for-checks). {% endif %} diff --git a/data/reusables/pull_requests/you-can-auto-merge.md b/data/reusables/pull_requests/you-can-auto-merge.md index 4810523eb6d4..c9ca23269f38 100644 --- a/data/reusables/pull_requests/you-can-auto-merge.md +++ b/data/reusables/pull_requests/you-can-auto-merge.md @@ -1 +1 @@ -You can configure a pull request to merge automatically when all merge requirements are met. For more information, see "[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request)." +You can configure a pull request to merge automatically when all merge requirements are met. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request). diff --git a/data/reusables/rai/code-scanning/copilot-workspaces-prs-autofix-note.md b/data/reusables/rai/code-scanning/copilot-workspaces-prs-autofix-note.md index 50ca4606a057..0dda0ad76e85 100644 --- a/data/reusables/rai/code-scanning/copilot-workspaces-prs-autofix-note.md +++ b/data/reusables/rai/code-scanning/copilot-workspaces-prs-autofix-note.md @@ -1,6 +1,6 @@ {% ifversion copilot-hadron %} > [!NOTE] -> If you are part of the {% data variables.release-phases.public_preview %} of {% data variables.product.prodname_copilot_workspace_pr_short %}, you can click **Open in Workspace** on a {% data variables.product.prodname_copilot_autofix_short %} suggestion to open a {% data variables.product.prodname_copilot_workspace %} directly on {% data variables.product.github %}. {% data variables.product.prodname_copilot_workspace_pr_short %} allows you to view and edit all {% data variables.product.prodname_copilot_autofix_short %} suggestions and other review suggestions for the pull request, run CI tests to confirm they still pass, and then apply multiple changes in one commit. For more information, see "[AUTOTITLE](/copilot/using-github-copilot/using-github-copilot-for-pull-requests/using-copilot-to-help-you-work-on-a-pull-request)." +> If you are part of the {% data variables.release-phases.public_preview %} of {% data variables.product.prodname_copilot_workspace_pr_short %}, you can click **Open in Workspace** on a {% data variables.product.prodname_copilot_autofix_short %} suggestion to open a {% data variables.product.prodname_copilot_workspace %} directly on {% data variables.product.github %}. {% data variables.product.prodname_copilot_workspace_pr_short %} allows you to view and edit all {% data variables.product.prodname_copilot_autofix_short %} suggestions and other review suggestions for the pull request, run CI tests to confirm they still pass, and then apply multiple changes in one commit. For more information, see [AUTOTITLE](/copilot/using-github-copilot/using-github-copilot-for-pull-requests/using-copilot-to-help-you-work-on-a-pull-request). {% endif %} diff --git a/data/reusables/rai/copilot-dotcom-feedback-collection.md b/data/reusables/rai/copilot-dotcom-feedback-collection.md index 6125a878d427..d6026026fc93 100644 --- a/data/reusables/rai/copilot-dotcom-feedback-collection.md +++ b/data/reusables/rai/copilot-dotcom-feedback-collection.md @@ -1 +1 @@ -> [!NOTE] The ability to provide feedback to {% data variables.product.prodname_dotcom %} about {% data variables.product.prodname_copilot_for_prs %} is dependent on enterprise settings. For more information, see "[AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise)." +> [!NOTE] The ability to provide feedback to {% data variables.product.prodname_dotcom %} about {% data variables.product.prodname_copilot_for_prs %} is dependent on enterprise settings. For more information, see [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise). diff --git a/data/reusables/rai/copilot/about-copilot-chat-ide.md b/data/reusables/rai/copilot/about-copilot-chat-ide.md index adf40ef551e0..8f8be0d31572 100644 --- a/data/reusables/rai/copilot/about-copilot-chat-ide.md +++ b/data/reusables/rai/copilot/about-copilot-chat-ide.md @@ -1,6 +1,6 @@ ## About {% data variables.product.prodname_copilot_chat %} -{% data variables.product.prodname_copilot_chat %} is a chat interface that lets you interact with {% data variables.product.prodname_copilot %}, to ask and receive answers to coding-related questions within the {% data variables.product.github %} website and supported IDEs. The chat interface provides access to coding information and support without requiring you to navigate documentation or search online forums. For more information, see "[AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot)." +{% data variables.product.prodname_copilot_chat %} is a chat interface that lets you interact with {% data variables.product.prodname_copilot %}, to ask and receive answers to coding-related questions within the {% data variables.product.github %} website and supported IDEs. The chat interface provides access to coding information and support without requiring you to navigate documentation or search online forums. For more information, see [AUTOTITLE](/copilot/about-github-copilot/what-is-github-copilot). {% data variables.product.prodname_copilot_chat %} can answer a wide range of coding-related questions on topics including syntax, programming concepts, test cases, debugging, and more. {% data variables.product.prodname_copilot_chat %} is not designed to answer non-coding questions or provide general information on topics outside of coding. diff --git a/data/reusables/rai/copilot/about-copilot-chat-in-mobile.md b/data/reusables/rai/copilot/about-copilot-chat-in-mobile.md index c69869471835..9ea623370c5c 100644 --- a/data/reusables/rai/copilot/about-copilot-chat-in-mobile.md +++ b/data/reusables/rai/copilot/about-copilot-chat-in-mobile.md @@ -14,14 +14,14 @@ The language model generates a response based on its analysis of the input promp The response generated by {% data variables.product.prodname_copilot_chat_short %} is formatted and presented to the user. {% data variables.product.prodname_copilot_chat_short %} may use syntax highlighting, indentation, and other formatting features to add clarity to the generated response. Depending upon the type of question from the user, links to context that the model used when generating a response, such as source code files or documentation, may also be provided. -{% data variables.product.prodname_copilot_chat %} is intended to provide you with the most relevant answer to your question. However, it may not always provide the answer you are looking for. Users of {% data variables.product.prodname_copilot_chat_short %} are responsible for reviewing and validating responses generated by the system to ensure they are accurate and appropriate. For more information on improving the performance of {% data variables.product.prodname_copilot_mobile_short %}, see "[Improving performance for {% data variables.product.prodname_copilot_mobile_short %}](#improving-performance-for-copilot-chat-in-github-mobile)." +{% data variables.product.prodname_copilot_chat %} is intended to provide you with the most relevant answer to your question. However, it may not always provide the answer you are looking for. Users of {% data variables.product.prodname_copilot_chat_short %} are responsible for reviewing and validating responses generated by the system to ensure they are accurate and appropriate. For more information on improving the performance of {% data variables.product.prodname_copilot_mobile_short %}, see [Improving performance for {% data variables.product.prodname_copilot_mobile_short %}](#improving-performance-for-copilot-chat-in-github-mobile). ## Differences per {% data variables.product.prodname_copilot %} plan The options available to you in {% data variables.product.prodname_copilot_mobile_short %} vary depending on the {% data variables.product.prodname_copilot %} plan you are using. * Only people with a {% data variables.product.prodname_copilot_enterprise %} subscription can access and have conversations using the data from private indexed repositories. -* If you have a {% data variables.product.prodname_copilot_enterprise %} subscription and you have enabled Bing search integration ({% data variables.release-phases.public_preview %}), {% data variables.product.prodname_copilot_mobile_short %} may respond using information based on the results of a Bing search. For information on how to enable or disable Bing search integration, see "[AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} +* If you have a {% data variables.product.prodname_copilot_enterprise %} subscription and you have enabled Bing search integration ({% data variables.release-phases.public_preview %}), {% data variables.product.prodname_copilot_mobile_short %} may respond using information based on the results of a Bing search. For information on how to enable or disable Bing search integration, see [AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}.{% endif %} * In addition to general coding conversations or conversations about a single file, people with a {% data variables.product.prodname_copilot_pro_short %} subscription have the ability to discuss top popular public repositories using embeddings. If you do not have a {% data variables.product.prodname_copilot %} subscription, you can purchase a {% data variables.product.prodname_copilot_pro_short %} subscription directly in the iOS version of {% data variables.product.prodname_mobile %}, or in the Google Play Store for the Android version of {% data variables.product.prodname_mobile %}. @@ -50,7 +50,7 @@ You can ask {% data variables.product.prodname_copilot_chat_short %} for help or ## Improving performance for {% data variables.product.prodname_copilot_mobile_short %} -{% data variables.product.prodname_copilot_chat_short %} can support a wide range of practical applications like code generation, code analysis, and code fixes, each with different performance metrics and mitigation strategies. To enhance performance and address some of the limitations of {% data variables.product.prodname_copilot_chat_short %}, there are various measures that you can adopt. For more information on the limitations of {% data variables.product.prodname_copilot_mobile_short %}, see "[Limitations of {% data variables.product.prodname_copilot_mobile_short %}](#limitations-of-copilot-chat-in-github-mobile)." +{% data variables.product.prodname_copilot_chat_short %} can support a wide range of practical applications like code generation, code analysis, and code fixes, each with different performance metrics and mitigation strategies. To enhance performance and address some of the limitations of {% data variables.product.prodname_copilot_chat_short %}, there are various measures that you can adopt. For more information on the limitations of {% data variables.product.prodname_copilot_mobile_short %}, see [Limitations of {% data variables.product.prodname_copilot_mobile_short %}](#limitations-of-copilot-chat-in-github-mobile). ### Keep your prompts on topic diff --git a/data/reusables/rai/copilot/copilot-chat-ide-improving-performance.md b/data/reusables/rai/copilot/copilot-chat-ide-improving-performance.md index 39ca5395cb5f..c164ae683e4c 100644 --- a/data/reusables/rai/copilot/copilot-chat-ide-improving-performance.md +++ b/data/reusables/rai/copilot/copilot-chat-ide-improving-performance.md @@ -1,6 +1,6 @@ ## Improving performance for {% data variables.product.prodname_copilot_chat %} -{% data variables.product.prodname_copilot_chat_short %} can support a wide range of practical applications like code generation, code analysis, and code fixes, each with different performance metrics and mitigation strategies. To enhance performance and address some of the limitations of {% data variables.product.prodname_copilot_chat_short %}, there are various measures that you can adopt. For more information on the limitations of {% data variables.product.prodname_copilot_chat_short %}, see "[Limitations of {% data variables.product.prodname_copilot_chat %}](/copilot/github-copilot-chat/copilot-chat-in-ides/about-github-copilot-chat-in-your-ide#limitations-of-github-copilot-chat)." +{% data variables.product.prodname_copilot_chat_short %} can support a wide range of practical applications like code generation, code analysis, and code fixes, each with different performance metrics and mitigation strategies. To enhance performance and address some of the limitations of {% data variables.product.prodname_copilot_chat_short %}, there are various measures that you can adopt. For more information on the limitations of {% data variables.product.prodname_copilot_chat_short %}, see [Limitations of {% data variables.product.prodname_copilot_chat %}](/copilot/github-copilot-chat/copilot-chat-in-ides/about-github-copilot-chat-in-your-ide#limitations-of-github-copilot-chat). ### Keep your prompts on topic diff --git a/data/reusables/rai/copilot/copilot-chat-ide-leveraging-web-search.md b/data/reusables/rai/copilot/copilot-chat-ide-leveraging-web-search.md index c3fe82b2d504..f25a17409c1c 100644 --- a/data/reusables/rai/copilot/copilot-chat-ide-leveraging-web-search.md +++ b/data/reusables/rai/copilot/copilot-chat-ide-leveraging-web-search.md @@ -5,6 +5,6 @@ When you use the `@github` chat participant, {% data variables.product.prodname_copilot_chat %} can use a Bing search to help answer your question if this has been enabled by your administrator. -Your {% data variables.product.prodname_enterprise %} administrator can enable Bing for your whole enterprise, or can delegate this decision to the organizational administrator. For more information, see "[AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-copilot-in-your-enterprise)." +Your {% data variables.product.prodname_enterprise %} administrator can enable Bing for your whole enterprise, or can delegate this decision to the organizational administrator. For more information, see [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-copilot-in-your-enterprise). When leveraging Bing, {% data variables.product.prodname_copilot_short %} will use the content of your prompt, as well as additional available context, to generate a Bing search query on your behalf that is sent to the Bing Search API. {% data variables.product.prodname_copilot_short %} will provide a link to the search results with its response. The search query sent to Bing is governed by [Microsoft's Privacy Statement](https://privacy.microsoft.com/en-us/privacystatement). diff --git a/data/reusables/rai/copilot/copilot-chat-ide-limitations.md b/data/reusables/rai/copilot/copilot-chat-ide-limitations.md index 1e2b29ca5dde..a64f20dac2ba 100644 --- a/data/reusables/rai/copilot/copilot-chat-ide-limitations.md +++ b/data/reusables/rai/copilot/copilot-chat-ide-limitations.md @@ -22,7 +22,7 @@ Depending on factors such as your codebase and input data, you may experience di If you have disabled suggestions that match public code then {% data variables.product.prodname_copilot_chat_short %} utilizes filters that prevent it from showing code that matches code found in public repositories on {% data variables.product.prodname_dotcom %}. However, you should always take the same precautions as you would with any code you write that uses material you did not independently originate, including precautions to ensure its suitability. These include rigorous testing, IP scanning, and checking for security vulnerabilities. You should make sure your IDE or editor does not automatically compile or run generated code before you review it. -If you have enabled suggestions that match public code then {% data variables.product.prodname_copilot_chat_short %} displays a message if matching code is found. The message includes a link that allows you to show the details of the matched code, and any license details that were found, in the {% data variables.product.prodname_vscode_shortname %} editor. For more information, see "[AUTOTITLE](/copilot/using-github-copilot/finding-public-code-that-matches-github-copilot-suggestions)." +If you have enabled suggestions that match public code then {% data variables.product.prodname_copilot_chat_short %} displays a message if matching code is found. The message includes a link that allows you to show the details of the matched code, and any license details that were found, in the {% data variables.product.prodname_vscode_shortname %} editor. For more information, see [AUTOTITLE](/copilot/using-github-copilot/finding-public-code-that-matches-github-copilot-suggestions). {% endvscode %} diff --git a/data/reusables/rai/copilot/copilot-chat-ide-next-steps.md b/data/reusables/rai/copilot/copilot-chat-ide-next-steps.md index 4f8cbcc8c398..c67df6d44097 100644 --- a/data/reusables/rai/copilot/copilot-chat-ide-next-steps.md +++ b/data/reusables/rai/copilot/copilot-chat-ide-next-steps.md @@ -2,11 +2,11 @@ For details of how to use {% data variables.product.prodname_copilot_chat %}, see: -* "[AUTOTITLE](/copilot/github-copilot-chat/copilot-chat-in-ides/using-github-copilot-chat-in-your-ide)" -* "[AUTOTITLE](/enterprise-cloud@latest/copilot/github-copilot-chat/copilot-chat-in-github/using-github-copilot-chat-in-githubcom)"{% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} +* [AUTOTITLE](/copilot/github-copilot-chat/copilot-chat-in-ides/using-github-copilot-chat-in-your-ide) +* [AUTOTITLE](/enterprise-cloud@latest/copilot/github-copilot-chat/copilot-chat-in-github/using-github-copilot-chat-in-githubcom){% ifversion fpt %} in the {% data variables.product.prodname_ghe_cloud %} documentation.{% endif %} ## Further reading -* "[AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#github-copilot)" -* "[AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-copilot-pre-release-terms)" +* [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-terms-for-additional-products-and-features#github-copilot) +* [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-copilot-pre-release-terms) * [{% data variables.product.prodname_copilot %} Trust Center](https://resources.github.com/copilot-trust-center/) diff --git a/data/reusables/rai/copilot/copilot-chat-ide-output-formatting.md b/data/reusables/rai/copilot/copilot-chat-ide-output-formatting.md index 139cc57671e2..9c98e2e7ecfe 100644 --- a/data/reusables/rai/copilot/copilot-chat-ide-output-formatting.md +++ b/data/reusables/rai/copilot/copilot-chat-ide-output-formatting.md @@ -2,4 +2,4 @@ The response generated by {% data variables.product.prodname_copilot_chat_short %} is formatted and presented to the user. {% data variables.product.prodname_copilot_chat_short %} may use syntax highlighting, indentation, and other formatting features to add clarity to the generated response. Depending upon the type of question from the user, links to context that the model used when generating a response, such as source code files or documentation, may also be provided. -{% data variables.product.prodname_copilot_chat %} is intended to provide you with the most relevant answer to your question. However, it may not always provide the answer you are looking for. Users of {% data variables.product.prodname_copilot_chat_short %} are responsible for reviewing and validating responses generated by the system to ensure they are accurate and appropriate. Additionally, as part of our product development process, we undertake red teaming to understand and improve the safety of {% data variables.product.prodname_copilot_chat_short %}. Input prompts and output completions are run through content filters. The content filtering system detects and prevents the output on specific categories of content including harmful, offensive, or off-topic content. For more information on improving the performance of {% data variables.product.prodname_copilot_chat %}, see "[Improving performance for {% data variables.product.prodname_copilot_chat %}](/copilot/github-copilot-chat/copilot-chat-in-ides/about-github-copilot-chat-in-your-ide#improving-performance-for-github-copilot-chat)." +{% data variables.product.prodname_copilot_chat %} is intended to provide you with the most relevant answer to your question. However, it may not always provide the answer you are looking for. Users of {% data variables.product.prodname_copilot_chat_short %} are responsible for reviewing and validating responses generated by the system to ensure they are accurate and appropriate. Additionally, as part of our product development process, we undertake red teaming to understand and improve the safety of {% data variables.product.prodname_copilot_chat_short %}. Input prompts and output completions are run through content filters. The content filtering system detects and prevents the output on specific categories of content including harmful, offensive, or off-topic content. For more information on improving the performance of {% data variables.product.prodname_copilot_chat %}, see [Improving performance for {% data variables.product.prodname_copilot_chat %}](/copilot/github-copilot-chat/copilot-chat-in-ides/about-github-copilot-chat-in-your-ide#improving-performance-for-github-copilot-chat). diff --git a/data/reusables/rai/copilot/copilot-chat-ide-use-cases.md b/data/reusables/rai/copilot/copilot-chat-ide-use-cases.md index 7122b6ca0ace..81859ad8426f 100644 --- a/data/reusables/rai/copilot/copilot-chat-ide-use-cases.md +++ b/data/reusables/rai/copilot/copilot-chat-ide-use-cases.md @@ -6,7 +6,7 @@ {% data variables.product.prodname_copilot_chat_short %} can help you write unit test cases by generating code snippets based on the code open in the editor or the code snippet you highlight in the editor. This may help you write test cases without spending as much time on repetitive tasks. For example, if you are writing a test case for a specific function, you can use {% data variables.product.prodname_copilot_chat_short %} to suggest possible input parameters and expected output values based on the function's signature and body. {% data variables.product.prodname_copilot_chat_short %} can also suggest assertions that ensure the function is working correctly, based on the code's context and semantics. -{% data variables.product.prodname_copilot_chat_short %} can also help you write test cases for edge cases and boundary conditions that might be difficult to identify manually. For instance, {% data variables.product.prodname_copilot_chat_short %} can suggest test cases for error handling, null values, or unexpected input types, helping you ensure your code is robust and resilient. However, it is important to note that generated test cases may not cover all possible scenarios, and manual testing and code review are still necessary to ensure the quality of the code. For more information on generating unit test cases, see "[Asking {% data variables.product.prodname_copilot_chat %} questions about your code](/copilot/github-copilot-chat/copilot-chat-in-ides/using-github-copilot-chat-in-your-ide#asking-github-copilot-chat-questions-about-your-code)." +{% data variables.product.prodname_copilot_chat_short %} can also help you write test cases for edge cases and boundary conditions that might be difficult to identify manually. For instance, {% data variables.product.prodname_copilot_chat_short %} can suggest test cases for error handling, null values, or unexpected input types, helping you ensure your code is robust and resilient. However, it is important to note that generated test cases may not cover all possible scenarios, and manual testing and code review are still necessary to ensure the quality of the code. For more information on generating unit test cases, see [Asking {% data variables.product.prodname_copilot_chat %} questions about your code](/copilot/github-copilot-chat/copilot-chat-in-ides/using-github-copilot-chat-in-your-ide#asking-github-copilot-chat-questions-about-your-code). ### Explaining code and suggesting improvements diff --git a/data/reusables/rai/copilot/enterprise-fpt-link.md b/data/reusables/rai/copilot/enterprise-fpt-link.md index c1eed7af89fd..e3f6761133dc 100644 --- a/data/reusables/rai/copilot/enterprise-fpt-link.md +++ b/data/reusables/rai/copilot/enterprise-fpt-link.md @@ -1 +1 @@ -> [!NOTE] You are currently viewing the documentation for Free, Pro, and Team plans. {% data variables.product.prodname_copilot_enterprise %} is only available to customers on the {% data variables.product.prodname_ghe_cloud %} plan. For full documentation of {% data variables.product.prodname_copilot_enterprise_short %}, see "[AUTOTITLE](/enterprise-cloud@latest/copilot/github-copilot-enterprise)." in the {% data variables.product.prodname_ghe_cloud %} documentation. +> [!NOTE] You are currently viewing the documentation for Free, Pro, and Team plans. {% data variables.product.prodname_copilot_enterprise %} is only available to customers on the {% data variables.product.prodname_ghe_cloud %} plan. For full documentation of {% data variables.product.prodname_copilot_enterprise_short %}, see [AUTOTITLE](/enterprise-cloud@latest/copilot/github-copilot-enterprise) in the {% data variables.product.prodname_ghe_cloud %} documentation. diff --git a/data/reusables/release-notes/2023-10-git-push-made-but-not-registered.md b/data/reusables/release-notes/2023-10-git-push-made-but-not-registered.md index 1deff098f8ba..a7f9e39404c1 100644 --- a/data/reusables/release-notes/2023-10-git-push-made-but-not-registered.md +++ b/data/reusables/release-notes/2023-10-git-push-made-but-not-registered.md @@ -5,6 +5,6 @@ CA certificate key too weak ``` To resolve this issue, confirm that your certificate complies -with level 2 of the OpenSSL security specification. For more information, see [SSL_CTX_set_security_level](https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_security_level.html#DEFAULT-CALLBACK-BEHAVIOUR) in the OpenSSL docs. For more information about reviewing your instance's logs, see "[AUTOTITLE](/admin/monitoring-and-managing-your-instance/monitoring-your-instance/about-system-logs#system-logs-in-the-systemd-journal)." +with level 2 of the OpenSSL security specification. For more information, see [SSL_CTX_set_security_level](https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_security_level.html#DEFAULT-CALLBACK-BEHAVIOUR) in the OpenSSL docs. For more information about reviewing your instance's logs, see [AUTOTITLE](/admin/monitoring-and-managing-your-instance/monitoring-your-instance/about-system-logs#system-logs-in-the-systemd-journal). -If the error appears in `babeld` logs because your TLS certificate does not comply with level 2 of the specification, you must create and upload a new certificate with stronger security before you upgrade to GitHub Enterprise Server 3.10 or later. For more information, see "[AUTOTITLE](/admin/configuration/hardening-security-for-your-enterprise/configuring-tls)." +If the error appears in `babeld` logs because your TLS certificate does not comply with level 2 of the specification, you must create and upload a new certificate with stronger security before you upgrade to GitHub Enterprise Server 3.10 or later. For more information, see [AUTOTITLE](/admin/configuration/hardening-security-for-your-enterprise/configuring-tls). diff --git a/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-io-utilization-increase.md b/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-io-utilization-increase.md index bdd1fc88b176..22b07ac66407 100644 --- a/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-io-utilization-increase.md +++ b/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-io-utilization-increase.md @@ -1,3 +1,3 @@ After an administrator upgrades from {% data variables.product.prodname_ghe_server %} 3.7 or 3.8 to 3.9 or 3.10, I/O utilization will increase, and in some cases the instance's performance will be impacted. Reduced performance is due to the database server being upgraded from MySQL 5.7 to MySQL 8.0. -For more information, see "[AUTOTITLE](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/known-issues-with-upgrades-to-your-instance)." +For more information, see [AUTOTITLE](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/known-issues-with-upgrades-to-your-instance). diff --git a/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-mysql-cannot-start-up.md b/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-mysql-cannot-start-up.md index 06e2431df28d..5afe7868cd44 100644 --- a/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-mysql-cannot-start-up.md +++ b/data/reusables/release-notes/upgrade-to-3-9-or-to-3-10-mysql-cannot-start-up.md @@ -1 +1 @@ -After an administrator upgrades from {% data variables.product.prodname_ghe_server %} 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "[AUTOTITLE](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/known-issues-with-upgrades-to-your-instance#mysql-does-not-start-after-upgrade-to-github-enterprise-server-39-or-310)." +After an administrator upgrades from {% data variables.product.prodname_ghe_server %} 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see [AUTOTITLE](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/known-issues-with-upgrades-to-your-instance#mysql-does-not-start-after-upgrade-to-github-enterprise-server-39-or-310). diff --git a/data/reusables/releases/finish-release.md b/data/reusables/releases/finish-release.md index f480f3ee90fe..0ebf9b848d25 100644 --- a/data/reusables/releases/finish-release.md +++ b/data/reusables/releases/finish-release.md @@ -11,5 +11,5 @@ 1. If you're ready to publicize your release, click **Publish release**. To work on the release later, click **Save draft**. {%- ifversion fpt or ghec %} - You can then view your published or draft releases in the releases feed for your repository. For more information, see "[AUTOTITLE](/repositories/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags)." + You can then view your published or draft releases in the releases feed for your repository. For more information, see [AUTOTITLE](/repositories/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags). {%- endif %} diff --git a/data/reusables/reminders/ignore-drafts.md b/data/reusables/reminders/ignore-drafts.md index 0e9d4cb3e78b..731b88b376e7 100644 --- a/data/reusables/reminders/ignore-drafts.md +++ b/data/reusables/reminders/ignore-drafts.md @@ -1 +1 @@ -1. Optionally, to exclude draft pull requests from scheduled reminders, select **Ignore drafts**. For more information, see "[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests)." +1. Optionally, to exclude draft pull requests from scheduled reminders, select **Ignore drafts**. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests). diff --git a/data/reusables/repositories/create-ruleset-step.md b/data/reusables/repositories/create-ruleset-step.md index ae507c7511dd..c2ecd2c69ac5 100644 --- a/data/reusables/repositories/create-ruleset-step.md +++ b/data/reusables/repositories/create-ruleset-step.md @@ -1,7 +1,6 @@ {%- ifversion push-rulesets %} 1. Click **New ruleset**. -1. To create a ruleset targeting branches, click **New branch ruleset**. -1. Alternatively, to create a ruleset targeting tags, click **New tag ruleset**. +1. To create a ruleset targeting branches, click **New branch ruleset**. Alternatively, to create a ruleset targeting tags, click **New tag ruleset**. {% else %} 1. You can create a ruleset targeting branches, or a ruleset targeting tags. * To create a ruleset targeting branches, click **New branch ruleset**. diff --git a/data/reusables/repositories/import-a-ruleset-conceptual.md b/data/reusables/repositories/import-a-ruleset-conceptual.md index b002fbac6bd7..66f51a4e8e56 100644 --- a/data/reusables/repositories/import-a-ruleset-conceptual.md +++ b/data/reusables/repositories/import-a-ruleset-conceptual.md @@ -1 +1 @@ -You can import a ruleset from another repository or organization using a JSON file. This can be useful if you want to apply the same ruleset to multiple repositories or organizations. +You can import an existing ruleset using a JSON file. This can be useful if you want to apply the same ruleset to multiple repositories or organizations. diff --git a/data/reusables/repositories/legacy-issue-template-tip.md b/data/reusables/repositories/legacy-issue-template-tip.md index 2e4801bfe1fc..b4f3a6f294ec 100644 --- a/data/reusables/repositories/legacy-issue-template-tip.md +++ b/data/reusables/repositories/legacy-issue-template-tip.md @@ -1,2 +1,2 @@ > [!WARNING] -> This is the legacy workflow to create an issue template. We recommend using the upgraded multiple issue template builder or issue forms to create issue templates. For more information, see "[AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates)." +> This is the legacy workflow to create an issue template. We recommend using the upgraded multiple issue template builder or issue forms to create issue templates. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates). diff --git a/data/reusables/repositories/push-rules-fork-network-note.md b/data/reusables/repositories/push-rules-fork-network-note.md index 51b2da98df4f..78f2b1bd0a59 100644 --- a/data/reusables/repositories/push-rules-fork-network-note.md +++ b/data/reusables/repositories/push-rules-fork-network-note.md @@ -1,2 +1,2 @@ > [!NOTE] -> This ruleset will enforce push restrictions for this repository's entire fork network. +> This ruleset will enforce push restrictions for a repository's entire fork network. diff --git a/data/reusables/repositories/repo-rules-permissions.md b/data/reusables/repositories/repo-rules-permissions.md index d2dc53482c82..a0884e89b26d 100644 --- a/data/reusables/repositories/repo-rules-permissions.md +++ b/data/reusables/repositories/repo-rules-permissions.md @@ -1 +1 @@ -Anyone with read access to a repository can view the repository's rulesets. People with admin access to a repository{% ifversion edit-repository-rules %}, or a custom role with the "edit repository rules" permission,{% endif %} can create, edit, and delete rulesets for a repository{% ifversion fpt %}.{% else %} and view ruleset insights. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/about-custom-repository-roles).{% endif %} +Anyone with read access to a repository can view the repository's rulesets. People with admin access to a repository, or a custom role with the "edit repository rules" permission, can create, edit, and delete rulesets for a repository{% ifversion fpt %}.{% else %} and view ruleset insights. For more information, see [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/about-custom-repository-roles).{% endif %} diff --git a/data/reusables/rest-api/about-api-versions.md b/data/reusables/rest-api/about-api-versions.md index c0397de37751..68b9ee21f2ee 100644 --- a/data/reusables/rest-api/about-api-versions.md +++ b/data/reusables/rest-api/about-api-versions.md @@ -2,23 +2,23 @@ The {% data variables.product.product_name %} REST API is versioned. The API ver Any breaking changes will be released in a new API version. Breaking changes are changes that can potentially break an integration. Breaking changes include: -* removing an entire operation -* removing or renaming a parameter -* removing or renaming a response field -* adding a new required parameter -* making a previously optional parameter required -* changing the type of a parameter or response field -* removing enum values -* adding a new validation rule to an existing parameter -* changing authentication or authorization requirements +* Removing an entire operation +* Removing or renaming a parameter +* Removing or renaming a response field +* Adding a new required parameter +* Making a previously optional parameter required +* Changing the type of a parameter or response field +* Removing enum values +* Adding a new validation rule to an existing parameter +* Changing authentication or authorization requirements Any additive (non-breaking) changes will be available in all supported API versions. Additive changes are changes that should not break an integration. Additive changes include: -* adding an operation -* adding an optional parameter -* adding an optional request header -* adding a response field -* adding a response header -* adding enum values +* Adding an operation +* Adding an optional parameter +* Adding an optional request header +* Adding a response field +* Adding a response header +* Adding enum values When a new REST API version is released, the previous API version will be supported for at least 24 more months following the release of the new API version. diff --git a/data/reusables/scim/public-scim-put-or-patch-group-audit-log-events.md b/data/reusables/scim/public-scim-put-or-patch-group-audit-log-events.md index 51c689c2d6d6..d593623a97ba 100644 --- a/data/reusables/scim/public-scim-put-or-patch-group-audit-log-events.md +++ b/data/reusables/scim/public-scim-put-or-patch-group-audit-log-events.md @@ -1 +1 @@ -
    • `external_group.update`
    • If request updates the group's name, `external_group.update_display_name`
    • If request adds a user to the group, `external_group.add_member`
    • If request removes a user from the group, `external_group.remove_member`
    • If request succeeds, `external_group.scim_api_success`
    • If request fails, `external_group.scim_api_failure`
    • Additional events may appear in the audit log depending on whether the user is already a member of the organization with the team that you linked to the IdP group. For more information, see "[Additional audit log events for changes to IdP groups](#additional-audit-log-events-for-changes-to-idp-groups)."
    +
    • `external_group.update`
    • If request updates the group's name, `external_group.update_display_name`
    • If request adds a user to the group, `external_group.add_member`
    • If request removes a user from the group, `external_group.remove_member`
    • If request succeeds, `external_group.scim_api_success`
    • If request fails, `external_group.scim_api_failure`
    • Additional events may appear in the audit log depending on whether the user is already a member of the organization with the team that you linked to the IdP group. For more information, see [Additional audit log events for changes to IdP groups](#additional-audit-log-events-for-changes-to-idp-groups).
    diff --git a/data/reusables/secret-scanning/alert-type-links.md b/data/reusables/secret-scanning/alert-type-links.md index d8947273130d..2726f22f8340 100644 --- a/data/reusables/secret-scanning/alert-type-links.md +++ b/data/reusables/secret-scanning/alert-type-links.md @@ -1 +1 @@ -For more information, see {% ifversion fpt or ghec %}"[AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning/about-alerts#about-user-alerts){% elsif ghes %}[AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning/about-alerts#about-secret-scanning-alerts){% endif %}. +For more information, see {% ifversion fpt or ghec %}[AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning/about-alerts#about-user-alerts){% elsif ghes %}[AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning/about-alerts#about-secret-scanning-alerts){% endif %}. diff --git a/data/reusables/secret-scanning/push-protection-allow-email.md b/data/reusables/secret-scanning/push-protection-allow-email.md index 6d3e1057a141..90c54fdc0cf4 100644 --- a/data/reusables/secret-scanning/push-protection-allow-email.md +++ b/data/reusables/secret-scanning/push-protection-allow-email.md @@ -1,3 +1 @@ -{% ifversion secret-scanning-push-protection-email %} When a contributor bypasses a push protection block for a secret, {% data variables.product.prodname_dotcom %} also sends an email alert to the organization owners, security managers, and repository administrators who have opted in for email notifications. -{% endif %} diff --git a/data/reusables/secret-scanning/secret-scanning-configure-notifications.md b/data/reusables/secret-scanning/secret-scanning-configure-notifications.md index 01b1694a2cf3..08f14c7b62cc 100644 --- a/data/reusables/secret-scanning/secret-scanning-configure-notifications.md +++ b/data/reusables/secret-scanning/secret-scanning-configure-notifications.md @@ -1,4 +1,4 @@ -When a new secret is detected, {% data variables.product.product_name %} notifies all users with access to security alerts for the repository according to their notification preferences. These users include: +When a new secret is detected, {% data variables.product.github %} notifies all users with access to security alerts for the repository according to their notification preferences. These users include: * Repository administrators * Security managers * Users with custom roles with read/write access @@ -9,5 +9,5 @@ When a new secret is detected, {% data variables.product.product_name %} notifie You will receive an email notification if: * You are watching the repository. -* You have enabled notifications for "All Activity", or for custom "Security alerts" on the repository{% ifversion secret-scanning-notification-settings %}. -* In your notification settings, under "Subscriptions", then under "Watching", you have selected to receive notifications by email.{% endif %} +* You have enabled notifications for "All Activity", or for custom "Security alerts" on the repository. +* In your notification settings, under "Subscriptions", then under "Watching", you have selected to receive notifications by email. diff --git a/data/reusables/secret-scanning/secret-scanning-user-owned-repos-beta.md b/data/reusables/secret-scanning/secret-scanning-user-owned-repos-beta.md index 9d81e8bd9a08..6c11de8f2791 100644 --- a/data/reusables/secret-scanning/secret-scanning-user-owned-repos-beta.md +++ b/data/reusables/secret-scanning/secret-scanning-user-owned-repos-beta.md @@ -1 +1 @@ -{% ifversion secret-scanning-user-owned-repos %}Additionally, {% data variables.secret-scanning.user_alerts %}{% ifversion ghes %} is{% else %} are{% endif %} available and in {% data variables.release-phases.public_preview %} on user-owned repositories{% ifversion ghec %} for {% data variables.product.prodname_ghe_cloud %} with {% data variables.product.prodname_emus %}{% else %} in {% data variables.product.product_name %}{% endif %}.{% endif %} +{% ifversion secret-scanning-user-owned-repos %}Additionally, {% data variables.secret-scanning.user_alerts %}{% ifversion ghes %} is{% else %} are{% endif %} available and in {% data variables.release-phases.public_preview %} on user-owned repositories{% ifversion ghec %} for {% data variables.product.prodname_ghe_cloud %} with {% data variables.product.prodname_emus %}{% else %} in {% data variables.product.github %}{% endif %}.{% endif %} diff --git a/data/reusables/security-advisory/private-vulnerability-reporting-configure-notifications.md b/data/reusables/security-advisory/private-vulnerability-reporting-configure-notifications.md index ff13ca9f27b7..76c114aed806 100644 --- a/data/reusables/security-advisory/private-vulnerability-reporting-configure-notifications.md +++ b/data/reusables/security-advisory/private-vulnerability-reporting-configure-notifications.md @@ -1,4 +1,4 @@ -When a new vulnerability is privately reported on a repository where private vulnerability reporting is enabled, {% data variables.product.product_name %} notifies repository maintainers and security managers if: +When a new vulnerability is privately reported on a repository where private vulnerability reporting is enabled, {% data variables.product.github %} notifies repository maintainers and security managers if: * They're watching the repository for all activity. * They have notifications enabled for the repository. diff --git a/data/reusables/sponsors/org-email-updates.md b/data/reusables/sponsors/org-email-updates.md index b01bcd2f038a..78a013d3c5c2 100644 --- a/data/reusables/sponsors/org-email-updates.md +++ b/data/reusables/sponsors/org-email-updates.md @@ -1 +1 @@ -If your organization chooses to receive email updates from sponsored accounts, you can select a specific email address to receive those emails. For more information, see "[Managing updates from accounts your organization sponsors](/organizations/managing-organization-settings/managing-updates-from-accounts-your-organization-sponsors)." +If your organization chooses to receive email updates from sponsored accounts, you can select a specific email address to receive those emails. For more information, see [Managing updates from accounts your organization sponsors](/organizations/managing-organization-settings/managing-updates-from-accounts-your-organization-sponsors). diff --git a/data/reusables/support/help_resources.md b/data/reusables/support/help_resources.md index d06da9d99df6..0c584baa1b87 100644 --- a/data/reusables/support/help_resources.md +++ b/data/reusables/support/help_resources.md @@ -1,7 +1,7 @@ For questions, bug reports, and discussions about {% data variables.product.prodname_github_apps %}, {% data variables.product.prodname_oauth_apps %}, and API development, explore the {% data reusables.support.prodname_support_forum_with_url %}. The discussions are moderated and maintained by {% data variables.product.company_short %} staff, and answered by the {% data variables.product.company_short %} community. Consider reaching out to [GitHub Support](https://support.github.com/) directly using the contact form for: -* guaranteed response from {% data variables.product.product_name %} staff -* support requests involving sensitive data or private concerns -* feature requests -* feedback about {% data variables.product.product_name %} products +* Guaranteed response from {% data variables.product.product_name %} staff +* Support requests involving sensitive data or private concerns +* Feature requests +* Feedback about {% data variables.product.product_name %} products diff --git a/data/reusables/user-settings/classic-projects-api-classic-pat-only.md b/data/reusables/user-settings/classic-projects-api-classic-pat-only.md index 6ba51baf0194..c9d11d54a492 100644 --- a/data/reusables/user-settings/classic-projects-api-classic-pat-only.md +++ b/data/reusables/user-settings/classic-projects-api-classic-pat-only.md @@ -1,6 +1,6 @@ {% ifversion pat-v2 %} > [!NOTE] -> The REST API to manage {% data variables.product.prodname_projects_v1 %} only supports authentication using a {% data variables.product.pat_v1 %}. For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." +> The REST API to manage {% data variables.product.prodname_projects_v1 %} only supports authentication using a {% data variables.product.pat_v1 %}. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). {% endif %} diff --git a/data/reusables/user-settings/enterprise-admin-api-classic-pat-only.md b/data/reusables/user-settings/enterprise-admin-api-classic-pat-only.md index e6e88510a9b4..d5617f1c1a21 100644 --- a/data/reusables/user-settings/enterprise-admin-api-classic-pat-only.md +++ b/data/reusables/user-settings/enterprise-admin-api-classic-pat-only.md @@ -1,6 +1,6 @@ {% ifversion pat-v2 %} > [!NOTE] -> These endpoints only support authentication using a {% data variables.product.pat_v1 %}. For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." +> These endpoints only support authentication using a {% data variables.product.pat_v1 %}. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). {% endif %} diff --git a/data/reusables/user-settings/imports-api-classic-pat-only.md b/data/reusables/user-settings/imports-api-classic-pat-only.md index e6e88510a9b4..d5617f1c1a21 100644 --- a/data/reusables/user-settings/imports-api-classic-pat-only.md +++ b/data/reusables/user-settings/imports-api-classic-pat-only.md @@ -1,6 +1,6 @@ {% ifversion pat-v2 %} > [!NOTE] -> These endpoints only support authentication using a {% data variables.product.pat_v1 %}. For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." +> These endpoints only support authentication using a {% data variables.product.pat_v1 %}. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). {% endif %} diff --git a/data/reusables/user-settings/notifications-api-classic-pat-only.md b/data/reusables/user-settings/notifications-api-classic-pat-only.md index e6e88510a9b4..d5617f1c1a21 100644 --- a/data/reusables/user-settings/notifications-api-classic-pat-only.md +++ b/data/reusables/user-settings/notifications-api-classic-pat-only.md @@ -1,6 +1,6 @@ {% ifversion pat-v2 %} > [!NOTE] -> These endpoints only support authentication using a {% data variables.product.pat_v1 %}. For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." +> These endpoints only support authentication using a {% data variables.product.pat_v1 %}. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token). {% endif %} diff --git a/data/ui.yml b/data/ui.yml index c8eac2205d5c..4af49d6989d2 100644 --- a/data/ui.yml +++ b/data/ui.yml @@ -210,7 +210,7 @@ product_landing: quickstart: Quickstart reference: Reference overview: Overview - try_ghec_for_free: Try Enterprise Cloud for free + try_ghec_for_free: Try GitHub's enterprise features try_ghas_for_free: Try GitHub Advanced Security for free plan_your_migration: Plan your migration releases: Releases diff --git a/data/variables/code-scanning.yml b/data/variables/code-scanning.yml index 94747abab32c..581ce2cdbd12 100644 --- a/data/variables/code-scanning.yml +++ b/data/variables/code-scanning.yml @@ -13,7 +13,10 @@ no_build_support: '{% ifversion codeql-no-build-csharp %}C# and{% endif %} Java' compiled_languages: 'C/C++, C#, Go, Java, Kotlin, and Swift' # List of languages where the libraries support expansion using CodeQL model packs at the repository level. -codeql_model_packs_support: '{% ifversion fpt or ghec or ghes > 3.14 %}C#, Java/Kotlin, Python, and Ruby{% elsif ghes > 3.12 %}C#, Java/Kotlin, and Ruby{% elsif ghes > 3.10 %}Java/Kotlin{% endif %}' +codeql_model_packs_support: '{% ifversion fpt or ghec or ghes > 3.14 %} C/C++, C#, Java/Kotlin, Python, and Ruby{% elsif ghes > 3.12 %}C#, Java/Kotlin, and Ruby{% elsif ghes > 3.10 %}Java/Kotlin{% endif %}' + +# List of languages that the model editor in the CodeQL extension for VS Code supports +codeql_model_editor_support: '{% ifversion fpt or ghec or ghes > 3.14 %} C#, Java/Kotlin, Python, and Ruby{% elsif ghes > 3.12 %}C#, Java/Kotlin, and Ruby{% elsif ghes > 3.10 %}Java/Kotlin{% endif %}' # List of that allow threat models to be configurable for code scanning code_scanning_threat_model_support: 'Java/Kotlin{% ifversion fpt or ghec or ghes > 3.12 %} and C#{% endif %}' diff --git a/data/variables/contact.yml b/data/variables/contact.yml index ddb412bfbf88..b14d68771f94 100644 --- a/data/variables/contact.yml +++ b/data/variables/contact.yml @@ -15,6 +15,8 @@ contact_privacy: >- contact_enterprise_sales: "[GitHub's Sales team](https://github.com/enterprise/contact)" +contact_sales_data_residency: "[GitHub's Sales team](https://github.com/enterprise/contact/data-residency)" + contact_feedback_actions: '[GitHub Community discussions for GitHub Actions](https://github.com/orgs/community/discussions/categories/actions-and-packages)' # The team that provides Standard Support diff --git a/data/variables/gists.yml b/data/variables/gists.yml index 304c4a1cfaae..ab7796a143ce 100644 --- a/data/variables/gists.yml +++ b/data/variables/gists.yml @@ -12,3 +12,6 @@ gist_starred: >- gist_user_starred: >- {% ifversion fpt or ghec %}`https://gist.github.com/YOUR_USERNAME/starred`{% else %}`http(s)://[hostname]/gist/YOUR_USERNAME/starred` or `http(s)://gist.[hostname]/YOUR_USERNAME/starred` if subdomains are enabled{% endif %} + +gist_user: >- + {% ifversion fpt or ghec %}`https://gist.github.com/YOUR_USERNAME`{% else %}`http(s)://[hostname]/gist/YOUR_USERNAME` or `http(s)://gist.[hostname]/YOUR_USERNAME` if subdomains are enabled{% endif %} diff --git a/package-lock.json b/package-lock.json index aed96f326cb4..f0662b993919 100644 --- a/package-lock.json +++ b/package-lock.json @@ -69,7 +69,7 @@ "mdast-util-to-markdown": "2.1.0", "mdast-util-to-string": "^4.0.0", "morgan": "^1.10.0", - "next": "14.2.10", + "next": "^14.2.23", "ora": "^8.0.1", "parse5": "7.1.2", "quick-lru": "7.0.0", @@ -133,12 +133,12 @@ "@typescript-eslint/parser": "^8.7.0", "chalk": "^5.0.1", "change-case": "^5.4.4", - "commander": "^12.1.0", + "commander": "^13.0.0", "cross-env": "^7.0.3", "csp-parse": "0.0.2", "csv-parse": "5.5.6", "eslint": "^8.57.1", - "eslint-config-prettier": "^9.1.0", + "eslint-config-prettier": "^10.0.1", "eslint-import-resolver-typescript": "^3.6.3", "eslint-plugin-github": "^5.0.2", "eslint-plugin-import": "^2.30.0", @@ -2236,17 +2236,19 @@ "integrity": "sha512-yWJKmpGE6lUURKAaIltoPIE/wrbY3TEkqQt+X0m+7fQNnAv0keydnYvbiJFP1PnMhizmIWRWOG5KLhYyc/xl+g==" }, "node_modules/@next/env": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.10.tgz", - "integrity": "sha512-dZIu93Bf5LUtluBXIv4woQw2cZVZ2DJTjax5/5DOs3lzEOeKLy7GxRSr4caK9/SCPdaW6bCgpye6+n4Dh9oJPw==" + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.23.tgz", + "integrity": "sha512-CysUC9IO+2Bh0omJ3qrb47S8DtsTKbFidGm6ow4gXIG6reZybqxbkH2nhdEm1tC8SmgzDdpq3BIML0PWsmyUYA==", + "license": "MIT" }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.10.tgz", - "integrity": "sha512-V3z10NV+cvMAfxQUMhKgfQnPbjw+Ew3cnr64b0lr8MDiBJs3eLnM6RpGC46nhfMZsiXgQngCJKWGTC/yDcgrDQ==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.23.tgz", + "integrity": "sha512-WhtEntt6NcbABA8ypEoFd3uzq5iAnrl9AnZt9dXdO+PZLACE32z3a3qA5OoV20JrbJfSJ6Sd6EqGZTrlRnGxQQ==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2256,12 +2258,13 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.10.tgz", - "integrity": "sha512-Y0TC+FXbFUQ2MQgimJ/7Ina2mXIKhE7F+GUe1SgnzRmwFY3hX2z8nyVCxE82I2RicspdkZnSWMn4oTjIKz4uzA==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.23.tgz", + "integrity": "sha512-vwLw0HN2gVclT/ikO6EcE+LcIN+0mddJ53yG4eZd0rXkuEr/RnOaMH8wg/sYl5iz5AYYRo/l6XX7FIo6kwbw1Q==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2271,12 +2274,13 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.10.tgz", - "integrity": "sha512-ZfQ7yOy5zyskSj9rFpa0Yd7gkrBnJTkYVSya95hX3zeBG9E55Z6OTNPn1j2BTFWvOVVj65C3T+qsjOyVI9DQpA==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.23.tgz", + "integrity": "sha512-uuAYwD3At2fu5CH1wD7FpP87mnjAv4+DNvLaR9kiIi8DLStWSW304kF09p1EQfhcbUI1Py2vZlBO2VaVqMRtpg==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2286,12 +2290,13 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.10.tgz", - "integrity": "sha512-n2i5o3y2jpBfXFRxDREr342BGIQCJbdAUi/K4q6Env3aSx8erM9VuKXHw5KNROK9ejFSPf0LhoSkU/ZiNdacpQ==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.23.tgz", + "integrity": "sha512-Mm5KHd7nGgeJ4EETvVgFuqKOyDh+UMXHXxye6wRRFDr4FdVRI6YTxajoV2aHE8jqC14xeAMVZvLqYqS7isHL+g==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2301,12 +2306,13 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.10.tgz", - "integrity": "sha512-GXvajAWh2woTT0GKEDlkVhFNxhJS/XdDmrVHrPOA83pLzlGPQnixqxD8u3bBB9oATBKB//5e4vpACnx5Vaxdqg==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.23.tgz", + "integrity": "sha512-Ybfqlyzm4sMSEQO6lDksggAIxnvWSG2cDWnG2jgd+MLbHYn2pvFA8DQ4pT2Vjk3Cwrv+HIg7vXJ8lCiLz79qoQ==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2316,12 +2322,13 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.10.tgz", - "integrity": "sha512-opFFN5B0SnO+HTz4Wq4HaylXGFV+iHrVxd3YvREUX9K+xfc4ePbRrxqOuPOFjtSuiVouwe6uLeDtabjEIbkmDA==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.23.tgz", + "integrity": "sha512-OSQX94sxd1gOUz3jhhdocnKsy4/peG8zV1HVaW6DLEbEmRRtUCUQZcKxUD9atLYa3RZA+YJx+WZdOnTkDuNDNA==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "linux" @@ -2331,12 +2338,13 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.10.tgz", - "integrity": "sha512-9NUzZuR8WiXTvv+EiU/MXdcQ1XUvFixbLIMNQiVHuzs7ZIFrJDLJDaOF1KaqttoTujpcxljM/RNAOmw1GhPPQQ==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.23.tgz", + "integrity": "sha512-ezmbgZy++XpIMTcTNd0L4k7+cNI4ET5vMv/oqNfTuSXkZtSA9BURElPFyarjjGtRgZ9/zuKDHoMdZwDZIY3ehQ==", "cpu": [ "arm64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2346,12 +2354,13 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.10.tgz", - "integrity": "sha512-fr3aEbSd1GeW3YUMBkWAu4hcdjZ6g4NBl1uku4gAn661tcxd1bHs1THWYzdsbTRLcCKLjrDZlNp6j2HTfrw+Bg==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.23.tgz", + "integrity": "sha512-zfHZOGguFCqAJ7zldTKg4tJHPJyJCOFhpoJcVxKL9BSUHScVDnMdDuOU1zPPGdOzr/GWxbhYTjyiEgLEpAoFPA==", "cpu": [ "ia32" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -2361,12 +2370,13 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.10.tgz", - "integrity": "sha512-UjeVoRGKNL2zfbcQ6fscmgjBAS/inHBh63mjIlfPg/NG8Yn2ztqylXt5qilYb6hoHIwaU2ogHknHWWmahJjgZQ==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.23.tgz", + "integrity": "sha512-xCtq5BD553SzOgSZ7UH5LH+OATQihydObTrCTvVzOro8QiWYKdBVwcB2Mn2MLMo6DGW9yH1LSPw7jS7HhgJgjw==", "cpu": [ "x64" ], + "license": "MIT", "optional": true, "os": [ "win32" @@ -4807,10 +4817,11 @@ } }, "node_modules/commander": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", - "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-13.0.0.tgz", + "integrity": "sha512-oPYleIY8wmTVzkvQq10AEok6YcTC4sRUBl8F9gVuwchGVUCTbl/vhLTaQqutuuySYOsu8YTgV+OxKc/8Yvx+mQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=18" } @@ -5811,13 +5822,13 @@ } }, "node_modules/eslint-config-prettier": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", - "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.0.1.tgz", + "integrity": "sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==", "dev": true, "license": "MIT", "bin": { - "eslint-config-prettier": "bin/cli.js" + "eslint-config-prettier": "build/bin/cli.js" }, "peerDependencies": { "eslint": ">=7.0.0" @@ -9192,6 +9203,16 @@ "url": "https://opencollective.com/lint-staged" } }, + "node_modules/lint-staged/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/lint-staged/node_modules/debug": { "version": "4.3.6", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", @@ -10947,11 +10968,12 @@ } }, "node_modules/next": { - "version": "14.2.10", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.10.tgz", - "integrity": "sha512-sDDExXnh33cY3RkS9JuFEKaS4HmlWmDKP1VJioucCG6z5KuA008DPsDZOzi8UfqEk3Ii+2NCQSJrfbEWtZZfww==", + "version": "14.2.23", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.23.tgz", + "integrity": "sha512-mjN3fE6u/tynneLiEg56XnthzuYw+kD7mCujgVqioxyPqbmiotUCGJpIZGS/VaPg3ZDT1tvWxiVyRzeqJFm/kw==", + "license": "MIT", "dependencies": { - "@next/env": "14.2.10", + "@next/env": "14.2.23", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -10966,15 +10988,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.10", - "@next/swc-darwin-x64": "14.2.10", - "@next/swc-linux-arm64-gnu": "14.2.10", - "@next/swc-linux-arm64-musl": "14.2.10", - "@next/swc-linux-x64-gnu": "14.2.10", - "@next/swc-linux-x64-musl": "14.2.10", - "@next/swc-win32-arm64-msvc": "14.2.10", - "@next/swc-win32-ia32-msvc": "14.2.10", - "@next/swc-win32-x64-msvc": "14.2.10" + "@next/swc-darwin-arm64": "14.2.23", + "@next/swc-darwin-x64": "14.2.23", + "@next/swc-linux-arm64-gnu": "14.2.23", + "@next/swc-linux-arm64-musl": "14.2.23", + "@next/swc-linux-x64-gnu": "14.2.23", + "@next/swc-linux-x64-musl": "14.2.23", + "@next/swc-win32-arm64-msvc": "14.2.23", + "@next/swc-win32-ia32-msvc": "14.2.23", + "@next/swc-win32-x64-msvc": "14.2.23" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", diff --git a/package.json b/package.json index 104f43d29bce..d5bc6730d9d0 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,6 @@ "analyze-text": "tsx src/search/scripts/analyze-text.ts", "analyze-comment": "tsx src/events/scripts/analyze-comment-cli.ts", "archive-version": "tsx --max-old-space-size=16384 src/ghes-releases/scripts/archive-version.ts", - "audit-log-sync": "tsx src/audit-logs/scripts/sync.ts", "build": "next build", "check-canary-slots": "tsx src/workflows/check-canary-slots.ts", "check-content-type": "tsx src/workflows/check-content-type.ts", @@ -49,7 +48,6 @@ "general-search-scrape-server": "cross-env NODE_ENV=production PORT=4002 MINIMAL_RENDER=true CHANGELOG_DISABLED=true tsx src/frame/server.ts", "ghes-release-scrape-with-server": "cross-env GHES_RELEASE=1 start-server-and-test general-search-scrape-server 4002 general-search-scrape", "general-search-scrape-with-server": "cross-env NODE_OPTIONS='--max_old_space_size=8192' start-server-and-test general-search-scrape-server 4002 general-search-scrape", - "graphql-sync": "tsx src/graphql/scripts/sync.js", "index": "tsx src/search/scripts/index/index-cli autocomplete docs-internal-data", "index-ai-search-autocomplete": "tsx src/search/scripts/index/index-cli ai-search-autocomplete", "index-general-autocomplete": "tsx src/search/scripts/index/index-cli general-autocomplete", @@ -88,6 +86,8 @@ "start-all-languages": "cross-env NODE_ENV=development tsx src/frame/server.ts", "start-for-playwright": "cross-env ROOT=src/fixtures/fixtures TRANSLATIONS_FIXTURE_ROOT=src/fixtures/fixtures/translations ENABLED_LANGUAGES=en,ja NODE_ENV=test tsx src/frame/server.ts", "symlink-from-local-repo": "tsx src/early-access/scripts/symlink-from-local-repo.js", + "sync-audit-log": "tsx src/audit-logs/scripts/sync.ts", + "sync-graphql": "tsx src/graphql/scripts/sync.js", "sync-rest": "tsx src/rest/scripts/update-files.ts", "sync-secret-scanning": "tsx src/secret-scanning/scripts/sync.ts", "sync-webhooks": "npx tsx src/rest/scripts/update-files.ts -o webhooks", @@ -305,7 +305,7 @@ "mdast-util-to-markdown": "2.1.0", "mdast-util-to-string": "^4.0.0", "morgan": "^1.10.0", - "next": "14.2.10", + "next": "^14.2.23", "ora": "^8.0.1", "parse5": "7.1.2", "quick-lru": "7.0.0", @@ -369,12 +369,12 @@ "@typescript-eslint/parser": "^8.7.0", "chalk": "^5.0.1", "change-case": "^5.4.4", - "commander": "^12.1.0", + "commander": "^13.0.0", "cross-env": "^7.0.3", "csp-parse": "0.0.2", "csv-parse": "5.5.6", "eslint": "^8.57.1", - "eslint-config-prettier": "^9.1.0", + "eslint-config-prettier": "^10.0.1", "eslint-import-resolver-typescript": "^3.6.3", "eslint-plugin-github": "^5.0.2", "eslint-plugin-import": "^2.30.0", diff --git a/src/archives/middleware/archived-enterprise-versions.ts b/src/archives/middleware/archived-enterprise-versions.ts index 3bc04484758b..5d056b1475f7 100644 --- a/src/archives/middleware/archived-enterprise-versions.ts +++ b/src/archives/middleware/archived-enterprise-versions.ts @@ -227,6 +227,9 @@ export default async function archivedEnterpriseVersions( // old Azure Blob Storage URL. These need to be rewritten to // the new archived enterprise repo URL. if (versionSatisfiesRange(requestedVersion, `>=${firstReleaseStoredInBlobStorage}`)) { + // `x-host` is a custom header set by Fastly. + // GLB automatically deletes the `x-forwarded-host` header. + const host = req.get('x-host') || req.get('x-forwarded-host') || req.get('host') r.body = r.body .replaceAll( `${OLD_AZURE_BLOB_ENTERPRISE_DIR}/${requestedVersion}/assets/cb-`, @@ -234,7 +237,7 @@ export default async function archivedEnterpriseVersions( ) .replaceAll( `${OLD_AZURE_BLOB_ENTERPRISE_DIR}/${requestedVersion}/`, - `${req.protocol}://${req.get('x-forwarded-host') || req.get('host')}/enterprise-server@${requestedVersion}/`, + `${req.protocol}://${host}/enterprise-server@${requestedVersion}/`, ) } diff --git a/src/audit-logs/README.md b/src/audit-logs/README.md index 7fbe98ee9666..0f056fdde705 100644 --- a/src/audit-logs/README.md +++ b/src/audit-logs/README.md @@ -40,7 +40,7 @@ The workflow runs the `src/audit-logs/scripts/sync.ts` script. To run the audit log events pipeline locally: -1. Run `npm run audit-log-sync` +1. Run `npm run sync-audit-log` ## About this directory diff --git a/src/audit-logs/data/fpt/organization.json b/src/audit-logs/data/fpt/organization.json index ed83d792aa4f..b6103f2fd25a 100644 --- a/src/audit-logs/data/fpt/organization.json +++ b/src/audit-logs/data/fpt/organization.json @@ -86,32 +86,32 @@ }, { "action": "code_scanning.alert_appeared_in_branch", - "description": "An existing code scanning alert appeared in a branch.", + "description": "Existing code scanning alerts appeared in a branch.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_became_fixed", - "description": "A code scanning alert was fixed.", + "description": "Code scanning alerts were fixed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_by_user", - "description": "A code scanning alert was manually dismissed.", + "description": "Code scanning alerts were manually dismissed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_created", - "description": "A code scanning alert was seen for the first time.", + "description": "Code scanning alerts were seen for the first time.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reappeared", - "description": "A code scanning alert that was previously fixed reappeared.", + "description": "Code scanning alerts that were previously fixed reappeared.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reopened_by_user", - "description": "A code scanning alert that was previously dismissed was reopened.", + "description": "Code scanning alerts that were previously dismissed were reopened.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { diff --git a/src/audit-logs/data/ghec/enterprise.json b/src/audit-logs/data/ghec/enterprise.json index 98a17a66d793..500f76f3f7f2 100644 --- a/src/audit-logs/data/ghec/enterprise.json +++ b/src/audit-logs/data/ghec/enterprise.json @@ -681,32 +681,32 @@ }, { "action": "code_scanning.alert_appeared_in_branch", - "description": "An existing code scanning alert appeared in a branch.", + "description": "Existing code scanning alerts appeared in a branch.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_became_fixed", - "description": "A code scanning alert was fixed.", + "description": "Code scanning alerts were fixed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_by_user", - "description": "A code scanning alert was manually dismissed.", + "description": "Code scanning alerts were manually dismissed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_created", - "description": "A code scanning alert was seen for the first time.", + "description": "Code scanning alerts were seen for the first time.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reappeared", - "description": "A code scanning alert that was previously fixed reappeared.", + "description": "Code scanning alerts that were previously fixed reappeared.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reopened_by_user", - "description": "A code scanning alert that was previously dismissed was reopened.", + "description": "Code scanning alerts that were previously dismissed were reopened.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { diff --git a/src/audit-logs/data/ghec/organization.json b/src/audit-logs/data/ghec/organization.json index ed83d792aa4f..b6103f2fd25a 100644 --- a/src/audit-logs/data/ghec/organization.json +++ b/src/audit-logs/data/ghec/organization.json @@ -86,32 +86,32 @@ }, { "action": "code_scanning.alert_appeared_in_branch", - "description": "An existing code scanning alert appeared in a branch.", + "description": "Existing code scanning alerts appeared in a branch.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_became_fixed", - "description": "A code scanning alert was fixed.", + "description": "Code scanning alerts were fixed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_by_user", - "description": "A code scanning alert was manually dismissed.", + "description": "Code scanning alerts were manually dismissed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_created", - "description": "A code scanning alert was seen for the first time.", + "description": "Code scanning alerts were seen for the first time.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reappeared", - "description": "A code scanning alert that was previously fixed reappeared.", + "description": "Code scanning alerts that were previously fixed reappeared.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reopened_by_user", - "description": "A code scanning alert that was previously dismissed was reopened.", + "description": "Code scanning alerts that were previously dismissed were reopened.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { diff --git a/src/audit-logs/data/ghes-3.16/enterprise.json b/src/audit-logs/data/ghes-3.16/enterprise.json index 62058277382f..1092fcdfe504 100644 --- a/src/audit-logs/data/ghes-3.16/enterprise.json +++ b/src/audit-logs/data/ghes-3.16/enterprise.json @@ -456,32 +456,32 @@ }, { "action": "code_scanning.alert_appeared_in_branch", - "description": "An existing code scanning alert appeared in a branch.", + "description": "Existing code scanning alerts appeared in a branch.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_became_fixed", - "description": "A code scanning alert was fixed.", + "description": "Code scanning alerts were fixed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_by_user", - "description": "A code scanning alert was manually dismissed.", + "description": "Code scanning alerts were manually dismissed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_created", - "description": "A code scanning alert was seen for the first time.", + "description": "Code scanning alerts were seen for the first time.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reappeared", - "description": "A code scanning alert that was previously fixed reappeared.", + "description": "Code scanning alerts that were previously fixed reappeared.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reopened_by_user", - "description": "A code scanning alert that was previously dismissed was reopened.", + "description": "Code scanning alerts that were previously dismissed were reopened.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { diff --git a/src/audit-logs/data/ghes-3.16/organization.json b/src/audit-logs/data/ghes-3.16/organization.json index 10cd023e6a79..2566d4615367 100644 --- a/src/audit-logs/data/ghes-3.16/organization.json +++ b/src/audit-logs/data/ghes-3.16/organization.json @@ -86,32 +86,32 @@ }, { "action": "code_scanning.alert_appeared_in_branch", - "description": "An existing code scanning alert appeared in a branch.", + "description": "Existing code scanning alerts appeared in a branch.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_became_fixed", - "description": "A code scanning alert was fixed.", + "description": "Code scanning alerts were fixed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_closed_by_user", - "description": "A code scanning alert was manually dismissed.", + "description": "Code scanning alerts were manually dismissed.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_created", - "description": "A code scanning alert was seen for the first time.", + "description": "Code scanning alerts were seen for the first time.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reappeared", - "description": "A code scanning alert that was previously fixed reappeared.", + "description": "Code scanning alerts that were previously fixed reappeared.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { "action": "code_scanning.alert_reopened_by_user", - "description": "A code scanning alert that was previously dismissed was reopened.", + "description": "Code scanning alerts that were previously dismissed were reopened.", "docs_reference_links": "/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning" }, { diff --git a/src/audit-logs/lib/config.json b/src/audit-logs/lib/config.json index c977d1c4072e..a2e87ea6b324 100644 --- a/src/audit-logs/lib/config.json +++ b/src/audit-logs/lib/config.json @@ -3,5 +3,5 @@ "apiOnlyEvents": "This event is not available in the web interface, only via the REST API, audit log streaming, or JSON/CSV exports.", "apiRequestEvent": "This event is only available via audit log streaming." }, - "sha": "cf8e25bad05e4b14ca3b701b3ecfe9e5d0187544" + "sha": "f1afd484608dbf8aee7b8982295d829f9f5f2d1b" } \ No newline at end of file diff --git a/src/content-linter/README.md b/src/content-linter/README.md index acd88652f2ca..b4fcea1f8bef 100644 --- a/src/content-linter/README.md +++ b/src/content-linter/README.md @@ -1,6 +1,6 @@ # Content Linter -For an overview of what the content linter is and how to use it, see "[Using the content linter](/content/contributing/collaborating-on-github-docs/using-the-content-linter.md)." +For an overview of what the content linter is and how to use it, see [Using the content linter](/content/contributing/collaborating-on-github-docs/using-the-content-linter.md). This README shows you how to contribute to the content linter code by adding new rules, modifying existing rules, or updating the scripts used to run the content linter. @@ -162,7 +162,7 @@ Severity can be set to either `error` or `warning`. A severity of `warning` is n Ideally, all rules will be set to `error` severity. However, there may be cases when too many violations exist in the content to fix or disable them all. In these cases we can temporarily set a rule to `warning`, and then update the rule to `error` severity after all cases have been fixed or disabled. However, there may be a case at some point where we need to keep a rule set to `warning` indefinitely. -For more info, see "[Updating content to adhere to a new rule](#updating-content-to-adhere-to-a-new-rule)." +For more info, see [Updating content to adhere to a new rule](#updating-content-to-adhere-to-a-new-rule). ### `partial-markdown-files` diff --git a/src/content-linter/lib/helpers/utils.js b/src/content-linter/lib/helpers/utils.js index c6538fe1f98d..25d009c0df50 100644 --- a/src/content-linter/lib/helpers/utils.js +++ b/src/content-linter/lib/helpers/utils.js @@ -50,6 +50,11 @@ export function doesStringEndWithPeriod(text) { return /^.*\.['"]?$/.test(text) } +export function quotePrecedesLinkOpen(text) { + if (!text) return false + return text.endsWith('"') || text.endsWith("'") +} + // Filters a list of tokens by token type only when they match // a specific token type order. // For example, if a list of tokens contains: diff --git a/src/content-linter/lib/linting-rules/index.js b/src/content-linter/lib/linting-rules/index.js index 6c37c8f6016a..0c8ab9b0c2d4 100644 --- a/src/content-linter/lib/linting-rules/index.js +++ b/src/content-linter/lib/linting-rules/index.js @@ -32,6 +32,7 @@ import { expiredContent, expiringSoon } from './expired-content.js' import { tableLiquidVersioning } from './table-liquid-versioning.js' import { thirdPartyActionPinning } from './third-party-action-pinning.js' import { liquidTagWhitespace } from './liquid-tag-whitespace.js' +import { linkQuotation } from './link-quotation.js' const noDefaultAltText = markdownlintGitHub.find((elem) => elem.names.includes('no-default-alt-text'), @@ -79,5 +80,6 @@ export const gitHubDocsMarkdownlint = { tableLiquidVersioning, thirdPartyActionPinning, liquidTagWhitespace, + linkQuotation, ], } diff --git a/src/content-linter/lib/linting-rules/link-quotation.js b/src/content-linter/lib/linting-rules/link-quotation.js new file mode 100644 index 000000000000..6d6db6bcf8cd --- /dev/null +++ b/src/content-linter/lib/linting-rules/link-quotation.js @@ -0,0 +1,68 @@ +import { addError, filterTokens } from 'markdownlint-rule-helpers' +import { getRange, quotePrecedesLinkOpen } from '../helpers/utils.js' +import { escapeRegExp } from 'lodash-es' + +export const linkQuotation = { + names: ['GHD043', 'link-quotation'], + description: 'Internal link titles must not be surrounded by quotations', + tags: ['links', 'url'], + parser: 'markdownit', + function: (params, onError) => { + filterTokens(params, 'inline', (token) => { + const { children } = token + let previous_child = children[0] + let inLinkWithPrecedingQuotes = false + let linkUrl = '' + let content = [] + let line = '' + for (let i = 1; i < children.length; i++) { + const child = children[i] + if (child.type === 'link_open' && quotePrecedesLinkOpen(previous_child.content)) { + inLinkWithPrecedingQuotes = true + linkUrl = escapeRegExp(child.attrs[0][1]) + line = child.line + } else if (inLinkWithPrecedingQuotes && child.type === 'text') { + content.push(escapeRegExp(child.content.trim())) + } else if (inLinkWithPrecedingQuotes && child.type === 'code_inline') { + content.push('`' + escapeRegExp(child.content.trim()) + '`') + } else if (child.type === 'link_close') { + const title = content.join(' ') + const regex = new RegExp(`"\\[${title}\\]\\(${linkUrl}\\)({%.*%})?(!|\\.|\\?|,)?"`) + if (regex.test(child.line)) { + const match = child.line.match(regex)[0] + const range = getRange(child.line, match) + let newLine = match + if (newLine.startsWith('"')) { + newLine = newLine.slice(1) + } + if (newLine.endsWith('"')) { + newLine = newLine.slice(0, -1) + } + if (newLine.endsWith('".')) { + newLine = newLine.slice(0, -2) + '.' + } + const lineNumber = child.lineNumber + addError( + onError, + lineNumber, + 'Remove quotes surrounding the link title.', + match, + range, + { + lineNumber, + editColumn: range[0], + deleteCount: range[1], + insertText: newLine, + }, + ) + } + inLinkWithPrecedingQuotes = false + content = [] + line = '' + linkUrl = '' + } + previous_child = child + } + }) + }, +} diff --git a/src/content-linter/style/github-docs.js b/src/content-linter/style/github-docs.js index ca9119db3510..6c92e6154f40 100644 --- a/src/content-linter/style/github-docs.js +++ b/src/content-linter/style/github-docs.js @@ -167,6 +167,12 @@ const githubDocsConfig = { 'partial-markdown-files': true, 'yml-files': true, }, + 'link-quotation': { + // GHD043 + severity: 'error', + 'partial-markdown-files': true, + 'yml-files': true, + }, } export const githubDocsFrontmatterConfig = { @@ -210,6 +216,11 @@ export const githubDocsFrontmatterConfig = { severity: 'warning', 'partial-markdown-files': false, }, + 'link-quotation': { + // GHD043 + severity: 'error', + 'partial-markdown-files': false, + }, } // Configures rules from the `github/markdownlint-github` repo diff --git a/src/content-linter/tests/unit/link-quotation.js b/src/content-linter/tests/unit/link-quotation.js new file mode 100644 index 000000000000..d76ef0266d34 --- /dev/null +++ b/src/content-linter/tests/unit/link-quotation.js @@ -0,0 +1,36 @@ +import { describe, expect, test } from 'vitest' + +import { runRule } from '../../lib/init-test.js' +import { linkQuotation } from '../../lib/linting-rules/link-quotation.js' + +describe(linkQuotation.names.join(' - '), () => { + test('links that are formatted correctly should not generate an error', async () => { + const markdown = [ + 'Random stuff [A title](./image.png)', + '"This is a direct quote" [A title](./image.png)', + ].join('\n') + const result = await runRule(linkQuotation, { strings: { markdown } }) + const errors = result.markdown + expect(errors.length).toBe(0) + }) + + test('links with quotes around them should error out', async () => { + const markdown = [ + 'Random stuff "[A title](./image.png)."', + 'Random stuff "[A title](./image.png)?"', + 'Random stuff "[A title](./image.png)!"', + 'Random stuff "[A title](./image.png)".', + 'Random stuff "[A title](./image.png)"?', + 'Random stuff "[A title](./image.png)"!', + 'See "[AUTOTITLE](/foo/bar){% ifversion fpt %}."{% elsif ghes or ghec %}" and "[AUTOTITLE](/foo/bar)."{% endif %}', + 'See "[AUTOTITLE](/foo/bar)," "[AUTOTITLE](/foo/bar2)," "[AUTOTITLE](/foo/bar3)," and "[AUTOTITLE](/foo/bar4)."', + 'See "[Anchor link](#anchor-link)."', + ].join('\n') + const result = await runRule(linkQuotation, { strings: { markdown } }) + const errors = result.markdown + expect(errors.length).toBe(13) + expect(errors[0].errorRange).toEqual([14, 25]) + expect(errors[0].fixInfo.insertText).toBe('[A title](./image.png).') + expect(errors[1].fixInfo.insertText).toBe('[A title](./image.png)?') + }) +}) diff --git a/src/deployments/staging/.env.example b/src/deployments/staging/.env.example new file mode 100644 index 000000000000..fedee045f613 --- /dev/null +++ b/src/deployments/staging/.env.example @@ -0,0 +1,27 @@ +# The .env file in every docs-staging-X repo can be adjusted freely and is not synchronized + +# - - - +# Unique per staging server +# - - - +# The name of the staging branch (should be the same as the repo name except for the review server) +STAGING_BRANCH=docs-staging-{{x}} +# Required for identifing image in datadog metrics +MODA_APP_NAME=docs-staging-{{x}} +# The most recent SHA of the STAGING_BRANCH +SHA={{sha}} + +# - - - +# Unique per review server +# - - - +# Empty for regular staging servers, 'internal' or 'external' for review server +REVIEW_SERVER= + +# - - - +# Shared defaults +# - - - +NODE_ENV=production +PORT=4000 +ENABLED_LANGUAGES='en,zh,es,pt,ru,ja,fr,de,ko' +RATE_LIMIT_MAX='21' +# Moda uses a non-default port for sending datadog metrics +DD_DOGSTATSD_PORT='28125' diff --git a/src/deployments/staging/.github/workflows/deploy-on-repo-dispatch.yml b/src/deployments/staging/.github/workflows/deploy-on-repo-dispatch.yml new file mode 100644 index 000000000000..72e8dbfb8ac6 --- /dev/null +++ b/src/deployments/staging/.github/workflows/deploy-on-repo-dispatch.yml @@ -0,0 +1,76 @@ +# This file is the source of truth for all `docs-staging-X` repos. The copy of this workflow should be synchronized with each staging repo. +# It triggers on the update-sha repository dispatch event, which is dispatched whenever a `docs-staging-X` branch is pushed to in `docs-intenal`. +# This workflow updates the SHA in the staging repo's `.env` using the SHA sent in the dispatch event to the latest commit in the `docs-staging-X` branch +# The merge should trigger an automatic Moda deploy using the contents pulled from the SHA pointing to a branch in `docs-internal`. + +name: Deploy on repo dispatch + +on: + repository_dispatch: + # This event is dispatched whenever a `docs-staging-X` branch is pushed to + types: [update-sha] + +permissions: + contents: write + pull-requests: write + +jobs: + update-sha: + runs-on: ubuntu-latest + + steps: + - name: Checkout Repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + with: + fetch-depth: 2 + + # Extract SHA from the dispatch payload and set it as an output + - name: Set SHA from Payload + id: set_sha + run: echo "SHA=${{ github.event.client_payload.SHA }}" >> $GITHUB_OUTPUT + + # Update the .env file with the new SHA + - name: Update .env File + run: | + SHA=${{ steps.set_sha.outputs.SHA }} + if grep -q "^SHA=" .env; then + sed -i "s/^SHA=.*/SHA=${SHA}/" .env + else + echo "SHA=${SHA}" >> .env + fi + + - name: Commit Changes to new branch + id: commit_changes + run: | + BRANCH_NAME=update-sha-${{ github.run_id }} + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git checkout -b $BRANCH_NAME + git add .env + git commit -m "Update SHA to ${{ steps.set_sha.outputs.SHA }}" + echo "BRANCH_NAME=${BRANCH_NAME}" >> $GITHUB_OUTPUT + + - name: Push Branch + run: git push origin ${{ steps.commit_changes.outputs.BRANCH_NAME }} + + # Create a Pull Request and set the PR URL as an output + - name: Create Pull Request + id: create_pr + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + PR_URL=$(gh pr create \ + --title "Update SHA to ${{ steps.set_sha.outputs.SHA }}" \ + --body "This PR updates the SHA in the \`.env\` file to \`${{ steps.set_sha.outputs.SHA }}\`." \ + --base main \ + --head ${{ steps.commit_changes.outputs.BRANCH_NAME }} \ + ) + echo "PR_URL=${PR_URL}" >> $GITHUB_OUTPUT + + # Merge the Pull Request + - name: Merge Pull Request + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + PR_NUMBER=$(gh pr view ${{ steps.create_pr.outputs.PR_URL }} --json number --jq .number) + gh pr merge $PR_NUMBER --auto --squash diff --git a/src/deployments/staging/.github/workflows/moda-ci.yaml b/src/deployments/staging/.github/workflows/moda-ci.yaml new file mode 100644 index 000000000000..c7c0dc462d9c --- /dev/null +++ b/src/deployments/staging/.github/workflows/moda-ci.yaml @@ -0,0 +1,95 @@ +name: docs-staging-{{x}} Moda CI + +# More info on CI actions setup can be found here: +# https://github.com/github/ops/blob/master/docs/playbooks/build-systems/moving-moda-apps-from-bp-to-actions.md + +on: + workflow_dispatch: + push: + branches-ignore: + - 'gh-readonly-queue/**' + merge_group: + types: [checks_requested] + +jobs: + ########################## + # Add DOCS_BOT_PAT_READPUBLICKEY to vault-keys + ########################## + set-vault-keys: + runs-on: ubuntu-latest + outputs: + modified_vault_keys: ${{ steps.modify_vault_keys.outputs.modified }} + steps: + - name: Set vault-keys output + id: modify_vault_keys + run: | + if [ -z "${{ vars.VAULT_KEYS }}" ]; then + echo "modified=DOCS_BOT_PAT_READPUBLICKEY" >> $GITHUB_OUTPUT + else + echo "modified=${{ vars.VAULT_KEYS }},DOCS_BOT_PAT_READPUBLICKEY" >> $GITHUB_OUTPUT + fi + + ############# + # Moda jobs + ############# + moda-config-bundle: + name: ${{ matrix.ci_job.job }} + needs: set-vault-keys + strategy: + fail-fast: false + matrix: + ci_job: [{ 'job': 'docs-staging-{{x}}-moda-config-bundle' }] + uses: github/internal-actions/.github/workflows/moda.yml@main + with: + ci-formatted-job-name: ${{ matrix.ci_job.job }} + vault-keys: ${{ needs.set-vault-keys.outputs.modified_vault_keys }} + secrets: + dx-bot-token: ${{ secrets.INTERNAL_ACTIONS_DX_BOT_ACCOUNT_TOKEN }} + datadog-api-key: ${{ secrets.DATADOG_API_KEY }} + + ############# + # Docker Image jobs + ############# + docker-image: + name: ${{ matrix.ci_job.job }} + needs: set-vault-keys + strategy: + fail-fast: false + matrix: + ci_job: [{ 'job': 'docs-staging-{{x}}-docker-image' }] + uses: github/internal-actions/.github/workflows/kube.yml@main + with: + ci-formatted-job-name: ${{ matrix.ci_job.job }} + # Fetches the 'DOCS_BOT_PAT_READPUBLICKEY' secret from Vault to pass to the docker build environment as --secret id=DOCS_BOT_PAT_READPUBLICKEY,src=$(cat DOCS_BOT_PAT_READPUBLICKEY) + vault-keys: ${{ needs.set-vault-keys.outputs.modified_vault_keys }} + docker-build-env-secrets: 'DOCS_BOT_PAT_READPUBLICKEY' + secrets: + dx-bot-token: ${{ secrets.INTERNAL_ACTIONS_DX_BOT_ACCOUNT_TOKEN }} + datadog-api-key: ${{ secrets.DATADOG_API_KEY }} + + ############# + # Docker Security jobs + ############# + docker-security: + name: ${{ matrix.ci_job.job }} + needs: set-vault-keys + strategy: + fail-fast: false + matrix: + ci_job: [{ 'job': 'docs-staging-{{x}}-docker-security' }] + uses: github/internal-actions/.github/workflows/docker_security.yml@main + with: + ci-formatted-job-name: ${{ matrix.ci_job.job }} + # Fetches the 'DOCS_BOT_PAT_READPUBLICKEY' secret from Vault to pass to the docker build environment as --secret id=DOCS_BOT_PAT_READPUBLICKEY,src=$(cat DOCS_BOT_PAT_READPUBLICKEY) + vault-keys: ${{ needs.set-vault-keys.outputs.modified_vault_keys }} + docker-build-env-secrets: 'DOCS_BOT_PAT_READPUBLICKEY' + secrets: + dx-bot-token: ${{ secrets.INTERNAL_ACTIONS_DX_BOT_ACCOUNT_TOKEN }} + datadog-api-key: ${{ secrets.DATADOG_API_KEY }} + +permissions: + actions: read + checks: read + contents: read + statuses: read + id-token: write diff --git a/src/deployments/staging/Dockerfile b/src/deployments/staging/Dockerfile new file mode 100644 index 000000000000..dba2321b7ea5 --- /dev/null +++ b/src/deployments/staging/Dockerfile @@ -0,0 +1,137 @@ +# -------------------------------------------------------------------------------- +# BASE IMAGE +# -------------------------------------------------------------------------------- +# To update the sha: +# https://github.com/github/gh-base-image/pkgs/container/gh-base-image%2Fgh-base-noble +FROM ghcr.io/github/gh-base-image/gh-base-noble:20250108-185521-gcd4825276 AS base + +# Install git for cloning docs-early-access & translations repos +# Install curl for determining the early access branch +RUN apt-get -qq update && apt-get -qq install --no-install-recommends git curl + +# Install Node.js latest LTS +# https://github.com/nodejs/release#release-schedule +# Ubuntu's apt-get install nodejs is _very_ outdated +RUN curl -sL https://deb.nodesource.com/setup_22.x | bash - +RUN apt-get install -y nodejs +RUN node --version + +# This directory is owned by the node user +RUN useradd -ms /bin/bash node +ARG APP_HOME=/home/node/app +RUN mkdir -p $APP_HOME && chown -R node:node $APP_HOME +WORKDIR $APP_HOME + +# Switch to root to ensure we have permissions to copy, chmod, and install +USER root + +# Copy in scripts and .env +COPY .env . +COPY build-scripts/*.sh ./build-scripts/ + +# Make scripts executable +RUN chmod +x build-scripts/*.sh + +# Use the mounted --secret to: +# - 1. Fetch the docs-internal repo +# - 2. Fetch the docs-early-access repo & override docs-internal with early access content +# - 3. Fetch each translations repo to the repo/translations directory +# We use --mount-type=secret to avoid the secret being copied into the image layers for security +# The secret passed via --secret can only be used in this RUN command +RUN --mount=type=secret,id=DOCS_BOT_PAT_READPUBLICKEY \ + # We don't cache because Docker can't know if we need to fetch new content from remote repos + echo "Don't cache this step by printing date: $(date)" && \ + . ./build-scripts/fetch-repos.sh + +# Give node user access to the cloned repo & scripts +RUN chown -R node:node $APP_HOME/repo +RUN chown -R node:node $APP_HOME/build-scripts +RUN chown -R node:node $APP_HOME/.env + +# Change back to node to make sure we don't run anything as the root user +USER node + +# --------------- +# ALL DEPS Image +# --------------- +FROM node:22-alpine@sha256:c13b26e7e602ef2f1074aef304ce6e9b7dd284c419b35d89fcf3cc8e44a8def9 AS all_deps + +ARG APP_HOME=/home/node/app +WORKDIR $APP_HOME + +# Copy what is needed to run npm ci +COPY --from=base $APP_HOME/repo/package.json $APP_HOME/repo/package-lock.json ./ + +RUN npm ci --no-optional --registry https://registry.npmjs.org/ + +# Sharp requires optional deps: https://github.com/lovell/sharp/issues/4001 +RUN npm install --cpu=x64 --os=linux --include=optional sharp + +# --------------- +# BUILDER Image +# --------------- +FROM all_deps AS builder + +ARG APP_HOME=/home/node/app +WORKDIR $APP_HOME + +# Copy what is needed to: +# 1. Build the app +# 2. run warmup-remotejson script +# 3. run precompute-pageinfo script +# Dependencies +COPY --from=all_deps $APP_HOME/package.json ./ +COPY --from=all_deps $APP_HOME/node_modules ./node_modules +# Content with merged early-access content +COPY --from=base $APP_HOME/repo/content ./content +COPY --from=base $APP_HOME/repo/data ./data +COPY --from=base $APP_HOME/repo/assets ./assets +# Source code +COPY --from=base $APP_HOME/repo/src ./src +COPY --from=base $APP_HOME/repo/next.config.js ./ +COPY --from=base $APP_HOME/repo/tsconfig.json ./ + +# 1. Build +RUN npm run build + +# 2. Warm up the remotejson cache +RUN npm run warmup-remotejson + +# 3. Precompute the pageinfo cache +RUN npm run precompute-pageinfo -- --max-versions 2 + +# Prune deps for prod image +RUN npm prune --production + +# -------------------------------------------------------------------------------- +# STAGING IMAGE +# -------------------------------------------------------------------------------- +FROM base AS staging + +ARG APP_HOME=/home/node/app +WORKDIR $APP_HOME + +# Copy translations and build scripts from base image +COPY --from=base $APP_HOME/repo/translations ./translations +COPY --from=base $APP_HOME/build-scripts ./build-scripts +COPY --from=base $APP_HOME/.env ./ +# Copy prod dependencies from deps image +COPY --from=all_deps $APP_HOME/node_modules ./node_modules +# Copy built artifacts from builder image +COPY --from=builder $APP_HOME/.next ./.next +COPY --from=builder $APP_HOME/.remotejson-cache ./.remotejson-cache +COPY --from=builder $APP_HOME/.pageinfo-cache.json.br* ./.pageinfo-cache.json.br + +# Copy source code needed to run the server +COPY --from=builder $APP_HOME/package.json ./ +## Content +COPY --from=builder $APP_HOME/content ./content +COPY --from=builder $APP_HOME/data ./data +COPY --from=builder $APP_HOME/assets ./assets +## Code +COPY --from=builder $APP_HOME/src ./src +## Config +COPY --from=builder $APP_HOME/next.config.js ./ +COPY --from=builder $APP_HOME/tsconfig.json ./ + +CMD ["./build-scripts/server-entrypoint.sh"] diff --git a/src/deployments/staging/README.md b/src/deployments/staging/README.md new file mode 100644 index 000000000000..7c2f967ff4c9 --- /dev/null +++ b/src/deployments/staging/README.md @@ -0,0 +1,124 @@ +# Staging Servers + +This directory contains the build tools, workflows, and files used to build and deploy our staging (and dedicated review) servers. + +For internal documentation, please see the Moda directory in the internal Docs Engineering repo. + +1. [Why staging servers?](#why-staging-servers) +1. [What are staging servers?](#what-are-staging-servers) +1. [How do staging deploys work from docs-internal?](#how-do-staging-deploys-work-from-docs-internal) +1. [How do review server deploys work from docs-internal?](#how-do-review-server-deploys-work-from-docs-internal) +1. [Keeping build configurations in sync](#keeping-build-configurations-in-sync) + +## Why staging servers? + +Previously, Docs had automatic preview deploys for each branch. When a PR was opened, a dedicated server was spun up from the contents of that branch. + +In the future, we may be able to accomplish automatic branch deploys again if Moda's features are expanded. + +Until then, we have staging servers that we manually push changes from a branch to spin up. + +We have 8 dedicated staging servers that developers can use to test their code changes. For purely content changes we use the [review server](../review-server/README.md) which automatically previews content changes on a remote branch. + +The dedicated review servers are deployed in a similar fashion that the staging servers are. The difference is that review servers have different environment variables set in `.env` and two additional secrets, like a PAT for reading from remote repos and an access token. + +## What are staging servers? + +Each staging server requires its own `github/` repo in order to deploy to Moda in the form of `github/docs-staging-X` where X is the number of that staging server e.g. `github/docs-staging-0` or `github/docs-staging-1`. + +The URLs of the staging servers also follow this pattern, `https://docs-staging-{{x}}.service.iad.github.net`, e.g. `https://docs-staging-2.service.iad.github.net` + +With the exception of the first 2 which are our review servers: + +- `docs-staging-0` -> https://docs-review.github.com +- `docs-staging-1` -> https://os-docs-review.github.com + +Ideally there should always be enough staging servers for each developer on the team to have a dedicated server to deploy to while they are on the team. + +So we have 8 dedicated staging servers, `docs-staging-{2-9}`: + +- `docs-staging-2` -> https://docs-staging-2.service.iad.github.net +- `docs-staging-3` -> https://docs-staging-3.service.iad.github.net +- etc +- `docs-staging-9` -> https://docs-staging-9.service.iad.github.net + +> [!NOTE] +> [Developer VPN](https://thehub.github.com/security/security-operations/developer-vpn-access/) access is required to view a staging server. Initial set up takes some work, but connecting to it after it's configured is rather simple. + +## How do staging deploys work from docs-internal? + +```mermaid +sequenceDiagram + autonumber + participant DI as docs-internal + participant WF1 as docs-internal/dispatch-sha-on-staging-push.yml + participant WF2 as docs-staging-X/deploy-on-repo-dispatch.yml + participant MD as Moda + + DI->DI: Developer pushes code to `docs-staging-X` branch
    OR Developer adds `docs-staging-X` label to a PR + DI->WF1: Workflow trigger + WF1->WF1: Extract latest SHA from docs-staging-X branch that triggered event + WF1->WF2: Sends `repository_dispatch` event with SHA + note over WF2: Now we are working out of the docs-staging-X repo + WF2->WF2: 1. Extracts SHA from `repository_dispatch` event
    2. Updates `.env` in docs-staging-x with SHA value
    3. Auto-merges the PR into docs-staging-x + WF2->MD: Auto-merge kicks off Moda deploy + MD->MD: Dockerfile build clones docs-internal code from SHA target set in `.env` + note over MD: Deployed to
    `https://docs-staging-{{x}}.service.iad.github.net` +``` + +Whenever a developer pushes code to a staging branch in `docs-internal`, e.g. `docs-staging-2`, a pipeline begins with the final result being a staging server running with the latest changes from that branch. See the above diagram, or read below for a textual explanation. + +The pipeline is as follows: + +1. Pushing to a `docs-staging-X` branch on `docs-internal` triggers the [dispatch-sha-on-staging-push.yml](../../.github/workflows/dispatch-sha-on-staging-push.yml) workflow in `docs-internal` that fires a [repository_dispatch](https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#repository_dispatch) event to the `docs-staging-X` repo corresponding to the `docs-staging-X` branch that was pushed to. + +1. The `repository_dispatch` event will include the latest `SHA` from the `docs-staging-X` branch in its payload. + +1. The repo receiving the `repository_dispatch` event, `docs-staging-X` has a `deploy-on-repo-dispatch.yml` workflow that triggers whenever a `repository_dispatch` event is received. + +1. `deploy-on-repo-dispatch.yml`: + + 1. Extracts the `SHA` from the `repository_dispatch` payload + 2. Opens a PR replacing the existing `SHA` in the `.env` file in the repo with the new `SHA` + 3. Automatically merges the PR + +1. The PR merge kicks off an automatic Moda deploy for the `docs-staging-X` server. + +1. At build time, the [Dockerfile](./Dockerfile) clones the `SHA` from `docs-internal` and builds, runs, and deploys it to `https://docs-staging-{{x}}.service.iad.github.net` which is only accessible behind the [Developer VPN](https://thehub.github.com/security/security-operations/developer-vpn-access/). + +## How do review server deploys work from docs-internal? + +The process is very similar to the process in the previous section for staging servers. The differences are as follows: + +1. Review servers live in: + + 1. Repo [docs-staging-0](https://github.com/github/doc-staging-0) (internal) @ https://docs-review.github.com + 1. Repo [docs-staging-1](https://gthub.com/github/doc-staging-1) (external) @ https://os-docs-review.github.com + +1. When a _code_ change happens in `main` e.g. `.ts` or `.js` file is changed, the `update-review-servers-on-code-push.yml` runs instead of `update-docs-staging-x-repo.yml` in the docs-internal repo. +1. The `STAGING_BRANCH` in the these repos is set to `main` since they pull and run the latest code from `main` +1. The `SHA=` is set to the latest commit in `main` using the same process that staging servers use to deploy (repo dispatch from `docs-internal` to `docs-staging-X`) + +The primary reason for this is that the review servers need to be up to date with the latest _code_ changes with `docs-internal:main` so that they can accurately live preview content changes on branch targets. They don't need to be deployed each time just to preview content changes. They only need to be deployed when code changes, hence the separate process. + +Additionally, the review server is running the code from `main` instead of a staging branch, like `docs-staging-0`. + +## Keeping build configurations in sync + +Since we may increase or decrease the number of staging servers, repos, and branches e.g. `docs-staging-X+1`, we centralize all of the build config in the `src/deployments/staging` directory of this repo. + +Each of the following files & directories are synced when changed between each of the `docs-staging-X` repos using the [sync-staging-repo-files.yml](../../.github/workflows/sync-staging-repo-files.yml) workflow. + +The source of truth for the number of staging repos is in [src/deployments/staging/config.json](./config.json) along with other data like the domain names of each server. + +- The [Dockerfile](./Dockerfile) in `src/deployments/staging/Dockerfile` is the same Dockerfile that lives in each of the `docs-staging-X` repos. + +- The [src/deployments/staging/workflows](./workflows/) workflows are the same workflows that live in each of the `docs-staging-X` repo's `.github/.workflows/` directory. + +- The [build-scripts/](./build-scripts) directory live in the staging repo's `build-scripts` directory + +> [!NOTE] +> The `.env` in each repo is unique to that repo since it stores that repo's `SHA` and in the case of the dedicated review server, `REVIEW_SERVER=`. The Dockerfile reads the `.env` file at build time and extracts the env variables into its environment. + +> [!NOTE] +> Each `docs-staging-X` repo must have `docs-bot` as a member with `write` access to enable syncing diff --git a/src/deployments/staging/README.staging.md b/src/deployments/staging/README.staging.md new file mode 100644 index 000000000000..e8c6df4911dd --- /dev/null +++ b/src/deployments/staging/README.staging.md @@ -0,0 +1,38 @@ +# docs-staging-{{x}} + +This is the staging repo and corresponding Moda deployment for the GitHub Docs {{x}} staging server. + +The contents of this repo are kept in a one-directional sync with the contents of `src/deployments/staging` in the [docs-internal](https://github.com/github/docs-internal) repo, where `src/deployments/staging` from `docs-internal` is the source and this repo is the destination. + +> [!NOTE] +> Do not change any file other than `.env` in this repo. Instead, change the files in [src/deployments/staging of docs-internal](https://github.com/github/docs-internal/tree/main/src/staging/deployments/README.md) which will cascade update the files in each `docs-staging-X` repo (except `.env`). + +**URL:** https://docs-staging-{{x}}.service.iad.github.net (can only be accessed behind [Developer VPN](https://thehub.github.com/security/security-operations/developer-vpn-access/)) + +**Docs**: [src/deployments/staging of docs-internal](https://github.com/github/docs-internal/tree/main/src/deployments/staging/README.md) + +## Speed up automatic deploys + +When you push to the `docs-staging-{{x}}` branch or add the `docs-staging-{{x}}` label on an open PR, it will kick off an automated process that will open a PR in this repo, and then merge it via the merge queue which will trigger an automatic deployment. + +If you begin the above process, and don't want to wait for the slow merge queue process, you can bypass the merge queue and force merge the PR, then in the `#docs-ops` Slack channel you can write, + +``` +.deploy docs-staging-{{x}}/main to staging --ignore-required-pipeline +``` + +To trigger a staging deploy. + +## Manually deploy any docs-internal branch + +Adjust the `STAGING_BRANCH` and `SHA` to match a branch + SHA in `docs-internal`. Make sure _both_ values are set. + +Make the change to `.env` in a new branch, say `manual-deploy-docs-staging-{{x}}` + +Then in the `#docs-ops` Slack channel, + +``` +.deploy docs-staging-{{x}}/manual-deploy-docs-staging-{{x}} to staging --ignore-required-pipeline +``` + +However, make sure not to merge your `manual-deploy-docs-staging-{{x}}` branch into `main` since it will break automatic staging deploys. Instead, keep it separate and update the `STAGING_BRANCH` and `SHA` as needed. \ No newline at end of file diff --git a/src/deployments/staging/build-scripts/clone-or-use-cached-repo.sh b/src/deployments/staging/build-scripts/clone-or-use-cached-repo.sh new file mode 100644 index 000000000000..600de379bd98 --- /dev/null +++ b/src/deployments/staging/build-scripts/clone-or-use-cached-repo.sh @@ -0,0 +1,63 @@ +set -e + +# We use this function to use the cached version of the repo if it exists from +# a previous Dockerfile build. Otherwise, we clone the repo and check out the +# specified branch/SHA. +# Arguments: +# $1 - Repository name (for directory naming) +# $2 - Repository URL +# $3 - Branch to clone +# $4 - Specific SHA to check out (optional) +clone_or_use_cached_repo() { + repo_name="$1" + repo_url="$2" + branch="$3" + sha="$4" + + echo "Processing repository '$repo_name'..." + + if [ -d "$repo_name/.git" ]; then + echo "Repository '$repo_name' already exists. Fetching updates..." + cd "$repo_name" + + # Fetch latest changes + git fetch origin "$branch" + + # If a specific SHA is provided, check it out + if [ -n "$sha" ]; then + echo "Checking out SHA: $sha" + git checkout "$sha" + else + echo "Checking out branch: $branch" + git checkout "$branch" + git pull origin "$branch" + fi + + cd .. + else + echo "Cloning repository '$repo_name' from branch '$branch'..." + + # We use --depth 5 for the docs-internal branch we are checking out as a bit of a gamble for performace optimization. + # We assume that the latest changes are within the last few commits. + # Which should always be the case with how our staging servers are built via actions + # If someone manually sets `.env` this may break the build + if [ -n "$sha" ]; then + depth=5 + else + depth=1 + fi + + git clone --depth "$depth" --branch "$branch" "https://${GITHUB_TOKEN}@github.com/github/$repo_url.git" "$repo_name" + + cd "$repo_name" + + if [ -n "$sha" ]; then + echo "Checking out SHA: $sha" + git checkout "$sha" + fi + + cd .. + fi + + echo "Repository '$repo_name' is up to date." +} \ No newline at end of file diff --git a/src/deployments/staging/build-scripts/determine-early-access-branch.sh b/src/deployments/staging/build-scripts/determine-early-access-branch.sh new file mode 100755 index 000000000000..5630064506fc --- /dev/null +++ b/src/deployments/staging/build-scripts/determine-early-access-branch.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env sh + +# These should be set already in the Dockerfile's env +if [ -z "$GITHUB_TOKEN" ] || [ -z "$STAGING_BRANCH" ]; then + echo "Error: GITHUB_TOKEN and STAGING_BRANCH environment variables must be set." + exit 1 +fi + +OWNER="github" +REPO="docs-early-access" +BRANCH_NAME="$STAGING_BRANCH" +API_URL="https://api.github.com/repos/${OWNER}/${REPO}/branches/${BRANCH_NAME}" + +fetch_branch() { + curl -s -o /dev/null -w "%{http_code}" -H "Authorization: token $GITHUB_TOKEN" "$API_URL" +} + +# Check branch using curl +STATUS=$(fetch_branch) + +if [ "$STATUS" -eq 200 ]; then + EARLY_ACCESS_BRANCH="$BRANCH_NAME" + echo "Using docs-early-access branch '${EARLY_ACCESS_BRANCH}'" +else + EARLY_ACCESS_BRANCH="main" + echo "Failed to get docs-early-access branch '${BRANCH_NAME}', 'main' will be used instead." +fi + +# Export the branch name to be consumed by the Dockerfile +export EARLY_ACCESS_BRANCH diff --git a/src/deployments/staging/build-scripts/fetch-repos.sh b/src/deployments/staging/build-scripts/fetch-repos.sh new file mode 100644 index 000000000000..877d13d0a21f --- /dev/null +++ b/src/deployments/staging/build-scripts/fetch-repos.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env sh + +# Fetches and resolves docs-internal, early-access, and translations repos +echo "Fetching and resolving docs-internal, early-access, and translations repos" + +# Don't show advice logging about checking out a SHA with git +git config --global advice.detachedHead false + +# Exit immediately if a command exits with a non-zero status +set -e + +# Import the clone_or_use_cached_repo function +. ./build-scripts/clone-or-use-cached-repo.sh + +# - - - - - - - - - - +# Read variables from .env +# - - - - - - - - - - +. ./build-scripts/read-dot-env.sh + +GITHUB_TOKEN=$(cat /run/secrets/DOCS_BOT_PAT_READPUBLICKEY) + +# - - - - - - - - - - +# Get docs-internal contents +# - - - - - - - - - - +clone_or_use_cached_repo "repo" "docs-internal" "$STAGING_BRANCH" "$SHA" +# Clone other repo from the root of docs-internal +cd repo + +# - - - - - - - - - - +# Clone the translations repos +# - - - - - - - - - - +mkdir -p translations +cd translations + +# Iterate over each language +for lang in "zh-cn" "es-es" "pt-br" "ru-ru" "ja-jp" "fr-fr" "de-de" "ko-kr" +do + translations_repo="docs-internal.$lang" + clone_or_use_cached_repo "$lang" "$translations_repo" "main" "" +done + +# Go back to the root of the docs-internal repo +cd .. + +# - - - - - - - - - - +# Cleanup +# - - - - - - - - - - +# Delete GITHUB_TOKEN from the environment +unset GITHUB_TOKEN \ No newline at end of file diff --git a/src/deployments/staging/build-scripts/read-dot-env.sh b/src/deployments/staging/build-scripts/read-dot-env.sh new file mode 100755 index 000000000000..fbae81db2873 --- /dev/null +++ b/src/deployments/staging/build-scripts/read-dot-env.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env sh +set -e + +if [ -f ".env" ]; then + export $(grep -v '^#' .env | xargs) +fi \ No newline at end of file diff --git a/src/deployments/staging/build-scripts/server-entrypoint.sh b/src/deployments/staging/build-scripts/server-entrypoint.sh new file mode 100755 index 000000000000..84bb2130b031 --- /dev/null +++ b/src/deployments/staging/build-scripts/server-entrypoint.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env sh + +# We require a server-entrypoint to set environment variables that can't be set via Docker ENV +# This is a workaround to set vars from the .env file + +. ./build-scripts/read-dot-env.sh + +# We keep these logs here to make it clear what env vars are set in server logs +echo "MODA_APP_NAME: $MODA_APP_NAME" +echo "Using port: $PORT" +echo "Using branch: $STAGING_BRANCH" +echo "Using SHA: $SHA" +echo "Is review server?, $REVIEW_SERVER" + +# Start the server +exec ./node_modules/.bin/tsx src/frame/server.ts diff --git a/src/deployments/staging/config.json b/src/deployments/staging/config.json new file mode 100644 index 000000000000..14032004171e --- /dev/null +++ b/src/deployments/staging/config.json @@ -0,0 +1,13 @@ +{ + "number_of_staging_repos": 10, + "server_domain_name": { + "internal": "docs-review.github.com", + "external": "os-docs-review.github.com", + "docs-staging-x": "docs-staging-2.service.%region%.github.net" + }, + "load_balancer_type": { + "internal": "public-external-http", + "external": "public-external-http", + "docs-staging-x": "internal-http" + } +} diff --git a/src/deployments/staging/config/kubernetes/staging/deployments/webapp.yaml b/src/deployments/staging/config/kubernetes/staging/deployments/webapp.yaml new file mode 100644 index 000000000000..125551530bc9 --- /dev/null +++ b/src/deployments/staging/config/kubernetes/staging/deployments/webapp.yaml @@ -0,0 +1,54 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: webapp +spec: + replicas: 2 + selector: + matchLabels: + app: webapp + template: + metadata: + labels: + app: webapp + annotations: + # Our internal logs aren't structured so we use logfmt_sloppy to just log stdout and error + # See https://thehub.github.com/epd/engineering/dev-practicals/observability/logging/ for more details + fluentbit.io/parser: logfmt_sloppy + observability.github.com/splunk_index: docs-internal + spec: + dnsPolicy: Default + containers: + - name: webapp + image: docs-staging-{{x}} + ports: + - name: http + containerPort: 4000 + protocol: TCP + envFrom: + - configMapRef: + name: kube-cluster-metadata + - secretRef: + name: vault-secrets + # Zero-downtime deploys + # https://thehub.github.com/engineering/products-and-services/internal/moda/feature-documentation/pod-lifecycle/#required-prestop-hook + # https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + lifecycle: + preStop: + exec: + command: ['sleep', '5'] + readinessProbe: + # Add delay to allow the app to initialize + initialDelaySeconds: 5 + # See: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-readiness-probes + httpGet: + path: /healthz + port: http + resources: + # These values should match the production values to ensure parity when testing + requests: + cpu: 8000m + memory: 10Gi + limits: + cpu: 16000m + memory: 14Gi diff --git a/src/deployments/staging/config/kubernetes/staging/services/webapp.yaml b/src/deployments/staging/config/kubernetes/staging/services/webapp.yaml new file mode 100644 index 000000000000..167014f23bb2 --- /dev/null +++ b/src/deployments/staging/config/kubernetes/staging/services/webapp.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: Service +metadata: + name: webapp + labels: + service: webapp + annotations: + moda.github.net/domain-name: '{{server_domain_name}}' + moda.github.net/load-balancer-type: '{{load_balancer_type}}' +spec: + ports: + - name: http + port: 4000 + protocol: TCP + targetPort: http + selector: + app: webapp + type: LoadBalancer diff --git a/src/deployments/staging/config/moda/build_options.yaml b/src/deployments/staging/config/moda/build_options.yaml new file mode 100644 index 000000000000..1d3695874e45 --- /dev/null +++ b/src/deployments/staging/config/moda/build_options.yaml @@ -0,0 +1,10 @@ +# Array of rules to ignore +ignored_rules: [] +# Array of files for kubeconform to ignore +ignored_files: [] +# Array of directories to be ignored under `config/kubernetes` +ignored_dirs: [] +# Array of fragment paths of the deployment config for schema validations to ignore +ignored_deployment_config_fragments: [] +# Set to true to enable auto-commits for the generation of kubernetes resources from kustomize +enable_kustomize_auto_commit: false diff --git a/src/deployments/staging/config/moda/deployment.yaml b/src/deployments/staging/config/moda/deployment.yaml new file mode 100644 index 000000000000..0e9f488cfd5a --- /dev/null +++ b/src/deployments/staging/config/moda/deployment.yaml @@ -0,0 +1,33 @@ +# Deploy configuration reference: https://thehub.github.com/epd/engineering/products-and-services/internal/moda/reference/deployment-yaml/ + +environments: + - name: staging + require_pipeline: true + cluster_selector: + profile: general + region: iad + +required_builds: + - docs-staging-{{x}}-moda-config-bundle / docs-staging-{{x}}-moda-config-bundle + - docs-staging-{{x}}-docker-image / docs-staging-{{x}}-docker-image + - docs-staging-{{x}}-docker-security / docs-staging-{{x}}-docker-security + +# Make the pipeline start automatically when a PR is enqueued +auto_start_pipeline: staging_rollout + +pipelines: + staging_rollout: + thread_notifications: true + notify_users_via_dm: false + timeout: 1200 + stages: + - name: full_staging + kind: deployment + start_message: We are now going to deploy {{app}}/{{ref}}! Please pause or cancel the pipeline after the deploy if you want more time before auto-merging your pull request(s). + config: + environment: staging + timeout: 1200 + +notifications: + slack_channels: + - '#docs-ops' diff --git a/src/deployments/staging/ownership.yaml b/src/deployments/staging/ownership.yaml new file mode 100644 index 000000000000..942f703ba39b --- /dev/null +++ b/src/deployments/staging/ownership.yaml @@ -0,0 +1,25 @@ +--- +version: 1 +ownership: + # ownership.yaml describes who is responsible for a service, and how to contact them. If your service is made up + # of multiple components, you can define multiple entries in this file. + # + # Additional documentation on ownership.yaml fields is available at: https://thehub.github.com/engineering/products/service-catalog/service-ownership/#attributes-of-durable-ownership + - team: github/docs-engineering + repo: https://github.com/github/docs-staging-{{x}} + name: docs-staging-{{x}} + kind: moda + long_name: Docs Staging {{x}} + description: The \#{{x}} staging app for GitHub Docs. + exec_sponsor: nerdneha + maintainer: ebonsignori + qos: best_effort + tier: 3 + sev2: + issue: https://github.com/github/docs-engineering/issues/ + tta: 1w + sev3: + slack: docs-alerts + tta: 1d + dependencies: + - docs diff --git a/src/fixtures/fixtures/content/get-started/foo/anchor-autotitling.md b/src/fixtures/fixtures/content/get-started/foo/anchor-autotitling.md index 53e4f4008a63..692e00e0d298 100644 --- a/src/fixtures/fixtures/content/get-started/foo/anchor-autotitling.md +++ b/src/fixtures/fixtures/content/get-started/foo/anchor-autotitling.md @@ -14,4 +14,4 @@ which should not work. ## The experiment -See "[AUTOTITLE](#introduction)." +See [AUTOTITLE](#introduction). diff --git a/src/fixtures/fixtures/content/get-started/foo/autotitling.md b/src/fixtures/fixtures/content/get-started/foo/autotitling.md index 96d843604f9f..a004110dd4e5 100644 --- a/src/fixtures/fixtures/content/get-started/foo/autotitling.md +++ b/src/fixtures/fixtures/content/get-started/foo/autotitling.md @@ -13,7 +13,7 @@ type: how_to Links that use the word `AUTOTITLE` in the Markdown become the title of the document it links to. -For example "[AUTOTITLE](/get-started/start-your-journey/hello-world)." +For example [AUTOTITLE](/get-started/start-your-journey/hello-world). It should also work if the URL as a query string, like this: [AUTOTITLE](/get-started/start-your-journey/hello-world?tool=linux) diff --git a/src/fixtures/fixtures/content/get-started/foo/typo-autotitling.md b/src/fixtures/fixtures/content/get-started/foo/typo-autotitling.md index 277201126d47..6ad96bf19517 100644 --- a/src/fixtures/fixtures/content/get-started/foo/typo-autotitling.md +++ b/src/fixtures/fixtures/content/get-started/foo/typo-autotitling.md @@ -11,10 +11,10 @@ type: how_to {% ifversion ghes %} -"[Autotitle](/get-started/start-your-journey/hello-world)." +[Autotitle](/get-started/start-your-journey/hello-world). {% else %} -"[AUTOTITLES](/get-started/start-your-journey/hello-world)." +[AUTOTITLES](/get-started/start-your-journey/hello-world). {% endif %} diff --git a/src/fixtures/fixtures/content/get-started/start-your-journey/hello-world.md b/src/fixtures/fixtures/content/get-started/start-your-journey/hello-world.md index 1794c344596f..d4dc27b9a874 100644 --- a/src/fixtures/fixtures/content/get-started/start-your-journey/hello-world.md +++ b/src/fixtures/fixtures/content/get-started/start-your-journey/hello-world.md @@ -26,9 +26,9 @@ like "Enterprise Server X.Y". It should change the above sentence. ## Link to a page with variable title -"[AUTOTITLE](/get-started/start-your-journey/dynamic-title)" +[AUTOTITLE](/get-started/start-your-journey/dynamic-title) -"[AUTOTITLE](/get-started/foo/cross-version-linking)" +[AUTOTITLE](/get-started/foo/cross-version-linking) ## Use of a reusable that might have auto-title links diff --git a/src/fixtures/fixtures/content/get-started/start-your-journey/link-rewriting.md b/src/fixtures/fixtures/content/get-started/start-your-journey/link-rewriting.md index 1e9bfb9722a4..e3eadce8c368 100644 --- a/src/fixtures/fixtures/content/get-started/start-your-journey/link-rewriting.md +++ b/src/fixtures/fixtures/content/get-started/start-your-journey/link-rewriting.md @@ -10,7 +10,7 @@ type: quick_start ## Internal links never need language prefix -"[AUTOTITLE](/get-started/foo/cross-version-linking)" already tests things +[AUTOTITLE](/get-started/foo/cross-version-linking) already tests things like `/enterprise-server@latest/` becomes `/enterprise-server@X.Y/` where `X.Y` is the latest Enterprise server version. diff --git a/src/fixtures/fixtures/content/pages/quickstart.md b/src/fixtures/fixtures/content/pages/quickstart.md index 9f281a4c83f2..bf7dcdb23fc5 100644 --- a/src/fixtures/fixtures/content/pages/quickstart.md +++ b/src/fixtures/fixtures/content/pages/quickstart.md @@ -7,7 +7,7 @@ versions: ghes: '*' ghec: '*' type: quick_start -permissions: These are permissions details, for more pages info start at the beginning with this "[article intro link](#introduction)". Also here's [another link](/get-started/start-your-journey/hello-world). +permissions: These are permissions details, for more pages info start at the beginning with this [article intro link](#introduction). Also here's [another link](/get-started/start-your-journey/hello-world). topics: - Pages shortTitle: Quickstart @@ -20,7 +20,7 @@ This page has 6 links that should show preview popovers on hover. ## Regular internal link -But learn more on "[AUTOTITLE](/get-started/start-your-journey)." +But learn more on [AUTOTITLE](/get-started/start-your-journey). ## Internal links with formatted link text diff --git a/src/fixtures/fixtures/data/reusables/gated-features/more-info.md b/src/fixtures/fixtures/data/reusables/gated-features/more-info.md index a07603250bd4..33b22ccb17a6 100644 --- a/src/fixtures/fixtures/data/reusables/gated-features/more-info.md +++ b/src/fixtures/fixtures/data/reusables/gated-features/more-info.md @@ -1 +1 @@ -{% ifversion fpt or ghec %}For more information, see "[AUTOTITLE](/get-started/start-your-journey/hello-world)."{% endif %} +{% ifversion fpt or ghec %}For more information, see [AUTOTITLE](/get-started/start-your-journey/hello-world).{% endif %} diff --git a/src/fixtures/fixtures/data/ui.yml b/src/fixtures/fixtures/data/ui.yml index c8eac2205d5c..4af49d6989d2 100644 --- a/src/fixtures/fixtures/data/ui.yml +++ b/src/fixtures/fixtures/data/ui.yml @@ -210,7 +210,7 @@ product_landing: quickstart: Quickstart reference: Reference overview: Overview - try_ghec_for_free: Try Enterprise Cloud for free + try_ghec_for_free: Try GitHub's enterprise features try_ghas_for_free: Try GitHub Advanced Security for free plan_your_migration: Plan your migration releases: Releases diff --git a/src/fixtures/fixtures/translations/ja-jp/content/get-started/start-your-journey/hello-world.md b/src/fixtures/fixtures/translations/ja-jp/content/get-started/start-your-journey/hello-world.md index 0c5b872ef528..5d5235e585d5 100644 --- a/src/fixtures/fixtures/translations/ja-jp/content/get-started/start-your-journey/hello-world.md +++ b/src/fixtures/fixtures/translations/ja-jp/content/get-started/start-your-journey/hello-world.md @@ -18,7 +18,7 @@ recover from it. ["AUTOTITLE](/get-started/start-your-journey/dynamic-title)" -"[AUTOTITLE](/get-started/foo/cross-version-linking)" +[AUTOTITLE](/get-started/foo/cross-version-linking) ## Use of a reusable that might have auto-title links diff --git a/src/frame/middleware/index.ts b/src/frame/middleware/index.ts index 42c34fc6dca9..9d4c9a99d42a 100644 --- a/src/frame/middleware/index.ts +++ b/src/frame/middleware/index.ts @@ -29,8 +29,8 @@ import archivedEnterpriseVersionsAssets from '@/archives/middleware/archived-ent import api from './api' import healthz from './healthz' import manifestJson from './manifest-json' -import remoteIP from './remote-ip' import buildInfo from './build-info' +import reqHeaders from './req-headers' import archivedEnterpriseVersions from '@/archives/middleware/archived-enterprise-versions' import robots from './robots' import earlyAccessLinks from '@/early-access/middleware/early-access-links' @@ -244,8 +244,8 @@ export default function (app: Express) { // *** Rendering, 2xx responses *** app.use('/api', api) - app.get('/_ip', remoteIP) app.get('/_build', buildInfo) + app.get('/_req-headers', reqHeaders) app.use(asyncMiddleware(manifestJson)) // Things like `/api` sets their own Fastly surrogate keys. diff --git a/src/frame/middleware/remote-ip.ts b/src/frame/middleware/remote-ip.ts deleted file mode 100644 index b0072409e207..000000000000 --- a/src/frame/middleware/remote-ip.ts +++ /dev/null @@ -1,25 +0,0 @@ -import type { Request, Response } from 'express' - -import { noCacheControl } from './cache-control.js' - -export default function remoteIp(req: Request, res: Response) { - noCacheControl(res) - res.json({ - ip: req.ip, - 'x-forwarded-for': req.headers['x-forwarded-for'] || null, - 'x-forwarded-host': req.headers['x-forwarded-host'] || null, - host: req.headers['host'] || null, - 'fastly-client-ip': req.headers['fastly-client-ip'] || null, - }) -} - -/* -Note from previous author: -This is used to check that the WAF is working correctly. -Doing things such as IP blocking in the Azure Firewall. -To make sure we got the Fastly -> Azure FrontDoor -> Azure App service header stuff right. -For example, if you use the express IP rate limit thing, -you want to make sure it's using the end user's IP and not the Fastly POP node. -So it was to end-to-end test the config by comparing that URL -with this https://www.google.com/search?q=what+is+my+ip -*/ diff --git a/src/frame/middleware/req-headers.ts b/src/frame/middleware/req-headers.ts new file mode 100644 index 000000000000..1beb0acabbc6 --- /dev/null +++ b/src/frame/middleware/req-headers.ts @@ -0,0 +1,10 @@ +import type { Request, Response } from 'express' + +import { noCacheControl } from './cache-control.js' + +export default function reqHeaders(req: Request, res: Response) { + noCacheControl(res) + res.json({ + 'request-headers': req.headers, + }) +} diff --git a/src/frame/middleware/robots.ts b/src/frame/middleware/robots.ts index 5cfc0cd63cad..bbec96077d4e 100644 --- a/src/frame/middleware/robots.ts +++ b/src/frame/middleware/robots.ts @@ -15,8 +15,14 @@ export default function robots(req: ExtendedRequest, res: Response, next: NextFu defaultCacheControl(res) + const host = req.get('x-host') || req.get('x-forwarded-host') || req.get('host') + // only include robots.txt when it's our production domain and adding localhost for robots-txt.js test - if (req.hostname === 'docs.github.com' || req.hostname === '127.0.0.1') { + if ( + host === 'docs.github.com' || + req.hostname === 'docs.github.com' || + req.hostname === '127.0.0.1' + ) { return res.send(defaultResponse) } diff --git a/src/frame/tests/remote-ip.ts b/src/frame/tests/remote-ip.ts deleted file mode 100644 index 37a963ebddf2..000000000000 --- a/src/frame/tests/remote-ip.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { describe, expect, test, vi } from 'vitest' - -import { get } from '@/tests/helpers/e2etest.js' - -describe('remote ip debugging', () => { - vi.setConfig({ testTimeout: 60 * 1000 }) - - test('basics', async () => { - const res = await get('/_ip') - expect(res.statusCode).toBe(200) - expect(res.headers['content-type']).toContain('application/json') - const kv = JSON.parse(res.body) - expect('ip' in kv).toBeTruthy() - expect('x-forwarded-for' in kv).toBeTruthy() - expect('fastly-client-ip' in kv).toBeTruthy() - }) - - test('carrying the x-forwarded-for header', async () => { - const res = await get('/_ip', { - headers: { - 'X-Forwarded-For': '123.123.0.1', - }, - }) - expect(res.statusCode).toBe(200) - const kv = JSON.parse(res.body) - expect(kv['x-forwarded-for']).toBe('123.123.0.1') - }) - - test('req.ip becomes the first value from x-forwarded-for', async () => { - const xForwardedFor = '100.0.0.1, 100.0.0.2, 100.0.0.3' - const res = await get('/_ip', { - headers: { - 'X-Forwarded-For': xForwardedFor, - }, - }) - expect(res.statusCode).toBe(200) - const kv = JSON.parse(res.body) - expect(kv.ip).toBe('100.0.0.1') - expect(kv['x-forwarded-for']).toBe(xForwardedFor) - }) -}) diff --git a/src/ghes-releases/lib/release-templates/release-steps-1.md b/src/ghes-releases/lib/release-templates/release-steps-1.md index 4f01a44dc099..a8eae61373d0 100644 --- a/src/ghes-releases/lib/release-templates/release-steps-1.md +++ b/src/ghes-releases/lib/release-templates/release-steps-1.md @@ -74,13 +74,13 @@ To enable a new version of GHES on GitHub Docs, update the site's supported vers - [ ] Add and commit the changes. -- [ ] Optionally, on your workstation, run the local development environment for GitHub Docs and verify that the new GHES version is enabled. See "[About versions of GitHub Docs](https://docs.github.com/get-started/learning-about-github/about-versions-of-github-docs)". +- [ ] Optionally, on your workstation, run the local development environment for GitHub Docs and verify that the new GHES version is enabled. See [About versions of GitHub Docs](https://docs.github.com/get-started/learning-about-github/about-versions-of-github-docs). - [ ] Push your changes. - [ ] Create a PR. For the body, copy the contents of the body comment for the [previous release](https://github.com/github/docs-internal/pull/44684), modifying it to reflect this release. -- [ ] Link your PR to this issue. See "[Linking a pull request to an issue](https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#manually-linking-a-pull-request-to-an-issue-using-the-pull-request-sidebar)". +- [ ] Link your PR to this issue. See [Linking a pull request to an issue](https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#manually-linking-a-pull-request-to-an-issue-using-the-pull-request-sidebar).
    diff --git a/src/ghes-releases/lib/release-templates/release-steps-2.md b/src/ghes-releases/lib/release-templates/release-steps-2.md index 6b66b1361a8e..45c2c15840b7 100644 --- a/src/ghes-releases/lib/release-templates/release-steps-2.md +++ b/src/ghes-releases/lib/release-templates/release-steps-2.md @@ -36,7 +36,7 @@ To prepare for a GHES RC, you will: Each day, review [GHES release slack channel][ghes-release-slack-channel-link] on Slack for any potential late-breaking content changes. - Most conversation is operational and relates to preparation of the release builds, with no docs impact. -- Typically, at this phase, any content changes would relate to content in the "[Enterprise administrators](https://docs.github.com/en/enterprise-server/admin)" docset. If you see discussion about end-user features, investigate further. +- Typically, at this phase, any content changes would relate to content in the [Enterprise administrators](https://docs.github.com/en/enterprise-server/admin) docset. If you see discussion about end-user features, investigate further. - If you're uncertain whether the conversation relates to changes that could affect the docs, ask the following questions. - [Which audience](https://github.com/github/docs-content/blob/main/focus-areas/enterprise/writing-for-enterprise/audiences.md) is affected? - Is there any change in behavior or functionality that might affect the public docs? For example, is a feature pulled from the release? @@ -120,9 +120,9 @@ For each item in the Release Tracker project's [GHES Docs][ghes-release-tracker- During [validation](#validation), if you set the "GHES docs status" field for any issues in the Release Tracker project's [GHES Docs][ghes-release-tracker-project-board-link] view to "[Needs versioning][ghes-release-tracker-needs-versioning-query]", create a single PR to correct the versioning. - Target `main` to get the changes published as soon as possible, particularly if any items slipped from the previous GHES release. -- If a change was supposed to be in a previous release but you needed to update the versioning to reflect that it's in this upcoming release, you may need to relocate the release note for the feature in the prior version into the "[Errata](https://github.com/github/docs-internal/blob/main/contributing/content-style-guide.md#errata)" section and include the release note in the upcoming release. +- If a change was supposed to be in a previous release but you needed to update the versioning to reflect that it's in this upcoming release, you may need to relocate the release note for the feature in the prior version into the [Errata](https://github.com/github/docs-internal/blob/main/contributing/content-style-guide.md#errata) section and include the release note in the upcoming release. -After you merge the PR, update the status for each item in the Release Tracker project's [GHES Docs][ghes-release-tracker-project-board-link] view with a "GHES docs status" field set to "[Needs versioning][ghes-release-tracker-needs-versioning-query]". +After you merge the PR, update the status for each item in the Release Tracker project's [GHES Docs][ghes-release-tracker-project-board-link] view with a "GHES docs status" field set to [Needs versioning][ghes-release-tracker-needs-versioning-query].
    @@ -180,7 +180,7 @@ At least a week before the ship date for the RC, request review of the PR with t 1. After you've received writer and PM approval, merge the PR into the topic branch that you created for the PR to close {{ release-steps-1-url }}. -1. Link the PR to this issue as well. See "[Linking a pull request to an issue](https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#manually-linking-a-pull-request-to-an-issue-using-the-pull-request-sidebar)". +1. Link the PR to this issue as well. See [Linking a pull request to an issue](https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#manually-linking-a-pull-request-to-an-issue-using-the-pull-request-sidebar). 1. To provide other GTM teams like Support Delivery an advance look at changes in the release, share a link to the release notes on the staging deployment and a link to the YAML file in **Files changed** tab within the PR for {{ release-steps-1-url }}. diff --git a/src/ghes-releases/lib/release-templates/release-steps-5.md b/src/ghes-releases/lib/release-templates/release-steps-5.md index 15b9e3501a74..0bc799d1e533 100644 --- a/src/ghes-releases/lib/release-templates/release-steps-5.md +++ b/src/ghes-releases/lib/release-templates/release-steps-5.md @@ -158,7 +158,7 @@ The benefit of the first method is that you don't need to deal with merging two - [ ] Click the green "Run workflow" button. - [ ] Wait for the workflow to finish. It will automatically open a new ["Update OpenAPI Description" PR](https://github.com/github/docs-internal/labels/github-openapi-bot). The workflow output log will include a PR number. - [ ] In the new PR with OpenAPI changes, change the base branch of the PR from `main` to the branch of the to the publication branch you created for https://github.com/github/docs-content/issues/14225. -- [ ] Link the PR to this issue. For more information, see "[Linking a pull request to an issue](https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#manually-linking-a-pull-request-to-an-issue-using-the-pull-request-sidebar)". +- [ ] Link the PR to this issue. For more information, see [Linking a pull request to an issue](https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#manually-linking-a-pull-request-to-an-issue-using-the-pull-request-sidebar). - [ ] In the "Update OpenAPI Description" PR, ensure that there are no merge conflicts and that checks pass, paying particular attention to links that were broken due to missing OpenAPI-related content. - [ ] Merge "Update OpenAPI Description" PR into your publication PR.. **Note:** Don't attempt to resolve conflicts for changes to the `src/rest/data` files. Only accept the incoming files. If you do see conflicts in the `src/rest/data`, `src/webhooks/data`, or `src/github-apps/data` directories, you can checkout the files for those directories that exist in the main branch, which reverts the changes in those directories to the files in the `main` branch (e.g. `git checkout origin/main src/rest/data/*`). diff --git a/src/github-apps/data/fpt-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/fpt-2022-11-28/fine-grained-pat-permissions.json index 02ad6c8b8341..38fadcf8ef9b 100644 --- a/src/github-apps/data/fpt-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/fpt-2022-11-28/fine-grained-pat-permissions.json @@ -1403,6 +1403,66 @@ } ] }, + "organization_private_registries": { + "title": "Organization private registries", + "displayTitle": "Organization permissions for \"Organization private registries\"", + "permissions": [ + { + "category": "private-registries", + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries", + "additional-permissions": false, + "access": "read" + }, + { + "category": "private-registries", + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries", + "additional-permissions": false, + "access": "write" + }, + { + "category": "private-registries", + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key", + "additional-permissions": false, + "access": "read" + }, + { + "category": "private-registries", + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "additional-permissions": false, + "access": "read" + }, + { + "category": "private-registries", + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "additional-permissions": false, + "access": "write" + }, + { + "category": "private-registries", + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "additional-permissions": false, + "access": "write" + } + ] + }, "organization_personal_access_token_requests": { "title": "Personal access token requests", "displayTitle": "Organization permissions for \"Personal access token requests\"", @@ -2876,7 +2936,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -2885,7 +2945,7 @@ }, { "category": "repos", - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -2894,7 +2954,7 @@ }, { "category": "repos", - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/fpt-2022-11-28/fine-grained-pat.json b/src/github-apps/data/fpt-2022-11-28/fine-grained-pat.json index 85cd57f03151..2496d312a497 100644 --- a/src/github-apps/data/fpt-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/fpt-2022-11-28/fine-grained-pat.json @@ -3819,6 +3819,44 @@ "requestPath": "/repos/{owner}/{repo}/pages/health" } ], + "private-registries": [ + { + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key" + }, + { + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + } + ], "projects": [ { "slug": "list-organization-projects", @@ -4383,19 +4421,19 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/fpt-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/fpt-2022-11-28/server-to-server-permissions.json index 7211a26bc2ea..926e4d089cb2 100644 --- a/src/github-apps/data/fpt-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/fpt-2022-11-28/server-to-server-permissions.json @@ -1699,6 +1699,78 @@ } ] }, + "organization_private_registries": { + "title": "Organization private registries", + "displayTitle": "Organization permissions for \"Organization private registries\"", + "permissions": [ + { + "category": "private-registries", + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries", + "access": "read", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries", + "access": "write", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key", + "access": "read", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "access": "read", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "access": "write", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "access": "write", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + } + ] + }, "organization_personal_access_token_requests": { "title": "Personal access token requests", "displayTitle": "Organization permissions for \"Personal access token requests\"", @@ -3486,7 +3558,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -3497,7 +3569,7 @@ }, { "category": "repos", - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -3508,7 +3580,7 @@ }, { "category": "repos", - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/fpt-2022-11-28/server-to-server-rest.json b/src/github-apps/data/fpt-2022-11-28/server-to-server-rest.json index 4084c5e5c665..39ba317774ce 100644 --- a/src/github-apps/data/fpt-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/fpt-2022-11-28/server-to-server-rest.json @@ -3351,6 +3351,44 @@ "requestPath": "/repos/{owner}/{repo}/pages/health" } ], + "private-registries": [ + { + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key" + }, + { + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + } + ], "projects": [ { "slug": "list-organization-projects", @@ -3915,19 +3953,19 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/fpt-2022-11-28/user-to-server-rest.json b/src/github-apps/data/fpt-2022-11-28/user-to-server-rest.json index 85cd57f03151..2496d312a497 100644 --- a/src/github-apps/data/fpt-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/fpt-2022-11-28/user-to-server-rest.json @@ -3819,6 +3819,44 @@ "requestPath": "/repos/{owner}/{repo}/pages/health" } ], + "private-registries": [ + { + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key" + }, + { + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + } + ], "projects": [ { "slug": "list-organization-projects", @@ -4383,19 +4421,19 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghec-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/ghec-2022-11-28/fine-grained-pat-permissions.json index bb3d84f31b89..64422fa2ed44 100644 --- a/src/github-apps/data/ghec-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/ghec-2022-11-28/fine-grained-pat-permissions.json @@ -1853,6 +1853,66 @@ } ] }, + "organization_private_registries": { + "title": "Organization private registries", + "displayTitle": "Organization permissions for \"Organization private registries\"", + "permissions": [ + { + "category": "private-registries", + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries", + "additional-permissions": false, + "access": "read" + }, + { + "category": "private-registries", + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries", + "additional-permissions": false, + "access": "write" + }, + { + "category": "private-registries", + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key", + "additional-permissions": false, + "access": "read" + }, + { + "category": "private-registries", + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "additional-permissions": false, + "access": "read" + }, + { + "category": "private-registries", + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "additional-permissions": false, + "access": "write" + }, + { + "category": "private-registries", + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "additional-permissions": false, + "access": "write" + } + ] + }, "organization_personal_access_token_requests": { "title": "Personal access token requests", "displayTitle": "Organization permissions for \"Personal access token requests\"", @@ -3326,7 +3386,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -3335,7 +3395,7 @@ }, { "category": "repos", - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -3344,7 +3404,7 @@ }, { "category": "repos", - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghec-2022-11-28/fine-grained-pat.json b/src/github-apps/data/ghec-2022-11-28/fine-grained-pat.json index 8642c242cb0a..fd12a653ab84 100644 --- a/src/github-apps/data/ghec-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/ghec-2022-11-28/fine-grained-pat.json @@ -4153,6 +4153,44 @@ "requestPath": "/repos/{owner}/{repo}/pages/health" } ], + "private-registries": [ + { + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key" + }, + { + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + } + ], "projects": [ { "slug": "list-organization-projects", @@ -4717,19 +4755,19 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghec-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/ghec-2022-11-28/server-to-server-permissions.json index 6bb9f379cb5a..f6868bde5ce8 100644 --- a/src/github-apps/data/ghec-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/ghec-2022-11-28/server-to-server-permissions.json @@ -2245,6 +2245,78 @@ } ] }, + "organization_private_registries": { + "title": "Organization private registries", + "displayTitle": "Organization permissions for \"Organization private registries\"", + "permissions": [ + { + "category": "private-registries", + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries", + "access": "read", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries", + "access": "write", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key", + "access": "read", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "access": "read", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "access": "write", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + }, + { + "category": "private-registries", + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "access": "write", + "user-to-server": true, + "server-to-server": true, + "additional-permissions": false + } + ] + }, "organization_personal_access_token_requests": { "title": "Personal access token requests", "displayTitle": "Organization permissions for \"Personal access token requests\"", @@ -4032,7 +4104,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -4043,7 +4115,7 @@ }, { "category": "repos", - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", @@ -4054,7 +4126,7 @@ }, { "category": "repos", - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghec-2022-11-28/server-to-server-rest.json b/src/github-apps/data/ghec-2022-11-28/server-to-server-rest.json index d0711314b56a..308e192e5d48 100644 --- a/src/github-apps/data/ghec-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/ghec-2022-11-28/server-to-server-rest.json @@ -3685,6 +3685,44 @@ "requestPath": "/repos/{owner}/{repo}/pages/health" } ], + "private-registries": [ + { + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key" + }, + { + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + } + ], "projects": [ { "slug": "list-organization-projects", @@ -4249,19 +4287,19 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghec-2022-11-28/user-to-server-rest.json b/src/github-apps/data/ghec-2022-11-28/user-to-server-rest.json index 8642c242cb0a..fd12a653ab84 100644 --- a/src/github-apps/data/ghec-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/ghec-2022-11-28/user-to-server-rest.json @@ -4153,6 +4153,44 @@ "requestPath": "/repos/{owner}/{repo}/pages/health" } ], + "private-registries": [ + { + "slug": "list-private-registries-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "create-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries" + }, + { + "slug": "get-private-registries-public-key-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key" + }, + { + "slug": "get-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "update-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + }, + { + "slug": "delete-a-private-registry-for-an-organization", + "subcategory": "organization-configurations", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}" + } + ], "projects": [ { "slug": "list-organization-projects", @@ -4717,19 +4755,19 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "enable-automated-security-fixes", + "slug": "enable-dependabot-security-updates", "subcategory": "repos", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" }, { - "slug": "disable-automated-security-fixes", + "slug": "disable-dependabot-security-updates", "subcategory": "repos", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat-permissions.json index 0d99c76feb19..c7c429cd5a2f 100644 --- a/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat-permissions.json @@ -2180,7 +2180,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat.json b/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat.json index 0d271a5d53b2..107ee4cd3ccb 100644 --- a/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/ghes-3.10-2022-11-28/fine-grained-pat.json @@ -3565,7 +3565,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-permissions.json index 8ec0331f068e..bb011d0234d3 100644 --- a/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-permissions.json @@ -2642,7 +2642,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-rest.json b/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-rest.json index 42c44b088bc4..7c6047760f14 100644 --- a/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/ghes-3.10-2022-11-28/server-to-server-rest.json @@ -3383,7 +3383,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.10-2022-11-28/user-to-server-rest.json b/src/github-apps/data/ghes-3.10-2022-11-28/user-to-server-rest.json index 0d271a5d53b2..107ee4cd3ccb 100644 --- a/src/github-apps/data/ghes-3.10-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/ghes-3.10-2022-11-28/user-to-server-rest.json @@ -3565,7 +3565,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat-permissions.json index 570837d5feb7..746d9d4d4b33 100644 --- a/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat-permissions.json @@ -2225,7 +2225,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat.json b/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat.json index 9460fb9f644f..233693ebae2b 100644 --- a/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/ghes-3.11-2022-11-28/fine-grained-pat.json @@ -3601,7 +3601,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-permissions.json index 71846d9285a7..c2a04e65e213 100644 --- a/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-permissions.json @@ -2697,7 +2697,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-rest.json b/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-rest.json index fb019fbd3ed1..d5e5c545d36e 100644 --- a/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/ghes-3.11-2022-11-28/server-to-server-rest.json @@ -3419,7 +3419,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.11-2022-11-28/user-to-server-rest.json b/src/github-apps/data/ghes-3.11-2022-11-28/user-to-server-rest.json index 9460fb9f644f..233693ebae2b 100644 --- a/src/github-apps/data/ghes-3.11-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/ghes-3.11-2022-11-28/user-to-server-rest.json @@ -3601,7 +3601,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat-permissions.json index 01ded5525604..e5043ed9568f 100644 --- a/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat-permissions.json @@ -2252,7 +2252,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat.json b/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat.json index e4e1f3d0f720..9baefc5d1856 100644 --- a/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/ghes-3.12-2022-11-28/fine-grained-pat.json @@ -3619,7 +3619,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-permissions.json index f55300c7b612..ecf0e2979c17 100644 --- a/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-permissions.json @@ -2730,7 +2730,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-rest.json b/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-rest.json index 248692d4dbef..28902e5a2247 100644 --- a/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/ghes-3.12-2022-11-28/server-to-server-rest.json @@ -3437,7 +3437,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.12-2022-11-28/user-to-server-rest.json b/src/github-apps/data/ghes-3.12-2022-11-28/user-to-server-rest.json index e4e1f3d0f720..9baefc5d1856 100644 --- a/src/github-apps/data/ghes-3.12-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/ghes-3.12-2022-11-28/user-to-server-rest.json @@ -3619,7 +3619,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat-permissions.json index e397fb1523e9..4ca80af28fd8 100644 --- a/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat-permissions.json @@ -2321,7 +2321,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat.json b/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat.json index b8729a887cdd..c24612c21cf3 100644 --- a/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/ghes-3.13-2022-11-28/fine-grained-pat.json @@ -3673,7 +3673,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-permissions.json index e85f18c5e339..d910a2d6f790 100644 --- a/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-permissions.json @@ -2813,7 +2813,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-rest.json b/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-rest.json index 1f0457cbf9cb..e281565b0b0c 100644 --- a/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/ghes-3.13-2022-11-28/server-to-server-rest.json @@ -3491,7 +3491,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.13-2022-11-28/user-to-server-rest.json b/src/github-apps/data/ghes-3.13-2022-11-28/user-to-server-rest.json index b8729a887cdd..c24612c21cf3 100644 --- a/src/github-apps/data/ghes-3.13-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/ghes-3.13-2022-11-28/user-to-server-rest.json @@ -3673,7 +3673,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat-permissions.json index d9a323e892bb..e26bfe3ab4f3 100644 --- a/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat-permissions.json @@ -2453,7 +2453,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat.json b/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat.json index 4cdd703607eb..0c3f171d84d2 100644 --- a/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/ghes-3.14-2022-11-28/fine-grained-pat.json @@ -3757,7 +3757,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-permissions.json index eafcf726503d..13e016bbf153 100644 --- a/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-permissions.json @@ -2973,7 +2973,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-rest.json b/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-rest.json index 20eb34d039f9..43cc48969453 100644 --- a/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/ghes-3.14-2022-11-28/server-to-server-rest.json @@ -3575,7 +3575,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.14-2022-11-28/user-to-server-rest.json b/src/github-apps/data/ghes-3.14-2022-11-28/user-to-server-rest.json index 4cdd703607eb..0c3f171d84d2 100644 --- a/src/github-apps/data/ghes-3.14-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/ghes-3.14-2022-11-28/user-to-server-rest.json @@ -3757,7 +3757,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat-permissions.json b/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat-permissions.json index 086873c62a9d..7f7216fd80a0 100644 --- a/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat-permissions.json +++ b/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat-permissions.json @@ -2543,7 +2543,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat.json b/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat.json index 994907d60722..ee28e9819540 100644 --- a/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat.json +++ b/src/github-apps/data/ghes-3.15-2022-11-28/fine-grained-pat.json @@ -3825,7 +3825,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-permissions.json b/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-permissions.json index dddfe4be48d7..5023a4327822 100644 --- a/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-permissions.json +++ b/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-permissions.json @@ -3083,7 +3083,7 @@ }, { "category": "repos", - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", diff --git a/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-rest.json b/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-rest.json index e5d3c5542bdb..126a9da12453 100644 --- a/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-rest.json +++ b/src/github-apps/data/ghes-3.15-2022-11-28/server-to-server-rest.json @@ -3643,7 +3643,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/data/ghes-3.15-2022-11-28/user-to-server-rest.json b/src/github-apps/data/ghes-3.15-2022-11-28/user-to-server-rest.json index 994907d60722..ee28e9819540 100644 --- a/src/github-apps/data/ghes-3.15-2022-11-28/user-to-server-rest.json +++ b/src/github-apps/data/ghes-3.15-2022-11-28/user-to-server-rest.json @@ -3825,7 +3825,7 @@ "requestPath": "/repos/{owner}/{repo}/autolinks/{autolink_id}" }, { - "slug": "check-if-automated-security-fixes-are-enabled-for-a-repository", + "slug": "check-if-dependabot-security-updates-are-enabled-for-a-repository", "subcategory": "repos", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes" diff --git a/src/github-apps/lib/config.json b/src/github-apps/lib/config.json index 82273c01fde7..f45237b6ec41 100644 --- a/src/github-apps/lib/config.json +++ b/src/github-apps/lib/config.json @@ -60,5 +60,5 @@ "2022-11-28" ] }, - "sha": "99b100d4af04d83bdb08024aa6af991edd2ea02f" + "sha": "b1a9b605ce4d053e9554509fb4503109617a85f3" } \ No newline at end of file diff --git a/src/graphql/data/fpt/changelog.json b/src/graphql/data/fpt/changelog.json index 6441d1ed004d..178140f6f8ac 100644 --- a/src/graphql/data/fpt/changelog.json +++ b/src/graphql/data/fpt/changelog.json @@ -1,4 +1,234 @@ [ + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "

    Type CopilotLicenseType was removed

    ", + "

    Type CopilotLimitedFeature was removed

    ", + "

    Type CopilotLimitedUser was removed

    ", + "

    Type CreateSavedNotificationThreadInput was removed

    ", + "

    Type CreateSavedNotificationThreadPayload was removed

    ", + "

    Type DeleteSavedNotificationThreadInput was removed

    ", + "

    Type DeleteSavedNotificationThreadPayload was removed

    ", + "

    Type DiscussionPubSubTopic was removed

    ", + "

    Type IssuePubSubTopic was removed

    ", + "

    Type MarkAllNotificationsInput was removed

    ", + "

    Type MarkAllNotificationsPayload was removed

    ", + "

    Type MarkNotificationAsDoneInput was removed

    ", + "

    Type MarkNotificationAsDonePayload was removed

    ", + "

    Type MarkNotificationAsReadInput was removed

    ", + "

    Type MarkNotificationAsReadPayload was removed

    ", + "

    Type MarkNotificationAsUndoneInput was removed

    ", + "

    Type MarkNotificationAsUndonePayload was removed

    ", + "

    Type MarkNotificationAsUnreadInput was removed

    ", + "

    Type MarkNotificationAsUnreadPayload was removed

    ", + "

    Type MarkNotificationSubjectAsReadInput was removed

    ", + "

    Type MarkNotificationSubjectAsReadPayload was removed

    ", + "

    Type MarkNotificationsAsDoneInput was removed

    ", + "

    Type MarkNotificationsAsDonePayload was removed

    ", + "

    Type MarkNotificationsAsReadInput was removed

    ", + "

    Type MarkNotificationsAsReadPayload was removed

    ", + "

    Type MarkNotificationsAsUndoneInput was removed

    ", + "

    Type MarkNotificationsAsUndonePayload was removed

    ", + "

    Type MarkNotificationsAsUnreadInput was removed

    ", + "

    Type MarkNotificationsAsUnreadPayload was removed

    ", + "

    Type NotificationReason was removed

    ", + "

    Type NotificationStatus was removed

    ", + "

    Type NotificationThread was removed

    ", + "

    Type NotificationThreadConnection was removed

    ", + "

    Type NotificationThreadEdge was removed

    ", + "

    Type NotificationThreadFilters was removed

    ", + "

    Type NotificationThreadSubscriptionState was removed

    ", + "

    Type NotificationsList was removed

    ", + "

    Type NotificationsSubject was removed

    ", + "

    Type PullRequestPubSubTopic was removed

    ", + "

    Type RepositoryDependabotAlertsThread was removed

    ", + "

    Type UnsubscribeFromNotificationsInput was removed

    ", + "

    Type UnsubscribeFromNotificationsPayload was removed

    ", + "

    Type UserPubSubTopic was removed

    ", + "

    Field updatesChannel was removed from object type Commit

    ", + "

    Field comment was removed from object type Discussion

    ", + "

    Field updatesChannel was removed from object type Discussion

    ", + "

    Argument renderMobileTasklistBlocks: Boolean was removed from field Discussion.bodyHTML

    ", + "

    Field updatesChannel was removed from object type Issue

    ", + "

    Argument renderMobileTasklistBlocks: Boolean was removed from field Issue.bodyHTML

    ", + "

    Field createSavedNotificationThread was removed from object type Mutation

    ", + "

    Field deleteSavedNotificationThread was removed from object type Mutation

    ", + "

    Field markAllNotifications was removed from object type Mutation

    ", + "

    Field markNotificationAsDone was removed from object type Mutation

    ", + "

    Field markNotificationAsRead was removed from object type Mutation

    ", + "

    Field markNotificationAsUndone was removed from object type Mutation

    ", + "

    Field markNotificationAsUnread was removed from object type Mutation

    ", + "

    Field markNotificationSubjectAsRead was removed from object type Mutation

    ", + "

    Field markNotificationsAsDone was removed from object type Mutation

    ", + "

    Field markNotificationsAsRead was removed from object type Mutation

    ", + "

    Field markNotificationsAsUndone was removed from object type Mutation

    ", + "

    Field markNotificationsAsUnread was removed from object type Mutation

    ", + "

    Field unsubscribeFromNotifications was removed from object type Mutation

    ", + "

    Field updatesChannel was removed from object type 'ProjectV2'

    ", + "

    Field updatesChannel was removed from object type PullRequest

    ", + "

    Argument renderMobileTasklistBlocks: Boolean was removed from field PullRequest.bodyHTML

    ", + "

    Field mobileUpdatesUrl was removed from object type Query

    ", + "

    Field viewerUpdatesChannel was removed from object type Query

    ", + "

    Field updatesChannel was removed from object type Ref

    ", + "

    Field copilotLicenseType was removed from object type User

    ", + "

    Field copilotLimitedUser was removed from object type User

    ", + "

    Field notificationThreads was removed from object type User

    " + ] + } + ], + "previewChanges": [], + "upcomingChanges": [], + "date": "2025-01-14" + }, + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "

    Type CopilotLicenseType was added

    ", + "

    Field copilotLicenseType was added to object type User

    " + ] + } + ], + "previewChanges": [], + "upcomingChanges": [], + "date": "2025-01-13" + }, + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "

    Type AccessUserNamespaceRepositoryInput was added

    ", + "

    Type AccessUserNamespaceRepositoryPayload was added

    ", + "

    Type AnnouncementBanner was added

    ", + "

    Type CopilotLimitedFeature was added

    ", + "

    Type CopilotLimitedUser was added

    ", + "

    Type CreateSavedNotificationThreadInput was added

    ", + "

    Type CreateSavedNotificationThreadPayload was added

    ", + "

    Type CvssSeverities was added

    ", + "

    Type DeleteSavedNotificationThreadInput was added

    ", + "

    Type DeleteSavedNotificationThreadPayload was added

    ", + "

    Type DiscussionPubSubTopic was added

    ", + "

    Type IssuePubSubTopic was added

    ", + "

    Type MarkAllNotificationsInput was added

    ", + "

    Type MarkAllNotificationsPayload was added

    ", + "

    Type MarkNotificationAsReadInput was added

    ", + "

    Type MarkNotificationAsReadPayload was added

    ", + "

    Type MarkNotificationAsUndoneInput was added

    ", + "

    Type MarkNotificationAsUndonePayload was added

    ", + "

    Type MarkNotificationAsUnreadInput was added

    ", + "

    Type MarkNotificationAsUnreadPayload was added

    ", + "

    Type MarkNotificationSubjectAsReadInput was added

    ", + "

    Type MarkNotificationSubjectAsReadPayload was added

    ", + "

    Type MarkNotificationsAsDoneInput was added

    ", + "

    Type MarkNotificationsAsDonePayload was added

    ", + "

    Type MarkNotificationsAsReadInput was added

    ", + "

    Type MarkNotificationsAsReadPayload was added

    ", + "

    Type MarkNotificationsAsUndoneInput was added

    ", + "

    Type MarkNotificationsAsUndonePayload was added

    ", + "

    Type MarkNotificationsAsUnreadInput was added

    ", + "

    Type MarkNotificationsAsUnreadPayload was added

    ", + "

    Type NotificationReason was added

    ", + "

    Type NotificationStatus was added

    ", + "

    Type NotificationThread was added

    ", + "

    Type NotificationThreadConnection was added

    ", + "

    Type NotificationThreadEdge was added

    ", + "

    Type NotificationThreadFilters was added

    ", + "

    Type NotificationThreadSubscriptionState was added

    ", + "

    Type NotificationsList was added

    ", + "

    Type NotificationsSubject was added

    ", + "

    Type ParentIssueAddedEvent was added

    ", + "

    Type ParentIssueRemovedEvent was added

    ", + "

    Type PullRequestPubSubTopic was added

    ", + "

    Type RepositoryDependabotAlertsThread was added

    ", + "

    Type SubIssueAddedEvent was added

    ", + "

    Type SubIssueRemovedEvent was added

    ", + "

    Type UserNamespaceRepository was added

    ", + "

    Type UserNamespaceRepositoryConnection was added

    ", + "

    Type UserNamespaceRepositoryEdge was added

    ", + "

    Type UserPubSubTopic was added

    ", + "

    Input field duplicateIssueId of type ID was added to input object type CloseIssueInput

    ", + "

    Field updatesChannel was added to object type Commit

    ", + "

    Field relationship was added to object type DependencyGraphDependency

    ", + "

    Field comment was added to object type Discussion

    ", + "

    Field updatesChannel was added to object type Discussion

    ", + "

    Argument renderMobileTasklistBlocks: Boolean (with default value) added to field Discussion.bodyHTML

    ", + "

    Field announcementBanner was added to object type Enterprise

    ", + "

    Field ruleset was added to object type Enterprise

    ", + "

    Field rulesets was added to object type Enterprise

    ", + "

    Field userNamespaceRepositories was added to object type Enterprise

    ", + "

    Field updatesChannel was added to object type Issue

    ", + "

    Argument renderMobileTasklistBlocks: Boolean (with default value) added to field Issue.bodyHTML

    ", + "

    Argument enableDuplicate: Boolean (with default value) added to field Issue.stateReason

    ", + "

    Member ParentIssueAddedEvent was added to Union type IssueTimelineItems

    ", + "

    Member ParentIssueRemovedEvent was added to Union type IssueTimelineItems

    ", + "

    Member SubIssueAddedEvent was added to Union type IssueTimelineItems

    ", + "

    Member SubIssueRemovedEvent was added to Union type IssueTimelineItems

    ", + "

    Enum value 'PARENT_ISSUE_ADDED_EVENTwas added to enumIssueTimelineItemsItemType'

    ", + "

    Enum value 'PARENT_ISSUE_REMOVED_EVENTwas added to enumIssueTimelineItemsItemType'

    ", + "

    Enum value 'SUB_ISSUE_ADDED_EVENTwas added to enumIssueTimelineItemsItemType'

    ", + "

    Enum value 'SUB_ISSUE_REMOVED_EVENTwas added to enumIssueTimelineItemsItemType'

    ", + "

    Field accessUserNamespaceRepository was added to object type Mutation

    ", + "

    Field createSavedNotificationThread was added to object type Mutation

    ", + "

    Field deleteSavedNotificationThread was added to object type Mutation

    ", + "

    Field markAllNotifications was added to object type Mutation

    ", + "

    Field markNotificationAsRead was added to object type Mutation

    ", + "

    Field markNotificationAsUndone was added to object type Mutation

    ", + "

    Field markNotificationAsUnread was added to object type Mutation

    ", + "

    Field markNotificationSubjectAsRead was added to object type Mutation

    ", + "

    Field markNotificationsAsDone was added to object type Mutation

    ", + "

    Field markNotificationsAsRead was added to object type Mutation

    ", + "

    Field markNotificationsAsUndone was added to object type Mutation

    ", + "

    Field markNotificationsAsUnread was added to object type Mutation

    ", + "

    Field announcementBanner was added to object type Organization

    ", + "

    Field updatesChannel was added to object type 'ProjectV2'

    ", + "

    Field updatesChannel was added to object type PullRequest

    ", + "

    Argument renderMobileTasklistBlocks: Boolean (with default value) added to field PullRequest.bodyHTML

    ", + "

    Field allowedMergeMethods was added to object type PullRequestParameters

    ", + "

    Input field allowedMergeMethods of type '[String!]was added to input object typePullRequestParametersInput'

    ", + "

    Member ParentIssueAddedEvent was added to Union type PullRequestTimelineItems

    ", + "

    Member ParentIssueRemovedEvent was added to Union type PullRequestTimelineItems

    ", + "

    Member SubIssueAddedEvent was added to Union type PullRequestTimelineItems

    ", + "

    Member SubIssueRemovedEvent was added to Union type PullRequestTimelineItems

    ", + "

    Enum value 'PARENT_ISSUE_ADDED_EVENTwas added to enumPullRequestTimelineItemsItemType'

    ", + "

    Enum value 'PARENT_ISSUE_REMOVED_EVENTwas added to enumPullRequestTimelineItemsItemType'

    ", + "

    Enum value 'SUB_ISSUE_ADDED_EVENTwas added to enumPullRequestTimelineItemsItemType'

    ", + "

    Enum value 'SUB_ISSUE_REMOVED_EVENTwas added to enumPullRequestTimelineItemsItemType'

    ", + "

    Field mobileUpdatesUrl was added to object type Query

    ", + "

    Field viewerUpdatesChannel was added to object type Query

    ", + "

    Field updatesChannel was added to object type Ref

    ", + "

    Enum value REPOSITORY was added to enum RepositoryRulesetTarget

    ", + "

    Field cvssSeverities was added to object type SecurityAdvisory

    ", + "

    Field copilotLimitedUser was added to object type User

    ", + "

    Field notificationThreads was added to object type User

    " + ] + } + ], + "previewChanges": [], + "upcomingChanges": [ + { + "title": "The following changes will be made to the schema:", + "changes": [ + "

    On member AnnouncementBannerI.announcement:announcement will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member AnnouncementBannerI.announcementCreatedAt:announcementCreatedAt will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member AnnouncementBannerI.announcementExpiresAt:announcementExpiresAt will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member AnnouncementBannerI.announcementUserDismissible:announcementUserDismissible will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Enterprise.announcement:announcement will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Enterprise.announcementCreatedAt:announcementCreatedAt will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Enterprise.announcementExpiresAt:announcementExpiresAt will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Enterprise.announcementUserDismissible:announcementUserDismissible will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Organization.announcement:announcement will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Organization.announcementCreatedAt:announcementCreatedAt will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Organization.announcementExpiresAt:announcementExpiresAt will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    ", + "

    On member Organization.announcementUserDismissible:announcementUserDismissible will be removed. Use the announcementBanner object instead. Effective 2025-04-01.

    " + ] + } + ], + "date": "2025-01-10" + }, { "schemaChanges": [ { diff --git a/src/graphql/data/fpt/graphql_upcoming_changes.public.yml b/src/graphql/data/fpt/graphql_upcoming_changes.public.yml index b3124eef7031..7849695f58f3 100644 --- a/src/graphql/data/fpt/graphql_upcoming_changes.public.yml +++ b/src/graphql/data/fpt/graphql_upcoming_changes.public.yml @@ -666,6 +666,86 @@ upcoming_changes: date: '2025-01-01T00:00:00+00:00' criticality: breaking owner: chriskirkland + - location: AnnouncementBannerI.announcement + description: + '`announcement` will be removed. Use the `announcementBanner` object + instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: AnnouncementBannerI.announcementCreatedAt + description: + '`announcementCreatedAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: AnnouncementBannerI.announcementExpiresAt + description: + '`announcementExpiresAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: AnnouncementBannerI.announcementUserDismissible + description: + '`announcementUserDismissible` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcement + description: + '`announcement` will be removed. Use the `announcementBanner` object + instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcementCreatedAt + description: + '`announcementCreatedAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcementExpiresAt + description: + '`announcementExpiresAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcementUserDismissible + description: + '`announcementUserDismissible` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil - location: Enterprise.members.hasTwoFactorEnabled description: '`hasTwoFactorEnabled` will be removed. Use `two_factor_method_security` @@ -690,6 +770,46 @@ upcoming_changes: date: '2025-04-01T00:00:00+00:00' criticality: breaking owner: authentication + - location: Organization.announcement + description: + '`announcement` will be removed. Use the `announcementBanner` object + instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Organization.announcementCreatedAt + description: + '`announcementCreatedAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Organization.announcementExpiresAt + description: + '`announcementExpiresAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Organization.announcementUserDismissible + description: + '`announcementUserDismissible` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil - location: ProjectV2.databaseId description: '`databaseId` will be removed. Use `fullDatabaseId` instead.' reason: diff --git a/src/graphql/data/fpt/schema.docs.graphql b/src/graphql/data/fpt/schema.docs.graphql index e731bdd599ce..8ac297fae44c 100644 --- a/src/graphql/data/fpt/schema.docs.graphql +++ b/src/graphql/data/fpt/schema.docs.graphql @@ -200,6 +200,46 @@ type AcceptTopicSuggestionPayload { topic: Topic @deprecated(reason: "Suggested topics are no longer supported Removal on 2024-04-01 UTC.") } +""" +Autogenerated input type of AccessUserNamespaceRepository +""" +input AccessUserNamespaceRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise owning the user namespace repository. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the user namespace repository to access. + """ + repositoryId: ID! +} + +""" +Autogenerated return type of AccessUserNamespaceRepository. +""" +type AccessUserNamespaceRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The time that repository access expires at + """ + expiresAt: DateTime + + """ + The repository that is temporarily accessible. + """ + repository: Repository +} + """ Represents an object which can take actions on GitHub. Typically a User or Bot. """ @@ -1258,6 +1298,31 @@ type AddedToProjectEvent implements Node { projectColumnName: String! } +""" +An announcement banner for an enterprise or organization. +""" +type AnnouncementBanner { + """ + The date the announcement was created + """ + createdAt: DateTime! + + """ + The expiration date of the announcement, if any + """ + expiresAt: DateTime + + """ + Whether the announcement can be dismissed by the user + """ + isUserDismissible: Boolean! + + """ + The text of the announcement + """ + message: String +} + """ Represents an announcement banner. """ @@ -1266,21 +1331,33 @@ interface AnnouncementBannerI { The text of the announcement """ announcement: String + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The date the announcement was created """ announcementCreatedAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The expiration date of the announcement, if any """ announcementExpiresAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Whether the announcement can be dismissed by the user """ announcementUserDismissible: Boolean + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) } """ @@ -4315,6 +4392,11 @@ input CloseIssueInput { """ clientMutationId: String + """ + ID of the issue that this is a duplicate of. + """ + duplicateIssueId: ID @possibleTypes(concreteTypes: ["Issue"]) + """ ID of the issue to be closed. """ @@ -9211,6 +9293,21 @@ type CrossReferencedEvent implements Node & UniformResourceLocatable { willCloseTarget: Boolean! } +""" +The Common Vulnerability Scoring System +""" +type CvssSeverities { + """ + The CVSS v3 severity associated with this advisory + """ + cvssV3: CVSS + + """ + The CVSS v4 severity associated with this advisory + """ + cvssV4: CVSS +} + """ An ISO-8601 encoded date string. """ @@ -10204,6 +10301,11 @@ type DependencyGraphDependency { """ packageName: String! + """ + Public preview: The relationship of the dependency. Can be direct, transitive, or unknown + """ + relationship: String! + """ The repository containing the package """ @@ -12850,21 +12952,38 @@ type Enterprise implements AnnouncementBannerI & Node { The text of the announcement """ announcement: String + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) + + """ + The announcement banner set on this enterprise, if any. Only visible to members of the enterprise. + """ + announcementBanner: AnnouncementBanner """ The date the announcement was created """ announcementCreatedAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The expiration date of the announcement, if any """ announcementExpiresAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Whether the announcement can be dismissed by the user """ announcementUserDismissible: Boolean + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ A URL pointing to the enterprise's public avatar. @@ -13048,6 +13167,41 @@ type Enterprise implements AnnouncementBannerI & Node { """ resourcePath: URI! + """ + Returns a single ruleset from the current enterprise by ID. + """ + ruleset( + """ + The ID of the ruleset to be returned. + """ + databaseId: Int! + ): RepositoryRuleset + + """ + A list of rulesets for this enterprise. + """ + rulesets( + """ + 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 + ): RepositoryRulesetConnection + """ The URL-friendly identifier for the enterprise. """ @@ -13058,6 +13212,41 @@ type Enterprise implements AnnouncementBannerI & Node { """ url: URI! + """ + A list of repositories that belong to users. Only available for enterprises with Enterprise Managed Users. + """ + userNamespaceRepositories( + """ + 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 repositories returned from the connection. + """ + orderBy: RepositoryOrder = {field: NAME, direction: ASC} + + """ + The search string to look for. + """ + query: String + ): UserNamespaceRepositoryConnection! + """ Is the current viewer an admin of this enterprise? """ @@ -18600,7 +18789,12 @@ type Issue implements Assignable & Closable & Comment & Deletable & Labelable & """ Identifies the reason for the issue state. """ - stateReason: IssueStateReason + stateReason( + """ + Whether or not to return state reason for duplicates + """ + enableDuplicate: Boolean = false + ): IssueStateReason """ A list of sub-issues associated with the Issue. @@ -19367,7 +19561,8 @@ enum IssueStateReason { COMPLETED """ - An issue that has been closed as a duplicate + An issue that has been closed as a duplicate. To retrieve this value, set + `(enableDuplicate: true)` when querying the stateReason field. """ DUPLICATE @@ -19552,11 +19747,15 @@ union IssueTimelineItems = | MentionedEvent | MilestonedEvent | MovedColumnsInProjectEvent + | ParentIssueAddedEvent + | ParentIssueRemovedEvent | PinnedEvent | ReferencedEvent | RemovedFromProjectEvent | RenamedTitleEvent | ReopenedEvent + | SubIssueAddedEvent + | SubIssueRemovedEvent | SubscribedEvent | TransferredEvent | UnassignedEvent @@ -19711,6 +19910,16 @@ enum IssueTimelineItemsItemType { """ MOVED_COLUMNS_IN_PROJECT_EVENT + """ + Represents a 'parent_issue_added' event on a given issue. + """ + PARENT_ISSUE_ADDED_EVENT + + """ + Represents a 'parent_issue_removed' event on a given issue. + """ + PARENT_ISSUE_REMOVED_EVENT + """ Represents a 'pinned' event on a given issue or pull request. """ @@ -19741,6 +19950,16 @@ enum IssueTimelineItemsItemType { """ SUBSCRIBED_EVENT + """ + Represents a 'sub_issue_added' event on a given issue. + """ + SUB_ISSUE_ADDED_EVENT + + """ + Represents a 'sub_issue_removed' event on a given issue. + """ + SUB_ISSUE_REMOVED_EVENT + """ Represents a 'transferred' event on a given issue or pull request. """ @@ -20762,43 +20981,6 @@ type MarkFileAsViewedPayload { pullRequest: PullRequest } -""" -Autogenerated input type of MarkNotificationAsDone -""" -input MarkNotificationAsDoneInput - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - The NotificationThread id. - """ - id: ID! -} - -""" -Autogenerated return type of MarkNotificationAsDone. -""" -type MarkNotificationAsDonePayload - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - Did the operation succeed? - """ - success: Boolean - - """ - The user that the notification belongs to. - """ - viewer: User -} - """ Autogenerated input type of MarkProjectV2AsTemplate """ @@ -23085,6 +23267,16 @@ type Mutation { input: AcceptTopicSuggestionInput! ): AcceptTopicSuggestionPayload + """ + Access user namespace repository for a temporary duration. + """ + accessUserNamespaceRepository( + """ + Parameters for AccessUserNamespaceRepository + """ + input: AccessUserNamespaceRepositoryInput! + ): AccessUserNamespaceRepositoryPayload + """ Adds assignees to an assignable object. """ @@ -24294,16 +24486,6 @@ type Mutation { input: MarkFileAsViewedInput! ): MarkFileAsViewedPayload - """ - Marks a notification as done - """ - markNotificationAsDone( - """ - Parameters for MarkNotificationAsDone - """ - input: MarkNotificationAsDoneInput! - ): MarkNotificationAsDonePayload - """ Mark a project as a template. Note that only projects which are owned by an Organization can be marked as a template. """ @@ -24915,16 +25097,6 @@ type Mutation { input: UnresolveReviewThreadInput! ): UnresolveReviewThreadPayload - """ - Unsubscribes from notifications - """ - unsubscribeFromNotifications( - """ - Parameters for UnsubscribeFromNotifications - """ - input: UnsubscribeFromNotificationsInput! - ): UnsubscribeFromNotificationsPayload - """ Update a branch protection rule """ @@ -29239,21 +29411,38 @@ type Organization implements Actor & AnnouncementBannerI & MemberStatusable & No The text of the announcement """ announcement: String + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) + + """ + The announcement banner set on this organization, if any. Only visible to members of the organization's enterprise. + """ + announcementBanner: AnnouncementBanner """ The date the announcement was created """ announcementCreatedAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The expiration date of the announcement, if any """ announcementExpiresAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Whether the announcement can be dismissed by the user """ announcementUserDismissible: Boolean + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Determine if this repository owner has any items that can be pinned to their profile. @@ -32045,6 +32234,56 @@ type PageInfo { startCursor: String } +""" +Represents a 'parent_issue_added' event on a given issue. +""" +type ParentIssueAddedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the ParentIssueAddedEvent object + """ + id: ID! + + """ + The parent issue added. + """ + parent: Issue +} + +""" +Represents a 'parent_issue_removed' event on a given issue. +""" +type ParentIssueRemovedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the ParentIssueRemovedEvent object + """ + id: ID! + + """ + The parent issue removed. + """ + parent: Issue +} + """ The possible types of patch statuses. """ @@ -38100,6 +38339,12 @@ enum PullRequestOrderField { Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. """ type PullRequestParameters { + """ + When merging pull requests, you can allow any combination of merge commits, + squashing, or rebasing. At least one option must be enabled. + """ + allowedMergeMethods: [String!] + """ New, reviewable commits pushed will dismiss previous pull request review approvals. """ @@ -38130,6 +38375,12 @@ type PullRequestParameters { Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. """ input PullRequestParametersInput { + """ + When merging pull requests, you can allow any combination of merge commits, + squashing, or rebasing. At least one option must be enabled. + """ + allowedMergeMethods: [String!] + """ New, reviewable commits pushed will dismiss previous pull request review approvals. """ @@ -39411,6 +39662,8 @@ union PullRequestTimelineItems = | MergedEvent | MilestonedEvent | MovedColumnsInProjectEvent + | ParentIssueAddedEvent + | ParentIssueRemovedEvent | PinnedEvent | PullRequestCommit | PullRequestCommitCommentThread @@ -39426,6 +39679,8 @@ union PullRequestTimelineItems = | ReviewDismissedEvent | ReviewRequestRemovedEvent | ReviewRequestedEvent + | SubIssueAddedEvent + | SubIssueRemovedEvent | SubscribedEvent | TransferredEvent | UnassignedEvent @@ -39665,6 +39920,16 @@ enum PullRequestTimelineItemsItemType { """ MOVED_COLUMNS_IN_PROJECT_EVENT + """ + Represents a 'parent_issue_added' event on a given issue. + """ + PARENT_ISSUE_ADDED_EVENT + + """ + Represents a 'parent_issue_removed' event on a given issue. + """ + PARENT_ISSUE_REMOVED_EVENT + """ Represents a 'pinned' event on a given issue or pull request. """ @@ -39745,6 +40010,16 @@ enum PullRequestTimelineItemsItemType { """ SUBSCRIBED_EVENT + """ + Represents a 'sub_issue_added' event on a given issue. + """ + SUB_ISSUE_ADDED_EVENT + + """ + Represents a 'sub_issue_removed' event on a given issue. + """ + SUB_ISSUE_REMOVED_EVENT + """ Represents a 'transferred' event on a given issue or pull request. """ @@ -39945,12 +40220,12 @@ type Query implements Node { enterpriseSlug: String! """ - The role for the business member invitation. + The role for the enterprise member invitation. """ role: EnterpriseAdministratorRole! """ - The login of the user invited to join the business. + The login of the user invited to join the enterprise. """ userLogin: String! ): EnterpriseAdministratorInvitation @@ -39975,7 +40250,7 @@ type Query implements Node { enterpriseSlug: String! """ - The login of the user invited to join the business. + The login of the user invited to join the enterprise. """ userLogin: String! ): EnterpriseMemberInvitation @@ -42636,7 +42911,7 @@ The privacy of a repository """ enum RepoAccessAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -42776,7 +43051,7 @@ The privacy of a repository """ enum RepoAddMemberAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -43041,7 +43316,7 @@ The privacy of a repository """ enum RepoArchivedAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -44486,7 +44761,7 @@ The privacy of a repository """ enum RepoCreateAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -44626,7 +44901,7 @@ The privacy of a repository """ enum RepoDestroyAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -44766,7 +45041,7 @@ The privacy of a repository """ enum RepoRemoveMemberAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -48520,6 +48795,11 @@ enum RepositoryRulesetTarget { """ PUSH + """ + repository + """ + REPOSITORY + """ Tag """ @@ -48596,7 +48876,7 @@ The repository's visibility level. """ enum RepositoryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -50283,6 +50563,11 @@ type SecurityAdvisory implements Node { reason: "`cvss` will be removed. New `cvss_severities` field will now contain both `cvss_v3` and `cvss_v4` properties. Removal on 2025-10-01 UTC." ) + """ + The CVSS associated with this advisory + """ + cvssSeverities: CvssSeverities! + """ CWEs associated with this Advisory """ @@ -54692,6 +54977,56 @@ type StripeConnectAccount { stripeDashboardUrl: URI! } +""" +Represents a 'sub_issue_added' event on a given issue. +""" +type SubIssueAddedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the SubIssueAddedEvent object + """ + id: ID! + + """ + The sub-issue added. + """ + subIssue: Issue +} + +""" +Represents a 'sub_issue_removed' event on a given issue. +""" +type SubIssueRemovedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the SubIssueRemovedEvent object + """ + id: ID! + + """ + The sub-issue removed. + """ + subIssue: Issue +} + """ Summary of the state of an issue's sub-issues """ @@ -58477,42 +58812,6 @@ type UnresolveReviewThreadPayload { thread: PullRequestReviewThread } -""" -Autogenerated input type of UnsubscribeFromNotifications -""" -input UnsubscribeFromNotificationsInput - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - The NotificationThread IDs of the objects to unsubscribe from. - """ - ids: [ID!]! - @possibleTypes( - concreteTypes: ["Commit", "Discussion", "Issue", "PullRequest", "Repository", "Team", "TeamDiscussion"] - abstractType: "Subscribable" - ) -} - -""" -Autogenerated return type of UnsubscribeFromNotifications. -""" -type UnsubscribeFromNotificationsPayload - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - Did the operation succeed? - """ - success: Boolean -} - """ Represents an 'unsubscribed' event on a given `Subscribable`. """ @@ -63621,6 +63920,76 @@ type UserListSuggestion { name: String } +""" +A repository owned by an Enterprise Managed user. +""" +type UserNamespaceRepository implements Node { + """ + The Node ID of the UserNamespaceRepository object + """ + id: ID! + + """ + The name of the repository. + """ + name: String! + + """ + The repository's name with owner. + """ + nameWithOwner: String! + + """ + The user owner of the repository. + """ + owner: RepositoryOwner! + + """ + The repository owned by an enterprise managed user. + """ + repository: RepositoryInfo +} + +""" +A list of repositories owned by users in an enterprise with Enterprise Managed Users. +""" +type UserNamespaceRepositoryConnection { + """ + A list of edges. + """ + edges: [UserNamespaceRepositoryEdge] + + """ + A list of nodes. + """ + nodes: [UserNamespaceRepository] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type UserNamespaceRepositoryEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: UserNamespaceRepository +} + """ The user's description of what they're currently doing. """ diff --git a/src/graphql/data/fpt/schema.json b/src/graphql/data/fpt/schema.json index 7fa147a833cf..48483ac32dfa 100644 --- a/src/graphql/data/fpt/schema.json +++ b/src/graphql/data/fpt/schema.json @@ -75,7 +75,7 @@ "id": "enterpriseadministratorrole", "kind": "enums", "href": "/graphql/reference/enums#enterpriseadministratorrole", - "description": "

    The role for the business member invitation.

    " + "description": "

    The role for the enterprise member invitation.

    " }, { "name": "userLogin", @@ -83,7 +83,7 @@ "id": "string", "kind": "scalars", "href": "/graphql/reference/scalars#string", - "description": "

    The login of the user invited to join the business.

    " + "description": "

    The login of the user invited to join the enterprise.

    " } ] }, @@ -127,7 +127,7 @@ "id": "string", "kind": "scalars", "href": "/graphql/reference/scalars#string", - "description": "

    The login of the user invited to join the business.

    " + "description": "

    The login of the user invited to join the enterprise.

    " } ] }, @@ -1115,6 +1115,48 @@ } ] }, + { + "name": "accessUserNamespaceRepository", + "kind": "mutations", + "id": "accessusernamespacerepository", + "href": "/graphql/reference/mutations#accessusernamespacerepository", + "description": "

    Access user namespace repository for a temporary duration.

    ", + "inputFields": [ + { + "name": "input", + "type": "AccessUserNamespaceRepositoryInput!", + "id": "accessusernamespacerepositoryinput", + "kind": "input-objects", + "href": "/graphql/reference/input-objects#accessusernamespacerepositoryinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string", + "description": "

    A unique identifier for the client performing the mutation.

    " + }, + { + "name": "expiresAt", + "type": "DateTime", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime", + "description": "

    The time that repository access expires at.

    " + }, + { + "name": "repository", + "type": "Repository", + "id": "repository", + "kind": "objects", + "href": "/graphql/reference/objects#repository", + "description": "

    The repository that is temporarily accessible.

    " + } + ] + }, { "name": "addAssigneesToAssignable", "kind": "mutations", @@ -5217,48 +5259,6 @@ } ] }, - { - "name": "markNotificationAsDone", - "kind": "mutations", - "id": "marknotificationasdone", - "href": "/graphql/reference/mutations#marknotificationasdone", - "description": "

    Marks a notification as done.

    ", - "inputFields": [ - { - "name": "input", - "type": "MarkNotificationAsDoneInput!", - "id": "marknotificationasdoneinput", - "kind": "input-objects", - "href": "/graphql/reference/input-objects#marknotificationasdoneinput" - } - ], - "returnFields": [ - { - "name": "clientMutationId", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string", - "description": "

    A unique identifier for the client performing the mutation.

    " - }, - { - "name": "success", - "type": "Boolean", - "id": "boolean", - "kind": "scalars", - "href": "/graphql/reference/scalars#boolean", - "description": "

    Did the operation succeed?.

    " - }, - { - "name": "viewer", - "type": "User", - "id": "user", - "kind": "objects", - "href": "/graphql/reference/objects#user", - "description": "

    The user that the notification belongs to.

    " - } - ] - }, { "name": "markProjectV2AsTemplate", "kind": "mutations", @@ -7477,40 +7477,6 @@ } ] }, - { - "name": "unsubscribeFromNotifications", - "kind": "mutations", - "id": "unsubscribefromnotifications", - "href": "/graphql/reference/mutations#unsubscribefromnotifications", - "description": "

    Unsubscribes from notifications.

    ", - "inputFields": [ - { - "name": "input", - "type": "UnsubscribeFromNotificationsInput!", - "id": "unsubscribefromnotificationsinput", - "kind": "input-objects", - "href": "/graphql/reference/input-objects#unsubscribefromnotificationsinput" - } - ], - "returnFields": [ - { - "name": "clientMutationId", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string", - "description": "

    A unique identifier for the client performing the mutation.

    " - }, - { - "name": "success", - "type": "Boolean", - "id": "boolean", - "kind": "scalars", - "href": "/graphql/reference/scalars#boolean", - "description": "

    Did the operation succeed?.

    " - } - ] - }, { "name": "updateBranchProtectionRule", "kind": "mutations", @@ -10066,6 +10032,47 @@ } ] }, + { + "name": "AnnouncementBanner", + "kind": "objects", + "id": "announcementbanner", + "href": "/graphql/reference/objects#announcementbanner", + "description": "

    An announcement banner for an enterprise or organization.

    ", + "fields": [ + { + "name": "createdAt", + "description": "

    The date the announcement was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "expiresAt", + "description": "

    The expiration date of the announcement, if any.

    ", + "type": "DateTime", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "isUserDismissible", + "description": "

    Whether the announcement can be dismissed by the user.

    ", + "type": "Boolean!", + "id": "boolean", + "kind": "scalars", + "href": "/graphql/reference/scalars#boolean" + }, + { + "name": "message", + "description": "

    The text of the announcement.

    ", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + ] + }, { "name": "App", "kind": "objects", @@ -17603,6 +17610,31 @@ } ] }, + { + "name": "CvssSeverities", + "kind": "objects", + "id": "cvssseverities", + "href": "/graphql/reference/objects#cvssseverities", + "description": "

    The Common Vulnerability Scoring System.

    ", + "fields": [ + { + "name": "cvssV3", + "description": "

    The CVSS v3 severity associated with this advisory.

    ", + "type": "CVSS", + "id": "cvss", + "kind": "objects", + "href": "/graphql/reference/objects#cvss" + }, + { + "name": "cvssV4", + "description": "

    The CVSS v4 severity associated with this advisory.

    ", + "type": "CVSS", + "id": "cvss", + "kind": "objects", + "href": "/graphql/reference/objects#cvss" + } + ] + }, { "name": "DemilestonedEvent", "kind": "objects", @@ -17773,6 +17805,14 @@ "kind": "scalars", "href": "/graphql/reference/scalars#string" }, + { + "name": "relationship", + "description": "

    Public preview: The relationship of the dependency. Can be direct, transitive, or unknown.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, { "name": "repository", "description": "

    The repository containing the package.

    ", @@ -21315,7 +21355,17 @@ "type": "String", "id": "string", "kind": "scalars", - "href": "/graphql/reference/scalars#string" + "href": "/graphql/reference/scalars#string", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " + }, + { + "name": "announcementBanner", + "description": "

    The announcement banner set on this enterprise, if any. Only visible to members of the enterprise.

    ", + "type": "AnnouncementBanner", + "id": "announcementbanner", + "kind": "objects", + "href": "/graphql/reference/objects#announcementbanner" }, { "name": "announcementCreatedAt", @@ -21323,7 +21373,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementExpiresAt", @@ -21331,7 +21383,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementUserDismissible", @@ -21339,7 +21393,9 @@ "type": "Boolean", "id": "boolean", "kind": "scalars", - "href": "/graphql/reference/scalars#boolean" + "href": "/graphql/reference/scalars#boolean", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "avatarUrl", @@ -21665,6 +21721,76 @@ "kind": "scalars", "href": "/graphql/reference/scalars#uri" }, + { + "name": "ruleset", + "description": "

    Returns a single ruleset from the current enterprise by ID.

    ", + "type": "RepositoryRuleset", + "id": "repositoryruleset", + "kind": "objects", + "href": "/graphql/reference/objects#repositoryruleset", + "arguments": [ + { + "name": "databaseId", + "description": "

    The ID of the ruleset to be returned.

    ", + "type": { + "name": "Int!", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + } + ] + }, + { + "name": "rulesets", + "description": "

    A list of rulesets for this enterprise.

    ", + "type": "RepositoryRulesetConnection", + "id": "repositoryrulesetconnection", + "kind": "objects", + "href": "/graphql/reference/objects#repositoryrulesetconnection", + "arguments": [ + { + "name": "after", + "description": "

    Returns the elements in the list that come after the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "before", + "description": "

    Returns the elements in the list that come before the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "first", + "description": "

    Returns the first n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + }, + { + "name": "last", + "description": "

    Returns the last n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + } + ] + }, { "name": "slug", "description": "

    The URL-friendly identifier for the enterprise.

    ", @@ -21681,6 +21807,76 @@ "kind": "scalars", "href": "/graphql/reference/scalars#uri" }, + { + "name": "userNamespaceRepositories", + "description": "

    A list of repositories that belong to users. Only available for enterprises with Enterprise Managed Users.

    ", + "type": "UserNamespaceRepositoryConnection!", + "id": "usernamespacerepositoryconnection", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepositoryconnection", + "arguments": [ + { + "name": "after", + "description": "

    Returns the elements in the list that come after the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "before", + "description": "

    Returns the elements in the list that come before the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "first", + "description": "

    Returns the first n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + }, + { + "name": "last", + "description": "

    Returns the last n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + }, + { + "name": "orderBy", + "description": "

    Ordering options for repositories returned from the connection.

    ", + "type": { + "name": "RepositoryOrder", + "id": "repositoryorder", + "kind": "input-objects", + "href": "/graphql/reference/input-objects#repositoryorder" + } + }, + { + "name": "query", + "description": "

    The search string to look for.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + } + ] + }, { "name": "viewerIsAdmin", "description": "

    Is the current viewer an admin of this enterprise?.

    ", @@ -29217,7 +29413,20 @@ "type": "IssueStateReason", "id": "issuestatereason", "kind": "enums", - "href": "/graphql/reference/enums#issuestatereason" + "href": "/graphql/reference/enums#issuestatereason", + "arguments": [ + { + "name": "enableDuplicate", + "defaultValue": false, + "description": "

    Whether or not to return state reason for duplicates.

    ", + "type": { + "name": "Boolean", + "id": "boolean", + "kind": "scalars", + "href": "/graphql/reference/scalars#boolean" + } + } + ] }, { "name": "subIssues", @@ -40120,7 +40329,17 @@ "type": "String", "id": "string", "kind": "scalars", - "href": "/graphql/reference/scalars#string" + "href": "/graphql/reference/scalars#string", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " + }, + { + "name": "announcementBanner", + "description": "

    The announcement banner set on this organization, if any. Only visible to members of the organization's enterprise.

    ", + "type": "AnnouncementBanner", + "id": "announcementbanner", + "kind": "objects", + "href": "/graphql/reference/objects#announcementbanner" }, { "name": "announcementCreatedAt", @@ -40128,7 +40347,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementExpiresAt", @@ -40136,7 +40357,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementUserDismissible", @@ -40144,7 +40367,9 @@ "type": "Boolean", "id": "boolean", "kind": "scalars", - "href": "/graphql/reference/scalars#boolean" + "href": "/graphql/reference/scalars#boolean", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "anyPinnableItems", @@ -44447,6 +44672,102 @@ } ] }, + { + "name": "ParentIssueAddedEvent", + "kind": "objects", + "id": "parentissueaddedevent", + "href": "/graphql/reference/objects#parentissueaddedevent", + "description": "

    Represents aparent_issue_addedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the ParentIssueAddedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "parent", + "description": "

    The parent issue added.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, + { + "name": "ParentIssueRemovedEvent", + "kind": "objects", + "id": "parentissueremovedevent", + "href": "/graphql/reference/objects#parentissueremovedevent", + "description": "

    Represents aparent_issue_removedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the ParentIssueRemovedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "parent", + "description": "

    The parent issue removed.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, { "name": "PermissionSource", "kind": "objects", @@ -52659,6 +52980,14 @@ "href": "/graphql/reference/objects#pullrequestparameters", "description": "

    Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.

    ", "fields": [ + { + "name": "allowedMergeMethods", + "description": "

    When merging pull requests, you can allow any combination of merge commits,\nsquashing, or rebasing. At least one option must be enabled.

    ", + "type": "[String!]", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, { "name": "dismissStaleReviewsOnPush", "description": "

    New, reviewable commits pushed will dismiss previous pull request review approvals.

    ", @@ -67212,6 +67541,14 @@ "isDeprecated": true, "deprecationReason": "

    cvss will be removed. New cvss_severities field will now contain both cvss_v3 and cvss_v4 properties. Removal on 2025-10-01 UTC.

    " }, + { + "name": "cvssSeverities", + "description": "

    The CVSS associated with this advisory.

    ", + "type": "CvssSeverities!", + "id": "cvssseverities", + "kind": "objects", + "href": "/graphql/reference/objects#cvssseverities" + }, { "name": "cwes", "description": "

    CWEs associated with this Advisory.

    ", @@ -70160,6 +70497,102 @@ } ] }, + { + "name": "SubIssueAddedEvent", + "kind": "objects", + "id": "subissueaddedevent", + "href": "/graphql/reference/objects#subissueaddedevent", + "description": "

    Represents asub_issue_addedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the SubIssueAddedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "subIssue", + "description": "

    The sub-issue added.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, + { + "name": "SubIssueRemovedEvent", + "kind": "objects", + "id": "subissueremovedevent", + "href": "/graphql/reference/objects#subissueremovedevent", + "description": "

    Represents asub_issue_removedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the SubIssueRemovedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "subIssue", + "description": "

    The sub-issue removed.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, { "name": "SubIssuesSummary", "kind": "objects", @@ -78843,6 +79276,128 @@ } ] }, + { + "name": "UserNamespaceRepository", + "kind": "objects", + "id": "usernamespacerepository", + "href": "/graphql/reference/objects#usernamespacerepository", + "description": "

    A repository owned by an Enterprise Managed user.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "id", + "description": "

    The Node ID of the UserNamespaceRepository object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "name", + "description": "

    The name of the repository.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "nameWithOwner", + "description": "

    The repository's name with owner.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "owner", + "description": "

    The user owner of the repository.

    ", + "type": "RepositoryOwner!", + "id": "repositoryowner", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#repositoryowner" + }, + { + "name": "repository", + "description": "

    The repository owned by an enterprise managed user.

    ", + "type": "RepositoryInfo", + "id": "repositoryinfo", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#repositoryinfo" + } + ] + }, + { + "name": "UserNamespaceRepositoryConnection", + "kind": "objects", + "id": "usernamespacerepositoryconnection", + "href": "/graphql/reference/objects#usernamespacerepositoryconnection", + "description": "

    A list of repositories owned by users in an enterprise with Enterprise Managed Users.

    ", + "fields": [ + { + "name": "edges", + "description": "

    A list of edges.

    ", + "type": "[UserNamespaceRepositoryEdge]", + "id": "usernamespacerepositoryedge", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepositoryedge" + }, + { + "name": "nodes", + "description": "

    A list of nodes.

    ", + "type": "[UserNamespaceRepository]", + "id": "usernamespacerepository", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepository" + }, + { + "name": "pageInfo", + "description": "

    Information to aid in pagination.

    ", + "type": "PageInfo!", + "id": "pageinfo", + "kind": "objects", + "href": "/graphql/reference/objects#pageinfo" + }, + { + "name": "totalCount", + "description": "

    Identifies the total count of items in the connection.

    ", + "type": "Int!", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + ] + }, + { + "name": "UserNamespaceRepositoryEdge", + "kind": "objects", + "id": "usernamespacerepositoryedge", + "href": "/graphql/reference/objects#usernamespacerepositoryedge", + "description": "

    An edge in a connection.

    ", + "fields": [ + { + "name": "cursor", + "description": "

    A cursor for use in pagination.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "node", + "description": "

    The item at the end of the edge.

    ", + "type": "UserNamespaceRepository", + "id": "usernamespacerepository", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepository" + } + ] + }, { "name": "UserStatus", "kind": "objects", @@ -79894,7 +80449,9 @@ "type": "String", "id": "string", "kind": "scalars", - "href": "/graphql/reference/scalars#string" + "href": "/graphql/reference/scalars#string", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementCreatedAt", @@ -79902,7 +80459,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementExpiresAt", @@ -79910,7 +80469,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementUserDismissible", @@ -79918,7 +80479,9 @@ "type": "Boolean", "id": "boolean", "kind": "scalars", - "href": "/graphql/reference/scalars#boolean" + "href": "/graphql/reference/scalars#boolean", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " } ] }, @@ -85170,7 +85733,7 @@ }, { "name": "DUPLICATE", - "description": "

    An issue that has been closed as a duplicate.

    " + "description": "

    An issue that has been closed as a duplicate. To retrieve this value, set\n(enableDuplicate: true) when querying the stateReason field.

    " }, { "name": "NOT_PLANNED", @@ -85257,6 +85820,14 @@ "name": "MOVED_COLUMNS_IN_PROJECT_EVENT", "description": "

    Represents amoved_columns_in_projectevent on a given issue or pull request.

    " }, + { + "name": "PARENT_ISSUE_ADDED_EVENT", + "description": "

    Represents aparent_issue_addedevent on a given issue.

    " + }, + { + "name": "PARENT_ISSUE_REMOVED_EVENT", + "description": "

    Represents aparent_issue_removedevent on a given issue.

    " + }, { "name": "PINNED_EVENT", "description": "

    Represents apinnedevent on a given issue or pull request.

    " @@ -85281,6 +85852,14 @@ "name": "SUBSCRIBED_EVENT", "description": "

    Represents asubscribedevent on a given Subscribable.

    " }, + { + "name": "SUB_ISSUE_ADDED_EVENT", + "description": "

    Represents asub_issue_addedevent on a given issue.

    " + }, + { + "name": "SUB_ISSUE_REMOVED_EVENT", + "description": "

    Represents asub_issue_removedevent on a given issue.

    " + }, { "name": "TRANSFERRED_EVENT", "description": "

    Represents atransferredevent on a given issue or pull request.

    " @@ -87285,6 +87864,14 @@ "name": "MOVED_COLUMNS_IN_PROJECT_EVENT", "description": "

    Represents amoved_columns_in_projectevent on a given issue or pull request.

    " }, + { + "name": "PARENT_ISSUE_ADDED_EVENT", + "description": "

    Represents aparent_issue_addedevent on a given issue.

    " + }, + { + "name": "PARENT_ISSUE_REMOVED_EVENT", + "description": "

    Represents aparent_issue_removedevent on a given issue.

    " + }, { "name": "PINNED_EVENT", "description": "

    Represents apinnedevent on a given issue or pull request.

    " @@ -87349,6 +87936,14 @@ "name": "SUBSCRIBED_EVENT", "description": "

    Represents asubscribedevent on a given Subscribable.

    " }, + { + "name": "SUB_ISSUE_ADDED_EVENT", + "description": "

    Represents asub_issue_addedevent on a given issue.

    " + }, + { + "name": "SUB_ISSUE_REMOVED_EVENT", + "description": "

    Represents asub_issue_removedevent on a given issue.

    " + }, { "name": "TRANSFERRED_EVENT", "description": "

    Represents atransferredevent on a given issue or pull request.

    " @@ -87497,7 +88092,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87518,7 +88113,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87539,7 +88134,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87581,7 +88176,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87602,7 +88197,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87623,7 +88218,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -88126,6 +88721,10 @@ "name": "PUSH", "description": "

    Push.

    " }, + { + "name": "REPOSITORY", + "description": "

    repository.

    " + }, { "name": "TAG", "description": "

    Tag.

    " @@ -88141,7 +88740,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -90809,6 +91408,16 @@ "id": "movedcolumnsinprojectevent", "href": "/graphql/reference/objects#movedcolumnsinprojectevent" }, + { + "name": "ParentIssueAddedEvent", + "id": "parentissueaddedevent", + "href": "/graphql/reference/objects#parentissueaddedevent" + }, + { + "name": "ParentIssueRemovedEvent", + "id": "parentissueremovedevent", + "href": "/graphql/reference/objects#parentissueremovedevent" + }, { "name": "PinnedEvent", "id": "pinnedevent", @@ -90834,6 +91443,16 @@ "id": "reopenedevent", "href": "/graphql/reference/objects#reopenedevent" }, + { + "name": "SubIssueAddedEvent", + "id": "subissueaddedevent", + "href": "/graphql/reference/objects#subissueaddedevent" + }, + { + "name": "SubIssueRemovedEvent", + "id": "subissueremovedevent", + "href": "/graphql/reference/objects#subissueremovedevent" + }, { "name": "SubscribedEvent", "id": "subscribedevent", @@ -91796,6 +92415,16 @@ "id": "movedcolumnsinprojectevent", "href": "/graphql/reference/objects#movedcolumnsinprojectevent" }, + { + "name": "ParentIssueAddedEvent", + "id": "parentissueaddedevent", + "href": "/graphql/reference/objects#parentissueaddedevent" + }, + { + "name": "ParentIssueRemovedEvent", + "id": "parentissueremovedevent", + "href": "/graphql/reference/objects#parentissueremovedevent" + }, { "name": "PinnedEvent", "id": "pinnedevent", @@ -91871,6 +92500,16 @@ "id": "reviewrequestedevent", "href": "/graphql/reference/objects#reviewrequestedevent" }, + { + "name": "SubIssueAddedEvent", + "id": "subissueaddedevent", + "href": "/graphql/reference/objects#subissueaddedevent" + }, + { + "name": "SubIssueRemovedEvent", + "id": "subissueremovedevent", + "href": "/graphql/reference/objects#subissueremovedevent" + }, { "name": "SubscribedEvent", "id": "subscribedevent", @@ -92473,6 +93112,40 @@ } ] }, + { + "name": "AccessUserNamespaceRepositoryInput", + "kind": "inputObjects", + "id": "accessusernamespacerepositoryinput", + "href": "/graphql/reference/input-objects#accessusernamespacerepositoryinput", + "description": "

    Autogenerated input type of AccessUserNamespaceRepository.

    ", + "inputFields": [ + { + "name": "clientMutationId", + "description": "

    A unique identifier for the client performing the mutation.

    ", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "enterpriseId", + "description": "

    The ID of the enterprise owning the user namespace repository.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id", + "isDeprecated": false + }, + { + "name": "repositoryId", + "description": "

    The ID of the user namespace repository to access.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + } + ] + }, { "name": "AddAssigneesToAssignableInput", "kind": "inputObjects", @@ -94304,6 +94977,15 @@ "kind": "scalars", "href": "/graphql/reference/scalars#string" }, + { + "name": "duplicateIssueId", + "description": "

    ID of the issue that this is a duplicate of.

    ", + "type": "ID", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id", + "isDeprecated": false + }, { "name": "issueId", "description": "

    ID of the issue to be closed.

    ", @@ -99056,32 +99738,6 @@ } ] }, - { - "name": "MarkNotificationAsDoneInput", - "kind": "inputObjects", - "id": "marknotificationasdoneinput", - "href": "/graphql/reference/input-objects#marknotificationasdoneinput", - "description": "

    Autogenerated input type of MarkNotificationAsDone.

    ", - "isDeprecated": false, - "inputFields": [ - { - "name": "clientMutationId", - "description": "

    A unique identifier for the client performing the mutation.

    ", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string" - }, - { - "name": "id", - "description": "

    The NotificationThread id.

    ", - "type": "ID!", - "id": "id", - "kind": "scalars", - "href": "/graphql/reference/scalars#id" - } - ] - }, { "name": "MarkProjectV2AsTemplateInput", "kind": "inputObjects", @@ -100188,6 +100844,14 @@ "href": "/graphql/reference/input-objects#pullrequestparametersinput", "description": "

    Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.

    ", "inputFields": [ + { + "name": "allowedMergeMethods", + "description": "

    When merging pull requests, you can allow any combination of merge commits,\nsquashing, or rebasing. At least one option must be enabled.

    ", + "type": "[String!]", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, { "name": "dismissStaleReviewsOnPush", "description": "

    New, reviewable commits pushed will dismiss previous pull request review approvals.

    ", @@ -103224,33 +103888,6 @@ } ] }, - { - "name": "UnsubscribeFromNotificationsInput", - "kind": "inputObjects", - "id": "unsubscribefromnotificationsinput", - "href": "/graphql/reference/input-objects#unsubscribefromnotificationsinput", - "description": "

    Autogenerated input type of UnsubscribeFromNotifications.

    ", - "isDeprecated": false, - "inputFields": [ - { - "name": "clientMutationId", - "description": "

    A unique identifier for the client performing the mutation.

    ", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string" - }, - { - "name": "ids", - "description": "

    The NotificationThread IDs of the objects to unsubscribe from.

    ", - "type": "[ID!]!", - "id": "id", - "kind": "scalars", - "href": "/graphql/reference/scalars#id", - "isDeprecated": false - } - ] - }, { "name": "UpdateBranchProtectionRuleInput", "kind": "inputObjects", diff --git a/src/graphql/data/fpt/upcoming-changes.json b/src/graphql/data/fpt/upcoming-changes.json index 29b7742e051d..f3d101c3c25f 100644 --- a/src/graphql/data/fpt/upcoming-changes.json +++ b/src/graphql/data/fpt/upcoming-changes.json @@ -50,6 +50,38 @@ "criticality": "breaking", "owner": "dewski" }, + { + "location": "Organization.announcementUserDismissible", + "description": "

    announcementUserDismissible will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Organization.announcementExpiresAt", + "description": "

    announcementExpiresAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Organization.announcementCreatedAt", + "description": "

    announcementCreatedAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Organization.announcement", + "description": "

    announcement will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, { "location": "EnterpriseOwnerInfo.outsideCollaborators.hasTwoFactorEnabled", "description": "

    hasTwoFactorEnabled will be removed. Use two_factor_method_security instead.

    ", @@ -73,6 +105,70 @@ "date": "2025-04-01", "criticality": "breaking", "owner": "authentication" + }, + { + "location": "Enterprise.announcementUserDismissible", + "description": "

    announcementUserDismissible will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Enterprise.announcementExpiresAt", + "description": "

    announcementExpiresAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Enterprise.announcementCreatedAt", + "description": "

    announcementCreatedAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Enterprise.announcement", + "description": "

    announcement will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcementUserDismissible", + "description": "

    announcementUserDismissible will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcementExpiresAt", + "description": "

    announcementExpiresAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcementCreatedAt", + "description": "

    announcementCreatedAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcement", + "description": "

    announcement will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" } ], "2025-01-01": [ diff --git a/src/graphql/data/ghec/graphql_upcoming_changes.public.yml b/src/graphql/data/ghec/graphql_upcoming_changes.public.yml index b3124eef7031..7849695f58f3 100644 --- a/src/graphql/data/ghec/graphql_upcoming_changes.public.yml +++ b/src/graphql/data/ghec/graphql_upcoming_changes.public.yml @@ -666,6 +666,86 @@ upcoming_changes: date: '2025-01-01T00:00:00+00:00' criticality: breaking owner: chriskirkland + - location: AnnouncementBannerI.announcement + description: + '`announcement` will be removed. Use the `announcementBanner` object + instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: AnnouncementBannerI.announcementCreatedAt + description: + '`announcementCreatedAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: AnnouncementBannerI.announcementExpiresAt + description: + '`announcementExpiresAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: AnnouncementBannerI.announcementUserDismissible + description: + '`announcementUserDismissible` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcement + description: + '`announcement` will be removed. Use the `announcementBanner` object + instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcementCreatedAt + description: + '`announcementCreatedAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcementExpiresAt + description: + '`announcementExpiresAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Enterprise.announcementUserDismissible + description: + '`announcementUserDismissible` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil - location: Enterprise.members.hasTwoFactorEnabled description: '`hasTwoFactorEnabled` will be removed. Use `two_factor_method_security` @@ -690,6 +770,46 @@ upcoming_changes: date: '2025-04-01T00:00:00+00:00' criticality: breaking owner: authentication + - location: Organization.announcement + description: + '`announcement` will be removed. Use the `announcementBanner` object + instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Organization.announcementCreatedAt + description: + '`announcementCreatedAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Organization.announcementExpiresAt + description: + '`announcementExpiresAt` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil + - location: Organization.announcementUserDismissible + description: + '`announcementUserDismissible` will be removed. Use the `announcementBanner` + object instead.' + reason: + The individual `announcementX` fields do not follow our standard GraphQL + patterns. + date: '2025-04-01T00:00:00+00:00' + criticality: breaking + owner: vaindil - location: ProjectV2.databaseId description: '`databaseId` will be removed. Use `fullDatabaseId` instead.' reason: diff --git a/src/graphql/data/ghec/schema.docs.graphql b/src/graphql/data/ghec/schema.docs.graphql index e731bdd599ce..8ac297fae44c 100644 --- a/src/graphql/data/ghec/schema.docs.graphql +++ b/src/graphql/data/ghec/schema.docs.graphql @@ -200,6 +200,46 @@ type AcceptTopicSuggestionPayload { topic: Topic @deprecated(reason: "Suggested topics are no longer supported Removal on 2024-04-01 UTC.") } +""" +Autogenerated input type of AccessUserNamespaceRepository +""" +input AccessUserNamespaceRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise owning the user namespace repository. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the user namespace repository to access. + """ + repositoryId: ID! +} + +""" +Autogenerated return type of AccessUserNamespaceRepository. +""" +type AccessUserNamespaceRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The time that repository access expires at + """ + expiresAt: DateTime + + """ + The repository that is temporarily accessible. + """ + repository: Repository +} + """ Represents an object which can take actions on GitHub. Typically a User or Bot. """ @@ -1258,6 +1298,31 @@ type AddedToProjectEvent implements Node { projectColumnName: String! } +""" +An announcement banner for an enterprise or organization. +""" +type AnnouncementBanner { + """ + The date the announcement was created + """ + createdAt: DateTime! + + """ + The expiration date of the announcement, if any + """ + expiresAt: DateTime + + """ + Whether the announcement can be dismissed by the user + """ + isUserDismissible: Boolean! + + """ + The text of the announcement + """ + message: String +} + """ Represents an announcement banner. """ @@ -1266,21 +1331,33 @@ interface AnnouncementBannerI { The text of the announcement """ announcement: String + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The date the announcement was created """ announcementCreatedAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The expiration date of the announcement, if any """ announcementExpiresAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Whether the announcement can be dismissed by the user """ announcementUserDismissible: Boolean + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) } """ @@ -4315,6 +4392,11 @@ input CloseIssueInput { """ clientMutationId: String + """ + ID of the issue that this is a duplicate of. + """ + duplicateIssueId: ID @possibleTypes(concreteTypes: ["Issue"]) + """ ID of the issue to be closed. """ @@ -9211,6 +9293,21 @@ type CrossReferencedEvent implements Node & UniformResourceLocatable { willCloseTarget: Boolean! } +""" +The Common Vulnerability Scoring System +""" +type CvssSeverities { + """ + The CVSS v3 severity associated with this advisory + """ + cvssV3: CVSS + + """ + The CVSS v4 severity associated with this advisory + """ + cvssV4: CVSS +} + """ An ISO-8601 encoded date string. """ @@ -10204,6 +10301,11 @@ type DependencyGraphDependency { """ packageName: String! + """ + Public preview: The relationship of the dependency. Can be direct, transitive, or unknown + """ + relationship: String! + """ The repository containing the package """ @@ -12850,21 +12952,38 @@ type Enterprise implements AnnouncementBannerI & Node { The text of the announcement """ announcement: String + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) + + """ + The announcement banner set on this enterprise, if any. Only visible to members of the enterprise. + """ + announcementBanner: AnnouncementBanner """ The date the announcement was created """ announcementCreatedAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The expiration date of the announcement, if any """ announcementExpiresAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Whether the announcement can be dismissed by the user """ announcementUserDismissible: Boolean + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ A URL pointing to the enterprise's public avatar. @@ -13048,6 +13167,41 @@ type Enterprise implements AnnouncementBannerI & Node { """ resourcePath: URI! + """ + Returns a single ruleset from the current enterprise by ID. + """ + ruleset( + """ + The ID of the ruleset to be returned. + """ + databaseId: Int! + ): RepositoryRuleset + + """ + A list of rulesets for this enterprise. + """ + rulesets( + """ + 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 + ): RepositoryRulesetConnection + """ The URL-friendly identifier for the enterprise. """ @@ -13058,6 +13212,41 @@ type Enterprise implements AnnouncementBannerI & Node { """ url: URI! + """ + A list of repositories that belong to users. Only available for enterprises with Enterprise Managed Users. + """ + userNamespaceRepositories( + """ + 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 repositories returned from the connection. + """ + orderBy: RepositoryOrder = {field: NAME, direction: ASC} + + """ + The search string to look for. + """ + query: String + ): UserNamespaceRepositoryConnection! + """ Is the current viewer an admin of this enterprise? """ @@ -18600,7 +18789,12 @@ type Issue implements Assignable & Closable & Comment & Deletable & Labelable & """ Identifies the reason for the issue state. """ - stateReason: IssueStateReason + stateReason( + """ + Whether or not to return state reason for duplicates + """ + enableDuplicate: Boolean = false + ): IssueStateReason """ A list of sub-issues associated with the Issue. @@ -19367,7 +19561,8 @@ enum IssueStateReason { COMPLETED """ - An issue that has been closed as a duplicate + An issue that has been closed as a duplicate. To retrieve this value, set + `(enableDuplicate: true)` when querying the stateReason field. """ DUPLICATE @@ -19552,11 +19747,15 @@ union IssueTimelineItems = | MentionedEvent | MilestonedEvent | MovedColumnsInProjectEvent + | ParentIssueAddedEvent + | ParentIssueRemovedEvent | PinnedEvent | ReferencedEvent | RemovedFromProjectEvent | RenamedTitleEvent | ReopenedEvent + | SubIssueAddedEvent + | SubIssueRemovedEvent | SubscribedEvent | TransferredEvent | UnassignedEvent @@ -19711,6 +19910,16 @@ enum IssueTimelineItemsItemType { """ MOVED_COLUMNS_IN_PROJECT_EVENT + """ + Represents a 'parent_issue_added' event on a given issue. + """ + PARENT_ISSUE_ADDED_EVENT + + """ + Represents a 'parent_issue_removed' event on a given issue. + """ + PARENT_ISSUE_REMOVED_EVENT + """ Represents a 'pinned' event on a given issue or pull request. """ @@ -19741,6 +19950,16 @@ enum IssueTimelineItemsItemType { """ SUBSCRIBED_EVENT + """ + Represents a 'sub_issue_added' event on a given issue. + """ + SUB_ISSUE_ADDED_EVENT + + """ + Represents a 'sub_issue_removed' event on a given issue. + """ + SUB_ISSUE_REMOVED_EVENT + """ Represents a 'transferred' event on a given issue or pull request. """ @@ -20762,43 +20981,6 @@ type MarkFileAsViewedPayload { pullRequest: PullRequest } -""" -Autogenerated input type of MarkNotificationAsDone -""" -input MarkNotificationAsDoneInput - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - The NotificationThread id. - """ - id: ID! -} - -""" -Autogenerated return type of MarkNotificationAsDone. -""" -type MarkNotificationAsDonePayload - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - Did the operation succeed? - """ - success: Boolean - - """ - The user that the notification belongs to. - """ - viewer: User -} - """ Autogenerated input type of MarkProjectV2AsTemplate """ @@ -23085,6 +23267,16 @@ type Mutation { input: AcceptTopicSuggestionInput! ): AcceptTopicSuggestionPayload + """ + Access user namespace repository for a temporary duration. + """ + accessUserNamespaceRepository( + """ + Parameters for AccessUserNamespaceRepository + """ + input: AccessUserNamespaceRepositoryInput! + ): AccessUserNamespaceRepositoryPayload + """ Adds assignees to an assignable object. """ @@ -24294,16 +24486,6 @@ type Mutation { input: MarkFileAsViewedInput! ): MarkFileAsViewedPayload - """ - Marks a notification as done - """ - markNotificationAsDone( - """ - Parameters for MarkNotificationAsDone - """ - input: MarkNotificationAsDoneInput! - ): MarkNotificationAsDonePayload - """ Mark a project as a template. Note that only projects which are owned by an Organization can be marked as a template. """ @@ -24915,16 +25097,6 @@ type Mutation { input: UnresolveReviewThreadInput! ): UnresolveReviewThreadPayload - """ - Unsubscribes from notifications - """ - unsubscribeFromNotifications( - """ - Parameters for UnsubscribeFromNotifications - """ - input: UnsubscribeFromNotificationsInput! - ): UnsubscribeFromNotificationsPayload - """ Update a branch protection rule """ @@ -29239,21 +29411,38 @@ type Organization implements Actor & AnnouncementBannerI & MemberStatusable & No The text of the announcement """ announcement: String + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) + + """ + The announcement banner set on this organization, if any. Only visible to members of the organization's enterprise. + """ + announcementBanner: AnnouncementBanner """ The date the announcement was created """ announcementCreatedAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ The expiration date of the announcement, if any """ announcementExpiresAt: DateTime + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Whether the announcement can be dismissed by the user """ announcementUserDismissible: Boolean + @deprecated( + reason: "The individual `announcementX` fields do not follow our standard GraphQL patterns. Use the `announcementBanner` object instead. Removal on 2025-04-01 UTC." + ) """ Determine if this repository owner has any items that can be pinned to their profile. @@ -32045,6 +32234,56 @@ type PageInfo { startCursor: String } +""" +Represents a 'parent_issue_added' event on a given issue. +""" +type ParentIssueAddedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the ParentIssueAddedEvent object + """ + id: ID! + + """ + The parent issue added. + """ + parent: Issue +} + +""" +Represents a 'parent_issue_removed' event on a given issue. +""" +type ParentIssueRemovedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the ParentIssueRemovedEvent object + """ + id: ID! + + """ + The parent issue removed. + """ + parent: Issue +} + """ The possible types of patch statuses. """ @@ -38100,6 +38339,12 @@ enum PullRequestOrderField { Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. """ type PullRequestParameters { + """ + When merging pull requests, you can allow any combination of merge commits, + squashing, or rebasing. At least one option must be enabled. + """ + allowedMergeMethods: [String!] + """ New, reviewable commits pushed will dismiss previous pull request review approvals. """ @@ -38130,6 +38375,12 @@ type PullRequestParameters { Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. """ input PullRequestParametersInput { + """ + When merging pull requests, you can allow any combination of merge commits, + squashing, or rebasing. At least one option must be enabled. + """ + allowedMergeMethods: [String!] + """ New, reviewable commits pushed will dismiss previous pull request review approvals. """ @@ -39411,6 +39662,8 @@ union PullRequestTimelineItems = | MergedEvent | MilestonedEvent | MovedColumnsInProjectEvent + | ParentIssueAddedEvent + | ParentIssueRemovedEvent | PinnedEvent | PullRequestCommit | PullRequestCommitCommentThread @@ -39426,6 +39679,8 @@ union PullRequestTimelineItems = | ReviewDismissedEvent | ReviewRequestRemovedEvent | ReviewRequestedEvent + | SubIssueAddedEvent + | SubIssueRemovedEvent | SubscribedEvent | TransferredEvent | UnassignedEvent @@ -39665,6 +39920,16 @@ enum PullRequestTimelineItemsItemType { """ MOVED_COLUMNS_IN_PROJECT_EVENT + """ + Represents a 'parent_issue_added' event on a given issue. + """ + PARENT_ISSUE_ADDED_EVENT + + """ + Represents a 'parent_issue_removed' event on a given issue. + """ + PARENT_ISSUE_REMOVED_EVENT + """ Represents a 'pinned' event on a given issue or pull request. """ @@ -39745,6 +40010,16 @@ enum PullRequestTimelineItemsItemType { """ SUBSCRIBED_EVENT + """ + Represents a 'sub_issue_added' event on a given issue. + """ + SUB_ISSUE_ADDED_EVENT + + """ + Represents a 'sub_issue_removed' event on a given issue. + """ + SUB_ISSUE_REMOVED_EVENT + """ Represents a 'transferred' event on a given issue or pull request. """ @@ -39945,12 +40220,12 @@ type Query implements Node { enterpriseSlug: String! """ - The role for the business member invitation. + The role for the enterprise member invitation. """ role: EnterpriseAdministratorRole! """ - The login of the user invited to join the business. + The login of the user invited to join the enterprise. """ userLogin: String! ): EnterpriseAdministratorInvitation @@ -39975,7 +40250,7 @@ type Query implements Node { enterpriseSlug: String! """ - The login of the user invited to join the business. + The login of the user invited to join the enterprise. """ userLogin: String! ): EnterpriseMemberInvitation @@ -42636,7 +42911,7 @@ The privacy of a repository """ enum RepoAccessAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -42776,7 +43051,7 @@ The privacy of a repository """ enum RepoAddMemberAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -43041,7 +43316,7 @@ The privacy of a repository """ enum RepoArchivedAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -44486,7 +44761,7 @@ The privacy of a repository """ enum RepoCreateAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -44626,7 +44901,7 @@ The privacy of a repository """ enum RepoDestroyAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -44766,7 +45041,7 @@ The privacy of a repository """ enum RepoRemoveMemberAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -48520,6 +48795,11 @@ enum RepositoryRulesetTarget { """ PUSH + """ + repository + """ + REPOSITORY + """ Tag """ @@ -48596,7 +48876,7 @@ The repository's visibility level. """ enum RepositoryVisibility { """ - The repository is visible only to users in the same business. + The repository is visible only to users in the same enterprise. """ INTERNAL @@ -50283,6 +50563,11 @@ type SecurityAdvisory implements Node { reason: "`cvss` will be removed. New `cvss_severities` field will now contain both `cvss_v3` and `cvss_v4` properties. Removal on 2025-10-01 UTC." ) + """ + The CVSS associated with this advisory + """ + cvssSeverities: CvssSeverities! + """ CWEs associated with this Advisory """ @@ -54692,6 +54977,56 @@ type StripeConnectAccount { stripeDashboardUrl: URI! } +""" +Represents a 'sub_issue_added' event on a given issue. +""" +type SubIssueAddedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the SubIssueAddedEvent object + """ + id: ID! + + """ + The sub-issue added. + """ + subIssue: Issue +} + +""" +Represents a 'sub_issue_removed' event on a given issue. +""" +type SubIssueRemovedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The Node ID of the SubIssueRemovedEvent object + """ + id: ID! + + """ + The sub-issue removed. + """ + subIssue: Issue +} + """ Summary of the state of an issue's sub-issues """ @@ -58477,42 +58812,6 @@ type UnresolveReviewThreadPayload { thread: PullRequestReviewThread } -""" -Autogenerated input type of UnsubscribeFromNotifications -""" -input UnsubscribeFromNotificationsInput - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - The NotificationThread IDs of the objects to unsubscribe from. - """ - ids: [ID!]! - @possibleTypes( - concreteTypes: ["Commit", "Discussion", "Issue", "PullRequest", "Repository", "Team", "TeamDiscussion"] - abstractType: "Subscribable" - ) -} - -""" -Autogenerated return type of UnsubscribeFromNotifications. -""" -type UnsubscribeFromNotificationsPayload - @requiredCapabilities(requiredCapabilities: ["access_internal_graphql_notifications"]) { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - - """ - Did the operation succeed? - """ - success: Boolean -} - """ Represents an 'unsubscribed' event on a given `Subscribable`. """ @@ -63621,6 +63920,76 @@ type UserListSuggestion { name: String } +""" +A repository owned by an Enterprise Managed user. +""" +type UserNamespaceRepository implements Node { + """ + The Node ID of the UserNamespaceRepository object + """ + id: ID! + + """ + The name of the repository. + """ + name: String! + + """ + The repository's name with owner. + """ + nameWithOwner: String! + + """ + The user owner of the repository. + """ + owner: RepositoryOwner! + + """ + The repository owned by an enterprise managed user. + """ + repository: RepositoryInfo +} + +""" +A list of repositories owned by users in an enterprise with Enterprise Managed Users. +""" +type UserNamespaceRepositoryConnection { + """ + A list of edges. + """ + edges: [UserNamespaceRepositoryEdge] + + """ + A list of nodes. + """ + nodes: [UserNamespaceRepository] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type UserNamespaceRepositoryEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: UserNamespaceRepository +} + """ The user's description of what they're currently doing. """ diff --git a/src/graphql/data/ghec/schema.json b/src/graphql/data/ghec/schema.json index 7fa147a833cf..48483ac32dfa 100644 --- a/src/graphql/data/ghec/schema.json +++ b/src/graphql/data/ghec/schema.json @@ -75,7 +75,7 @@ "id": "enterpriseadministratorrole", "kind": "enums", "href": "/graphql/reference/enums#enterpriseadministratorrole", - "description": "

    The role for the business member invitation.

    " + "description": "

    The role for the enterprise member invitation.

    " }, { "name": "userLogin", @@ -83,7 +83,7 @@ "id": "string", "kind": "scalars", "href": "/graphql/reference/scalars#string", - "description": "

    The login of the user invited to join the business.

    " + "description": "

    The login of the user invited to join the enterprise.

    " } ] }, @@ -127,7 +127,7 @@ "id": "string", "kind": "scalars", "href": "/graphql/reference/scalars#string", - "description": "

    The login of the user invited to join the business.

    " + "description": "

    The login of the user invited to join the enterprise.

    " } ] }, @@ -1115,6 +1115,48 @@ } ] }, + { + "name": "accessUserNamespaceRepository", + "kind": "mutations", + "id": "accessusernamespacerepository", + "href": "/graphql/reference/mutations#accessusernamespacerepository", + "description": "

    Access user namespace repository for a temporary duration.

    ", + "inputFields": [ + { + "name": "input", + "type": "AccessUserNamespaceRepositoryInput!", + "id": "accessusernamespacerepositoryinput", + "kind": "input-objects", + "href": "/graphql/reference/input-objects#accessusernamespacerepositoryinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string", + "description": "

    A unique identifier for the client performing the mutation.

    " + }, + { + "name": "expiresAt", + "type": "DateTime", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime", + "description": "

    The time that repository access expires at.

    " + }, + { + "name": "repository", + "type": "Repository", + "id": "repository", + "kind": "objects", + "href": "/graphql/reference/objects#repository", + "description": "

    The repository that is temporarily accessible.

    " + } + ] + }, { "name": "addAssigneesToAssignable", "kind": "mutations", @@ -5217,48 +5259,6 @@ } ] }, - { - "name": "markNotificationAsDone", - "kind": "mutations", - "id": "marknotificationasdone", - "href": "/graphql/reference/mutations#marknotificationasdone", - "description": "

    Marks a notification as done.

    ", - "inputFields": [ - { - "name": "input", - "type": "MarkNotificationAsDoneInput!", - "id": "marknotificationasdoneinput", - "kind": "input-objects", - "href": "/graphql/reference/input-objects#marknotificationasdoneinput" - } - ], - "returnFields": [ - { - "name": "clientMutationId", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string", - "description": "

    A unique identifier for the client performing the mutation.

    " - }, - { - "name": "success", - "type": "Boolean", - "id": "boolean", - "kind": "scalars", - "href": "/graphql/reference/scalars#boolean", - "description": "

    Did the operation succeed?.

    " - }, - { - "name": "viewer", - "type": "User", - "id": "user", - "kind": "objects", - "href": "/graphql/reference/objects#user", - "description": "

    The user that the notification belongs to.

    " - } - ] - }, { "name": "markProjectV2AsTemplate", "kind": "mutations", @@ -7477,40 +7477,6 @@ } ] }, - { - "name": "unsubscribeFromNotifications", - "kind": "mutations", - "id": "unsubscribefromnotifications", - "href": "/graphql/reference/mutations#unsubscribefromnotifications", - "description": "

    Unsubscribes from notifications.

    ", - "inputFields": [ - { - "name": "input", - "type": "UnsubscribeFromNotificationsInput!", - "id": "unsubscribefromnotificationsinput", - "kind": "input-objects", - "href": "/graphql/reference/input-objects#unsubscribefromnotificationsinput" - } - ], - "returnFields": [ - { - "name": "clientMutationId", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string", - "description": "

    A unique identifier for the client performing the mutation.

    " - }, - { - "name": "success", - "type": "Boolean", - "id": "boolean", - "kind": "scalars", - "href": "/graphql/reference/scalars#boolean", - "description": "

    Did the operation succeed?.

    " - } - ] - }, { "name": "updateBranchProtectionRule", "kind": "mutations", @@ -10066,6 +10032,47 @@ } ] }, + { + "name": "AnnouncementBanner", + "kind": "objects", + "id": "announcementbanner", + "href": "/graphql/reference/objects#announcementbanner", + "description": "

    An announcement banner for an enterprise or organization.

    ", + "fields": [ + { + "name": "createdAt", + "description": "

    The date the announcement was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "expiresAt", + "description": "

    The expiration date of the announcement, if any.

    ", + "type": "DateTime", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "isUserDismissible", + "description": "

    Whether the announcement can be dismissed by the user.

    ", + "type": "Boolean!", + "id": "boolean", + "kind": "scalars", + "href": "/graphql/reference/scalars#boolean" + }, + { + "name": "message", + "description": "

    The text of the announcement.

    ", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + ] + }, { "name": "App", "kind": "objects", @@ -17603,6 +17610,31 @@ } ] }, + { + "name": "CvssSeverities", + "kind": "objects", + "id": "cvssseverities", + "href": "/graphql/reference/objects#cvssseverities", + "description": "

    The Common Vulnerability Scoring System.

    ", + "fields": [ + { + "name": "cvssV3", + "description": "

    The CVSS v3 severity associated with this advisory.

    ", + "type": "CVSS", + "id": "cvss", + "kind": "objects", + "href": "/graphql/reference/objects#cvss" + }, + { + "name": "cvssV4", + "description": "

    The CVSS v4 severity associated with this advisory.

    ", + "type": "CVSS", + "id": "cvss", + "kind": "objects", + "href": "/graphql/reference/objects#cvss" + } + ] + }, { "name": "DemilestonedEvent", "kind": "objects", @@ -17773,6 +17805,14 @@ "kind": "scalars", "href": "/graphql/reference/scalars#string" }, + { + "name": "relationship", + "description": "

    Public preview: The relationship of the dependency. Can be direct, transitive, or unknown.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, { "name": "repository", "description": "

    The repository containing the package.

    ", @@ -21315,7 +21355,17 @@ "type": "String", "id": "string", "kind": "scalars", - "href": "/graphql/reference/scalars#string" + "href": "/graphql/reference/scalars#string", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " + }, + { + "name": "announcementBanner", + "description": "

    The announcement banner set on this enterprise, if any. Only visible to members of the enterprise.

    ", + "type": "AnnouncementBanner", + "id": "announcementbanner", + "kind": "objects", + "href": "/graphql/reference/objects#announcementbanner" }, { "name": "announcementCreatedAt", @@ -21323,7 +21373,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementExpiresAt", @@ -21331,7 +21383,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementUserDismissible", @@ -21339,7 +21393,9 @@ "type": "Boolean", "id": "boolean", "kind": "scalars", - "href": "/graphql/reference/scalars#boolean" + "href": "/graphql/reference/scalars#boolean", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "avatarUrl", @@ -21665,6 +21721,76 @@ "kind": "scalars", "href": "/graphql/reference/scalars#uri" }, + { + "name": "ruleset", + "description": "

    Returns a single ruleset from the current enterprise by ID.

    ", + "type": "RepositoryRuleset", + "id": "repositoryruleset", + "kind": "objects", + "href": "/graphql/reference/objects#repositoryruleset", + "arguments": [ + { + "name": "databaseId", + "description": "

    The ID of the ruleset to be returned.

    ", + "type": { + "name": "Int!", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + } + ] + }, + { + "name": "rulesets", + "description": "

    A list of rulesets for this enterprise.

    ", + "type": "RepositoryRulesetConnection", + "id": "repositoryrulesetconnection", + "kind": "objects", + "href": "/graphql/reference/objects#repositoryrulesetconnection", + "arguments": [ + { + "name": "after", + "description": "

    Returns the elements in the list that come after the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "before", + "description": "

    Returns the elements in the list that come before the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "first", + "description": "

    Returns the first n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + }, + { + "name": "last", + "description": "

    Returns the last n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + } + ] + }, { "name": "slug", "description": "

    The URL-friendly identifier for the enterprise.

    ", @@ -21681,6 +21807,76 @@ "kind": "scalars", "href": "/graphql/reference/scalars#uri" }, + { + "name": "userNamespaceRepositories", + "description": "

    A list of repositories that belong to users. Only available for enterprises with Enterprise Managed Users.

    ", + "type": "UserNamespaceRepositoryConnection!", + "id": "usernamespacerepositoryconnection", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepositoryconnection", + "arguments": [ + { + "name": "after", + "description": "

    Returns the elements in the list that come after the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "before", + "description": "

    Returns the elements in the list that come before the specified cursor.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + }, + { + "name": "first", + "description": "

    Returns the first n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + }, + { + "name": "last", + "description": "

    Returns the last n elements from the list.

    ", + "type": { + "name": "Int", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + }, + { + "name": "orderBy", + "description": "

    Ordering options for repositories returned from the connection.

    ", + "type": { + "name": "RepositoryOrder", + "id": "repositoryorder", + "kind": "input-objects", + "href": "/graphql/reference/input-objects#repositoryorder" + } + }, + { + "name": "query", + "description": "

    The search string to look for.

    ", + "type": { + "name": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + } + } + ] + }, { "name": "viewerIsAdmin", "description": "

    Is the current viewer an admin of this enterprise?.

    ", @@ -29217,7 +29413,20 @@ "type": "IssueStateReason", "id": "issuestatereason", "kind": "enums", - "href": "/graphql/reference/enums#issuestatereason" + "href": "/graphql/reference/enums#issuestatereason", + "arguments": [ + { + "name": "enableDuplicate", + "defaultValue": false, + "description": "

    Whether or not to return state reason for duplicates.

    ", + "type": { + "name": "Boolean", + "id": "boolean", + "kind": "scalars", + "href": "/graphql/reference/scalars#boolean" + } + } + ] }, { "name": "subIssues", @@ -40120,7 +40329,17 @@ "type": "String", "id": "string", "kind": "scalars", - "href": "/graphql/reference/scalars#string" + "href": "/graphql/reference/scalars#string", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " + }, + { + "name": "announcementBanner", + "description": "

    The announcement banner set on this organization, if any. Only visible to members of the organization's enterprise.

    ", + "type": "AnnouncementBanner", + "id": "announcementbanner", + "kind": "objects", + "href": "/graphql/reference/objects#announcementbanner" }, { "name": "announcementCreatedAt", @@ -40128,7 +40347,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementExpiresAt", @@ -40136,7 +40357,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementUserDismissible", @@ -40144,7 +40367,9 @@ "type": "Boolean", "id": "boolean", "kind": "scalars", - "href": "/graphql/reference/scalars#boolean" + "href": "/graphql/reference/scalars#boolean", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "anyPinnableItems", @@ -44447,6 +44672,102 @@ } ] }, + { + "name": "ParentIssueAddedEvent", + "kind": "objects", + "id": "parentissueaddedevent", + "href": "/graphql/reference/objects#parentissueaddedevent", + "description": "

    Represents aparent_issue_addedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the ParentIssueAddedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "parent", + "description": "

    The parent issue added.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, + { + "name": "ParentIssueRemovedEvent", + "kind": "objects", + "id": "parentissueremovedevent", + "href": "/graphql/reference/objects#parentissueremovedevent", + "description": "

    Represents aparent_issue_removedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the ParentIssueRemovedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "parent", + "description": "

    The parent issue removed.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, { "name": "PermissionSource", "kind": "objects", @@ -52659,6 +52980,14 @@ "href": "/graphql/reference/objects#pullrequestparameters", "description": "

    Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.

    ", "fields": [ + { + "name": "allowedMergeMethods", + "description": "

    When merging pull requests, you can allow any combination of merge commits,\nsquashing, or rebasing. At least one option must be enabled.

    ", + "type": "[String!]", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, { "name": "dismissStaleReviewsOnPush", "description": "

    New, reviewable commits pushed will dismiss previous pull request review approvals.

    ", @@ -67212,6 +67541,14 @@ "isDeprecated": true, "deprecationReason": "

    cvss will be removed. New cvss_severities field will now contain both cvss_v3 and cvss_v4 properties. Removal on 2025-10-01 UTC.

    " }, + { + "name": "cvssSeverities", + "description": "

    The CVSS associated with this advisory.

    ", + "type": "CvssSeverities!", + "id": "cvssseverities", + "kind": "objects", + "href": "/graphql/reference/objects#cvssseverities" + }, { "name": "cwes", "description": "

    CWEs associated with this Advisory.

    ", @@ -70160,6 +70497,102 @@ } ] }, + { + "name": "SubIssueAddedEvent", + "kind": "objects", + "id": "subissueaddedevent", + "href": "/graphql/reference/objects#subissueaddedevent", + "description": "

    Represents asub_issue_addedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the SubIssueAddedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "subIssue", + "description": "

    The sub-issue added.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, + { + "name": "SubIssueRemovedEvent", + "kind": "objects", + "id": "subissueremovedevent", + "href": "/graphql/reference/objects#subissueremovedevent", + "description": "

    Represents asub_issue_removedevent on a given issue.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "actor", + "description": "

    Identifies the actor who performed the event.

    ", + "type": "Actor", + "id": "actor", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#actor" + }, + { + "name": "createdAt", + "description": "

    Identifies the date and time when the object was created.

    ", + "type": "DateTime!", + "id": "datetime", + "kind": "scalars", + "href": "/graphql/reference/scalars#datetime" + }, + { + "name": "id", + "description": "

    The Node ID of the SubIssueRemovedEvent object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "subIssue", + "description": "

    The sub-issue removed.

    ", + "type": "Issue", + "id": "issue", + "kind": "objects", + "href": "/graphql/reference/objects#issue" + } + ] + }, { "name": "SubIssuesSummary", "kind": "objects", @@ -78843,6 +79276,128 @@ } ] }, + { + "name": "UserNamespaceRepository", + "kind": "objects", + "id": "usernamespacerepository", + "href": "/graphql/reference/objects#usernamespacerepository", + "description": "

    A repository owned by an Enterprise Managed user.

    ", + "implements": [ + { + "name": "Node", + "id": "node", + "href": "/graphql/reference/interfaces#node" + } + ], + "fields": [ + { + "name": "id", + "description": "

    The Node ID of the UserNamespaceRepository object.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + }, + { + "name": "name", + "description": "

    The name of the repository.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "nameWithOwner", + "description": "

    The repository's name with owner.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "owner", + "description": "

    The user owner of the repository.

    ", + "type": "RepositoryOwner!", + "id": "repositoryowner", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#repositoryowner" + }, + { + "name": "repository", + "description": "

    The repository owned by an enterprise managed user.

    ", + "type": "RepositoryInfo", + "id": "repositoryinfo", + "kind": "interfaces", + "href": "/graphql/reference/interfaces#repositoryinfo" + } + ] + }, + { + "name": "UserNamespaceRepositoryConnection", + "kind": "objects", + "id": "usernamespacerepositoryconnection", + "href": "/graphql/reference/objects#usernamespacerepositoryconnection", + "description": "

    A list of repositories owned by users in an enterprise with Enterprise Managed Users.

    ", + "fields": [ + { + "name": "edges", + "description": "

    A list of edges.

    ", + "type": "[UserNamespaceRepositoryEdge]", + "id": "usernamespacerepositoryedge", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepositoryedge" + }, + { + "name": "nodes", + "description": "

    A list of nodes.

    ", + "type": "[UserNamespaceRepository]", + "id": "usernamespacerepository", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepository" + }, + { + "name": "pageInfo", + "description": "

    Information to aid in pagination.

    ", + "type": "PageInfo!", + "id": "pageinfo", + "kind": "objects", + "href": "/graphql/reference/objects#pageinfo" + }, + { + "name": "totalCount", + "description": "

    Identifies the total count of items in the connection.

    ", + "type": "Int!", + "id": "int", + "kind": "scalars", + "href": "/graphql/reference/scalars#int" + } + ] + }, + { + "name": "UserNamespaceRepositoryEdge", + "kind": "objects", + "id": "usernamespacerepositoryedge", + "href": "/graphql/reference/objects#usernamespacerepositoryedge", + "description": "

    An edge in a connection.

    ", + "fields": [ + { + "name": "cursor", + "description": "

    A cursor for use in pagination.

    ", + "type": "String!", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "node", + "description": "

    The item at the end of the edge.

    ", + "type": "UserNamespaceRepository", + "id": "usernamespacerepository", + "kind": "objects", + "href": "/graphql/reference/objects#usernamespacerepository" + } + ] + }, { "name": "UserStatus", "kind": "objects", @@ -79894,7 +80449,9 @@ "type": "String", "id": "string", "kind": "scalars", - "href": "/graphql/reference/scalars#string" + "href": "/graphql/reference/scalars#string", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementCreatedAt", @@ -79902,7 +80459,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementExpiresAt", @@ -79910,7 +80469,9 @@ "type": "DateTime", "id": "datetime", "kind": "scalars", - "href": "/graphql/reference/scalars#datetime" + "href": "/graphql/reference/scalars#datetime", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " }, { "name": "announcementUserDismissible", @@ -79918,7 +80479,9 @@ "type": "Boolean", "id": "boolean", "kind": "scalars", - "href": "/graphql/reference/scalars#boolean" + "href": "/graphql/reference/scalars#boolean", + "isDeprecated": true, + "deprecationReason": "

    The individual announcementX fields do not follow our standard GraphQL patterns. Use the announcementBanner object instead. Removal on 2025-04-01 UTC.

    " } ] }, @@ -85170,7 +85733,7 @@ }, { "name": "DUPLICATE", - "description": "

    An issue that has been closed as a duplicate.

    " + "description": "

    An issue that has been closed as a duplicate. To retrieve this value, set\n(enableDuplicate: true) when querying the stateReason field.

    " }, { "name": "NOT_PLANNED", @@ -85257,6 +85820,14 @@ "name": "MOVED_COLUMNS_IN_PROJECT_EVENT", "description": "

    Represents amoved_columns_in_projectevent on a given issue or pull request.

    " }, + { + "name": "PARENT_ISSUE_ADDED_EVENT", + "description": "

    Represents aparent_issue_addedevent on a given issue.

    " + }, + { + "name": "PARENT_ISSUE_REMOVED_EVENT", + "description": "

    Represents aparent_issue_removedevent on a given issue.

    " + }, { "name": "PINNED_EVENT", "description": "

    Represents apinnedevent on a given issue or pull request.

    " @@ -85281,6 +85852,14 @@ "name": "SUBSCRIBED_EVENT", "description": "

    Represents asubscribedevent on a given Subscribable.

    " }, + { + "name": "SUB_ISSUE_ADDED_EVENT", + "description": "

    Represents asub_issue_addedevent on a given issue.

    " + }, + { + "name": "SUB_ISSUE_REMOVED_EVENT", + "description": "

    Represents asub_issue_removedevent on a given issue.

    " + }, { "name": "TRANSFERRED_EVENT", "description": "

    Represents atransferredevent on a given issue or pull request.

    " @@ -87285,6 +87864,14 @@ "name": "MOVED_COLUMNS_IN_PROJECT_EVENT", "description": "

    Represents amoved_columns_in_projectevent on a given issue or pull request.

    " }, + { + "name": "PARENT_ISSUE_ADDED_EVENT", + "description": "

    Represents aparent_issue_addedevent on a given issue.

    " + }, + { + "name": "PARENT_ISSUE_REMOVED_EVENT", + "description": "

    Represents aparent_issue_removedevent on a given issue.

    " + }, { "name": "PINNED_EVENT", "description": "

    Represents apinnedevent on a given issue or pull request.

    " @@ -87349,6 +87936,14 @@ "name": "SUBSCRIBED_EVENT", "description": "

    Represents asubscribedevent on a given Subscribable.

    " }, + { + "name": "SUB_ISSUE_ADDED_EVENT", + "description": "

    Represents asub_issue_addedevent on a given issue.

    " + }, + { + "name": "SUB_ISSUE_REMOVED_EVENT", + "description": "

    Represents asub_issue_removedevent on a given issue.

    " + }, { "name": "TRANSFERRED_EVENT", "description": "

    Represents atransferredevent on a given issue or pull request.

    " @@ -87497,7 +88092,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87518,7 +88113,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87539,7 +88134,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87581,7 +88176,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87602,7 +88197,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -87623,7 +88218,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -88126,6 +88721,10 @@ "name": "PUSH", "description": "

    Push.

    " }, + { + "name": "REPOSITORY", + "description": "

    repository.

    " + }, { "name": "TAG", "description": "

    Tag.

    " @@ -88141,7 +88740,7 @@ "values": [ { "name": "INTERNAL", - "description": "

    The repository is visible only to users in the same business.

    " + "description": "

    The repository is visible only to users in the same enterprise.

    " }, { "name": "PRIVATE", @@ -90809,6 +91408,16 @@ "id": "movedcolumnsinprojectevent", "href": "/graphql/reference/objects#movedcolumnsinprojectevent" }, + { + "name": "ParentIssueAddedEvent", + "id": "parentissueaddedevent", + "href": "/graphql/reference/objects#parentissueaddedevent" + }, + { + "name": "ParentIssueRemovedEvent", + "id": "parentissueremovedevent", + "href": "/graphql/reference/objects#parentissueremovedevent" + }, { "name": "PinnedEvent", "id": "pinnedevent", @@ -90834,6 +91443,16 @@ "id": "reopenedevent", "href": "/graphql/reference/objects#reopenedevent" }, + { + "name": "SubIssueAddedEvent", + "id": "subissueaddedevent", + "href": "/graphql/reference/objects#subissueaddedevent" + }, + { + "name": "SubIssueRemovedEvent", + "id": "subissueremovedevent", + "href": "/graphql/reference/objects#subissueremovedevent" + }, { "name": "SubscribedEvent", "id": "subscribedevent", @@ -91796,6 +92415,16 @@ "id": "movedcolumnsinprojectevent", "href": "/graphql/reference/objects#movedcolumnsinprojectevent" }, + { + "name": "ParentIssueAddedEvent", + "id": "parentissueaddedevent", + "href": "/graphql/reference/objects#parentissueaddedevent" + }, + { + "name": "ParentIssueRemovedEvent", + "id": "parentissueremovedevent", + "href": "/graphql/reference/objects#parentissueremovedevent" + }, { "name": "PinnedEvent", "id": "pinnedevent", @@ -91871,6 +92500,16 @@ "id": "reviewrequestedevent", "href": "/graphql/reference/objects#reviewrequestedevent" }, + { + "name": "SubIssueAddedEvent", + "id": "subissueaddedevent", + "href": "/graphql/reference/objects#subissueaddedevent" + }, + { + "name": "SubIssueRemovedEvent", + "id": "subissueremovedevent", + "href": "/graphql/reference/objects#subissueremovedevent" + }, { "name": "SubscribedEvent", "id": "subscribedevent", @@ -92473,6 +93112,40 @@ } ] }, + { + "name": "AccessUserNamespaceRepositoryInput", + "kind": "inputObjects", + "id": "accessusernamespacerepositoryinput", + "href": "/graphql/reference/input-objects#accessusernamespacerepositoryinput", + "description": "

    Autogenerated input type of AccessUserNamespaceRepository.

    ", + "inputFields": [ + { + "name": "clientMutationId", + "description": "

    A unique identifier for the client performing the mutation.

    ", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "enterpriseId", + "description": "

    The ID of the enterprise owning the user namespace repository.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id", + "isDeprecated": false + }, + { + "name": "repositoryId", + "description": "

    The ID of the user namespace repository to access.

    ", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id" + } + ] + }, { "name": "AddAssigneesToAssignableInput", "kind": "inputObjects", @@ -94304,6 +94977,15 @@ "kind": "scalars", "href": "/graphql/reference/scalars#string" }, + { + "name": "duplicateIssueId", + "description": "

    ID of the issue that this is a duplicate of.

    ", + "type": "ID", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id", + "isDeprecated": false + }, { "name": "issueId", "description": "

    ID of the issue to be closed.

    ", @@ -99056,32 +99738,6 @@ } ] }, - { - "name": "MarkNotificationAsDoneInput", - "kind": "inputObjects", - "id": "marknotificationasdoneinput", - "href": "/graphql/reference/input-objects#marknotificationasdoneinput", - "description": "

    Autogenerated input type of MarkNotificationAsDone.

    ", - "isDeprecated": false, - "inputFields": [ - { - "name": "clientMutationId", - "description": "

    A unique identifier for the client performing the mutation.

    ", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string" - }, - { - "name": "id", - "description": "

    The NotificationThread id.

    ", - "type": "ID!", - "id": "id", - "kind": "scalars", - "href": "/graphql/reference/scalars#id" - } - ] - }, { "name": "MarkProjectV2AsTemplateInput", "kind": "inputObjects", @@ -100188,6 +100844,14 @@ "href": "/graphql/reference/input-objects#pullrequestparametersinput", "description": "

    Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.

    ", "inputFields": [ + { + "name": "allowedMergeMethods", + "description": "

    When merging pull requests, you can allow any combination of merge commits,\nsquashing, or rebasing. At least one option must be enabled.

    ", + "type": "[String!]", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, { "name": "dismissStaleReviewsOnPush", "description": "

    New, reviewable commits pushed will dismiss previous pull request review approvals.

    ", @@ -103224,33 +103888,6 @@ } ] }, - { - "name": "UnsubscribeFromNotificationsInput", - "kind": "inputObjects", - "id": "unsubscribefromnotificationsinput", - "href": "/graphql/reference/input-objects#unsubscribefromnotificationsinput", - "description": "

    Autogenerated input type of UnsubscribeFromNotifications.

    ", - "isDeprecated": false, - "inputFields": [ - { - "name": "clientMutationId", - "description": "

    A unique identifier for the client performing the mutation.

    ", - "type": "String", - "id": "string", - "kind": "scalars", - "href": "/graphql/reference/scalars#string" - }, - { - "name": "ids", - "description": "

    The NotificationThread IDs of the objects to unsubscribe from.

    ", - "type": "[ID!]!", - "id": "id", - "kind": "scalars", - "href": "/graphql/reference/scalars#id", - "isDeprecated": false - } - ] - }, { "name": "UpdateBranchProtectionRuleInput", "kind": "inputObjects", diff --git a/src/graphql/data/ghec/upcoming-changes.json b/src/graphql/data/ghec/upcoming-changes.json index 29b7742e051d..f3d101c3c25f 100644 --- a/src/graphql/data/ghec/upcoming-changes.json +++ b/src/graphql/data/ghec/upcoming-changes.json @@ -50,6 +50,38 @@ "criticality": "breaking", "owner": "dewski" }, + { + "location": "Organization.announcementUserDismissible", + "description": "

    announcementUserDismissible will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Organization.announcementExpiresAt", + "description": "

    announcementExpiresAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Organization.announcementCreatedAt", + "description": "

    announcementCreatedAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Organization.announcement", + "description": "

    announcement will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, { "location": "EnterpriseOwnerInfo.outsideCollaborators.hasTwoFactorEnabled", "description": "

    hasTwoFactorEnabled will be removed. Use two_factor_method_security instead.

    ", @@ -73,6 +105,70 @@ "date": "2025-04-01", "criticality": "breaking", "owner": "authentication" + }, + { + "location": "Enterprise.announcementUserDismissible", + "description": "

    announcementUserDismissible will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Enterprise.announcementExpiresAt", + "description": "

    announcementExpiresAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Enterprise.announcementCreatedAt", + "description": "

    announcementCreatedAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "Enterprise.announcement", + "description": "

    announcement will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcementUserDismissible", + "description": "

    announcementUserDismissible will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcementExpiresAt", + "description": "

    announcementExpiresAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcementCreatedAt", + "description": "

    announcementCreatedAt will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" + }, + { + "location": "AnnouncementBannerI.announcement", + "description": "

    announcement will be removed. Use the announcementBanner object instead.

    ", + "reason": "

    The individual announcementX fields do not follow our standard GraphQL patterns.

    ", + "date": "2025-04-01", + "criticality": "breaking", + "owner": "vaindil" } ], "2025-01-01": [ diff --git a/src/graphql/scripts/build-changelog.js b/src/graphql/scripts/build-changelog.js index d08e9d18ce7c..9ef9dfcd2a72 100644 --- a/src/graphql/scripts/build-changelog.js +++ b/src/graphql/scripts/build-changelog.js @@ -307,6 +307,7 @@ const CHANGES_TO_IGNORE = [ ChangeType.TypeDescriptionRemoved, ChangeType.TypeDescriptionAdded, ChangeType.DirectiveUsageFieldDefinitionAdded, + ChangeType.DirectiveUsageArgumentDefinitionAdded, ] export default { createChangelogEntry, cleanPreviewTitle, previewAnchor, prependDatedEntry } diff --git a/src/products/README.md b/src/products/README.md index e69de29bb2d1..129c5bd19973 100644 --- a/src/products/README.md +++ b/src/products/README.md @@ -0,0 +1 @@ +❤︎ diff --git a/src/rest/data/fpt-2022-11-28/schema.json b/src/rest/data/fpt-2022-11-28/schema.json index 57b5fd72aa24..5f9c882def3e 100644 --- a/src/rest/data/fpt-2022-11-28/schema.json +++ b/src/rest/data/fpt-2022-11-28/schema.json @@ -159122,6 +159122,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -159135,6 +159136,28 @@ ] } }, + "runner_type": { + "description": "Runner type to be used.", + "type": [ + "string", + "null" + ], + "enum": [ + "standard", + "labeled", + null + ] + }, + "runner_label": { + "description": "Runner label to be used if the runner type is labeled.", + "type": [ + "string", + "null" + ], + "examples": [ + "code-scanning" + ] + }, "query_suite": { "description": "CodeQL query suite to be used.", "type": "string", @@ -159259,7 +159282,7 @@ "type": "array of strings", "name": "languages", "in": "body", - "description": "

    CodeQL languages to be analyzed.\nSupported values are: c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " + "description": "

    CodeQL languages to be analyzed.\nSupported values are: actions, c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " } ], "progAccess": { @@ -229999,6 +230022,15 @@ "62ab9291-fae2-468e-974b-7e45096d5021" ] }, + "group_name": { + "type": [ + "string", + "null" + ], + "examples": [ + "Justice League" + ] + }, "html_url": { "type": "string", "format": "uri", @@ -231178,6 +231210,15 @@ "62ab9291-fae2-468e-974b-7e45096d5021" ] }, + "group_name": { + "type": [ + "string", + "null" + ], + "examples": [ + "Justice League" + ] + }, "html_url": { "type": "string", "format": "uri", @@ -253089,6 +253130,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -253589,6 +253633,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -254212,6 +254257,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -254676,6 +254724,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -255076,6 +255127,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -255669,6 +255723,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -256138,6 +256195,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -256761,6 +256819,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -257225,6 +257286,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -257541,6 +257605,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -258164,6 +258229,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -258628,6 +258696,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -259469,6 +259540,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -259933,6 +260007,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -260786,6 +260863,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -261250,6 +261330,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -262532,6 +262615,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -262996,6 +263082,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -263376,6 +263465,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -264053,6 +264145,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -264676,6 +264769,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -265140,6 +265236,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -265548,6 +265647,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -414947,6 +415049,872 @@ } ] }, + "private-registries": { + "organization-configurations": [ + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries", + "title": "List private registries for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "per_page", + "description": "

    The number of results per page (max 100). For more information, see \"Using pagination in the REST API.\"

    ", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "

    The page number of the results to fetch. For more information, see \"Using pagination in the REST API.\"

    ", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "read" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

    Response

    ", + "example": { + "total_count": 1, + "configurations": [ + { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z", + "visibility": "selected" + } + ] + }, + "schema": { + "type": "object", + "required": [ + "total_count", + "configurations" + ], + "properties": { + "total_count": { + "type": "integer" + }, + "configurations": { + "type": "array", + "items": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": [ + "string", + "null" + ], + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Lists all private registry configurations available at the organization-level without revealing their encrypted\nvalues.

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

    OK

    " + }, + { + "httpStatusCode": "400", + "description": "

    Bad Request

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries", + "title": "Create a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [ + { + "type": "string", + "name": "registry_type", + "in": "body", + "description": "

    The registry type.

    ", + "isRequired": true, + "enum": [ + "maven_repository" + ] + }, + { + "type": "string or null", + "name": "username", + "in": "body", + "description": "

    The username to use when authenticating with the private registry. This field should be omitted if the private registry does not require a username for authentication.

    " + }, + { + "type": "string", + "name": "encrypted_value", + "in": "body", + "description": "

    The value for your secret, encrypted with LibSodium using the public key retrieved from the Get private registries public key for an organization endpoint.

    ", + "isRequired": true + }, + { + "type": "string", + "name": "key_id", + "in": "body", + "description": "

    The ID of the key you used to encrypt the secret.

    ", + "isRequired": true + }, + { + "type": "string", + "name": "visibility", + "in": "body", + "description": "

    Which type of organization repositories have access to the private registry. selected means only the repositories specified by selected_repository_ids can access the private registry.

    ", + "isRequired": true, + "enum": [ + "all", + "private", + "selected" + ] + }, + { + "type": "array of integers", + "name": "selected_repository_ids", + "in": "body", + "description": "

    An array of repository IDs that can access the organization private registry. You can only provide a list of repository IDs when visibility is set to selected. You can manage the list of selected repositories using the Update a private registry for an organization endpoint. This field should be omitted if visibility is set to all or private.

    " + } + ], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "write" + } + ] + }, + "codeExamples": [ + { + "key": "org-private-registry-with-private-visibility", + "request": { + "contentType": "application/json", + "description": "Example of a private registry configuration with private visibility", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "registry_type": "maven_repository", + "username": "monalisa", + "encrypted_value": "c2VjcmV0", + "key_id": "012345678912345678", + "visibility": "private" + }, + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "201", + "contentType": "application/json", + "description": "

    The organization private registry configuration

    ", + "example": { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "visibility": "selected", + "selected_repository_ids": [ + 1296269, + 1296280 + ], + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z" + }, + "schema": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": "string", + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry. `selected` means only the repositories specified by `selected_repository_ids` can access the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "selected_repository_ids": { + "type": "array", + "description": "An array of repository IDs that can access the organization private registry when `visibility` is set to `selected`.", + "items": { + "type": "integer" + } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + }, + { + "key": "org-private-registry-with-selected-visibility", + "request": { + "contentType": "application/json", + "description": "Example of a private registry configuration with selected visibility", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "registry_type": "maven_repository", + "username": "monalisa", + "encrypted_value": "c2VjcmV0", + "key_id": "012345678912345678", + "visibility": "selected", + "selected_repository_ids": [ + 1296269, + 1296280 + ] + }, + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "201", + "contentType": "application/json", + "description": "

    The organization private registry configuration

    ", + "example": { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "visibility": "private", + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z" + }, + "schema": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": "string", + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry. `selected` means only the repositories specified by `selected_repository_ids` can access the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "selected_repository_ids": { + "type": "array", + "description": "An array of repository IDs that can access the organization private registry when `visibility` is set to `selected`.", + "items": { + "type": "integer" + } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Creates a private registry configuration with an encrypted value for an organization. Encrypt your secret using LibSodium. For more information, see \"Encrypting secrets for the REST API.\"

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "201", + "description": "

    The organization private registry configuration

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + }, + { + "httpStatusCode": "422", + "description": "

    Validation failed, or the endpoint has been spammed.

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key", + "title": "Get private registries public key for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "read" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

    Response

    ", + "example": { + "key_id": "012345678912345678", + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234" + }, + "schema": { + "type": "object", + "required": [ + "key_id", + "key" + ], + "properties": { + "key_id": { + "description": "The identifier for the key.", + "type": "string", + "examples": [ + "012345678912345678" + ] + }, + "key": { + "description": "The Base64 encoded public key.", + "type": "string", + "examples": [ + "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234" + ] + } + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Gets the org public key, which is needed to encrypt private registry secrets. You need to encrypt a secret before you can create or update secrets.

    \n

    OAuth tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

    OK

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "title": "Get a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secret_name", + "description": "

    The name of the secret.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "read" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG", + "secret_name": "SECRET_NAME" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

    The specified private registry configuration for the organization

    ", + "example": { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "visibility": "private", + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z" + }, + "schema": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": [ + "string", + "null" + ], + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Get the configuration of a single private registry defined for an organization, omitting its encrypted value.

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

    The specified private registry configuration for the organization

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "title": "Update a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secret_name", + "description": "

    The name of the secret.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [ + { + "type": "string", + "name": "registry_type", + "in": "body", + "description": "

    The registry type.

    ", + "enum": [ + "maven_repository" + ] + }, + { + "type": "string or null", + "name": "username", + "in": "body", + "description": "

    The username to use when authenticating with the private registry. This field should be omitted if the private registry does not require a username for authentication.

    " + }, + { + "type": "string", + "name": "encrypted_value", + "in": "body", + "description": "

    The value for your secret, encrypted with LibSodium using the public key retrieved from the Get private registries public key for an organization endpoint.

    " + }, + { + "type": "string", + "name": "key_id", + "in": "body", + "description": "

    The ID of the key you used to encrypt the secret.

    " + }, + { + "type": "string", + "name": "visibility", + "in": "body", + "description": "

    Which type of organization repositories have access to the private registry. selected means only the repositories specified by selected_repository_ids can access the private registry.

    ", + "enum": [ + "all", + "private", + "selected" + ] + }, + { + "type": "array of integers", + "name": "selected_repository_ids", + "in": "body", + "description": "

    An array of repository IDs that can access the organization private registry. You can only provide a list of repository IDs when visibility is set to selected. This field should be omitted if visibility is set to all or private.

    " + } + ], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "write" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "contentType": "application/json", + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "username": "monalisa", + "encrypted_value": "c2VjcmV0", + "key_id": "012345678912345678" + }, + "parameters": { + "org": "ORG", + "secret_name": "SECRET_NAME" + } + }, + "response": { + "statusCode": "204", + "description": "

    Response

    " + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Updates a private registry configuration with an encrypted value for an organization. Encrypt your secret using LibSodium. For more information, see \"Encrypting secrets for the REST API.\"

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "204", + "description": "

    No Content

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + }, + { + "httpStatusCode": "422", + "description": "

    Validation failed, or the endpoint has been spammed.

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "title": "Delete a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secret_name", + "description": "

    The name of the secret.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "write" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG", + "secret_name": "SECRET_NAME" + } + }, + "response": { + "statusCode": "204", + "description": "

    Response

    " + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Delete a private registry configuration at the organization-level.

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "204", + "description": "

    No Content

    " + }, + { + "httpStatusCode": "400", + "description": "

    Bad Request

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + } + ] + }, "projects": { "projects": [ { @@ -492978,7 +493946,7 @@ "serverUrl": "https://api.github.com", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -493032,20 +494000,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -493060,7 +494028,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -493076,7 +494044,7 @@ "serverUrl": "https://api.github.com", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Enable automated security fixes", + "title": "Enable Dependabot security updates", "category": "repos", "subcategory": "repos", "parameters": [ @@ -493128,7 +494096,7 @@ } ], "previews": [], - "descriptionHTML": "

    Enables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Enables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "204", @@ -493140,7 +494108,7 @@ "serverUrl": "https://api.github.com", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Disable automated security fixes", + "title": "Disable Dependabot security updates", "category": "repos", "subcategory": "repos", "parameters": [ @@ -493192,7 +494160,7 @@ } ], "previews": [], - "descriptionHTML": "

    Disables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Disables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "204", @@ -494603,7 +495571,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -538623,8 +539591,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { @@ -545391,7 +546358,7 @@ } ], "previews": [], - "descriptionHTML": "

    Lists the latest incremental and backfill scans by type for a repository.

    \n

    OAuth app tokens and personal access tokens (classic) need the repo or security_events scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the public_repo scope instead.

    ", + "descriptionHTML": "

    Lists the latest default incremental and backfill scans by type for a repository. Scans from Copilot Secret Scanning are not included.

    \n

    OAuth app tokens and personal access tokens (classic) need the repo or security_events scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the public_repo scope instead.

    ", "statusCodes": [ { "httpStatusCode": "200", diff --git a/src/rest/data/ghec-2022-11-28/schema.json b/src/rest/data/ghec-2022-11-28/schema.json index 57532e0557ca..754026e870e8 100644 --- a/src/rest/data/ghec-2022-11-28/schema.json +++ b/src/rest/data/ghec-2022-11-28/schema.json @@ -167806,6 +167806,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -167819,6 +167820,28 @@ ] } }, + "runner_type": { + "description": "Runner type to be used.", + "type": [ + "string", + "null" + ], + "enum": [ + "standard", + "labeled", + null + ] + }, + "runner_label": { + "description": "Runner label to be used if the runner type is labeled.", + "type": [ + "string", + "null" + ], + "examples": [ + "code-scanning" + ] + }, "query_suite": { "description": "CodeQL query suite to be used.", "type": "string", @@ -167943,7 +167966,7 @@ "type": "array of strings", "name": "languages", "in": "body", - "description": "

    CodeQL languages to be analyzed.\nSupported values are: c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " + "description": "

    CodeQL languages to be analyzed.\nSupported values are: actions, c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " } ], "progAccess": { @@ -236390,11 +236413,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "read" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -236978,11 +236997,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "read" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -238734,11 +238749,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "read" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -239026,9 +239037,292 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, + "permissions": [] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "enterprise": "ENTERPRISE", + "team_slug": "TEAM_SLUG" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

    Response

    ", + "example": [ + { + "day": "2023-10-15", + "total_suggestions_count": 1000, + "total_acceptances_count": 800, + "total_lines_suggested": 1800, + "total_lines_accepted": 1200, + "total_active_users": 10, + "total_chat_acceptances": 32, + "total_chat_turns": 200, + "total_active_chat_users": 4, + "breakdown": [ + { + "language": "python", + "editor": "vscode", + "suggestions_count": 300, + "acceptances_count": 250, + "lines_suggested": 900, + "lines_accepted": 700, + "active_users": 5 + }, + { + "language": "python", + "editor": "jetbrains", + "suggestions_count": 300, + "acceptances_count": 200, + "lines_suggested": 400, + "lines_accepted": 300, + "active_users": 2 + }, + { + "language": "ruby", + "editor": "vscode", + "suggestions_count": 400, + "acceptances_count": 350, + "lines_suggested": 500, + "lines_accepted": 200, + "active_users": 3 + } + ] + }, + { + "day": "2023-10-16", + "total_suggestions_count": 800, + "total_acceptances_count": 600, + "total_lines_suggested": 1100, + "total_lines_accepted": 700, + "total_active_users": 12, + "total_chat_acceptances": 57, + "total_chat_turns": 426, + "total_active_chat_users": 8, + "breakdown": [ + { + "language": "python", + "editor": "vscode", + "suggestions_count": 300, + "acceptances_count": 200, + "lines_suggested": 600, + "lines_accepted": 300, + "active_users": 2 + }, + { + "language": "python", + "editor": "jetbrains", + "suggestions_count": 300, + "acceptances_count": 150, + "lines_suggested": 300, + "lines_accepted": 250, + "active_users": 6 + }, + { + "language": "ruby", + "editor": "vscode", + "suggestions_count": 200, + "acceptances_count": 150, + "lines_suggested": 200, + "lines_accepted": 150, + "active_users": 3 + } + ] + } + ], + "schema": { + "type": "array", + "items": { + "title": "Copilot Usage Metrics", + "description": "Summary of Copilot usage.", + "type": "object", + "properties": { + "day": { + "type": "string", + "format": "date", + "description": "The date for which the usage metrics are reported, in `YYYY-MM-DD` format." + }, + "total_suggestions_count": { + "type": "integer", + "description": "The total number of Copilot code completion suggestions shown to users." + }, + "total_acceptances_count": { + "type": "integer", + "description": "The total number of Copilot code completion suggestions accepted by users." + }, + "total_lines_suggested": { + "type": "integer", + "description": "The total number of lines of code completions suggested by Copilot." + }, + "total_lines_accepted": { + "type": "integer", + "description": "The total number of lines of code completions accepted by users." + }, + "total_active_users": { + "type": "integer", + "description": "The total number of users who were shown Copilot code completion suggestions during the day specified." + }, + "total_chat_acceptances": { + "type": "integer", + "description": "The total instances of users who accepted code suggested by Copilot Chat in the IDE (panel and inline)." + }, + "total_chat_turns": { + "type": "integer", + "description": "The total number of chat turns (prompt and response pairs) sent between users and Copilot Chat in the IDE." + }, + "total_active_chat_users": { + "type": "integer", + "description": "The total number of users who interacted with Copilot Chat in the IDE during the day specified." + }, + "breakdown": { + "type": [ + "array", + "null" + ], + "description": "Breakdown of Copilot code completions usage by language and editor", + "items": { + "type": "object", + "description": "Breakdown of Copilot usage by editor for this language", + "additionalProperties": true, + "properties": { + "language": { + "type": "string", + "description": "The language in which Copilot suggestions were shown to users in the specified editor." + }, + "editor": { + "type": "string", + "description": "The editor in which Copilot suggestions were shown to users for the specified language." + }, + "suggestions_count": { + "type": "integer", + "description": "The number of Copilot suggestions shown to users in the editor specified during the day specified." + }, + "acceptances_count": { + "type": "integer", + "description": "The number of Copilot suggestions accepted by users in the editor specified during the day specified." + }, + "lines_suggested": { + "type": "integer", + "description": "The number of lines of code suggested by Copilot in the editor specified during the day specified." + }, + "lines_accepted": { + "type": "integer", + "description": "The number of lines of code accepted by users in the editor specified during the day specified." + }, + "active_users": { + "type": "integer", + "description": "The number of users who were shown Copilot completion suggestions in the editor specified during the day specified." + } + } + } + } + }, + "required": [ + "day", + "breakdown" + ], + "additionalProperties": false + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change. This endpoint is only applicable to dedicated enterprise accounts for Copilot Business. See \"About enterprise accounts for Copilot Business.\"

    \n
    \n

    You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE\nfor users within an enterprise team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.\nSee the response schema tab for detailed metrics definitions.

    \n

    The response contains metrics for up to 28 days prior. Usage metrics are processed once per day for the previous day,\nand the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,\nthey must have telemetry enabled in their IDE.

    \n

    Note

    \n

    \nThis endpoint will only return results for a given day if the enterprise team had five or more members with active Copilot licenses, as evaluated at the end of that day.

    \n
    \n

    Owners and billing managers for the enterprise that contains the enterprise team can view Copilot usage metrics for the enterprise team.

    \n

    OAuth app tokens and personal access tokens (classic) need either the manage_billing:copilot or read:enterprise scopes to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

    OK

    " + }, + { + "httpStatusCode": "401", + "description": "

    Requires authentication

    " + }, + { + "httpStatusCode": "403", + "description": "

    Forbidden

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + }, + { + "httpStatusCode": "500", + "description": "

    Internal Error

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/copilot/usage", + "title": "Get a summary of Copilot usage for organization members", + "category": "copilot", + "subcategory": "copilot-usage", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "since", + "description": "

    Show usage metrics since this date. This is a timestamp in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ). Maximum value is 28 days ago.

    ", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "until", + "description": "

    Show usage metrics until this date. This is a timestamp in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ) and should not preceed the since date if it is passed.

    ", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "description": "

    The page number of the results to fetch. For more information, see \"Using pagination in the REST API.\"

    ", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "description": "

    The number of days of metrics to display per page (max 28). For more information, see \"Using pagination in the REST API.\"

    ", + "in": "query", + "schema": { + "type": "integer", + "default": 28 + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, "permissions": [ { - "\"Enterprise administration\" business permissions": "read" + "\"GitHub Copilot Business\" organization permissions": "read" + }, + { + "\"Administration\" organization permissions": "read" } ] }, @@ -239039,294 +239333,7 @@ "description": "Example", "acceptHeader": "application/vnd.github.v3+json", "parameters": { - "enterprise": "ENTERPRISE", - "team_slug": "TEAM_SLUG" - } - }, - "response": { - "statusCode": "200", - "contentType": "application/json", - "description": "

    Response

    ", - "example": [ - { - "day": "2023-10-15", - "total_suggestions_count": 1000, - "total_acceptances_count": 800, - "total_lines_suggested": 1800, - "total_lines_accepted": 1200, - "total_active_users": 10, - "total_chat_acceptances": 32, - "total_chat_turns": 200, - "total_active_chat_users": 4, - "breakdown": [ - { - "language": "python", - "editor": "vscode", - "suggestions_count": 300, - "acceptances_count": 250, - "lines_suggested": 900, - "lines_accepted": 700, - "active_users": 5 - }, - { - "language": "python", - "editor": "jetbrains", - "suggestions_count": 300, - "acceptances_count": 200, - "lines_suggested": 400, - "lines_accepted": 300, - "active_users": 2 - }, - { - "language": "ruby", - "editor": "vscode", - "suggestions_count": 400, - "acceptances_count": 350, - "lines_suggested": 500, - "lines_accepted": 200, - "active_users": 3 - } - ] - }, - { - "day": "2023-10-16", - "total_suggestions_count": 800, - "total_acceptances_count": 600, - "total_lines_suggested": 1100, - "total_lines_accepted": 700, - "total_active_users": 12, - "total_chat_acceptances": 57, - "total_chat_turns": 426, - "total_active_chat_users": 8, - "breakdown": [ - { - "language": "python", - "editor": "vscode", - "suggestions_count": 300, - "acceptances_count": 200, - "lines_suggested": 600, - "lines_accepted": 300, - "active_users": 2 - }, - { - "language": "python", - "editor": "jetbrains", - "suggestions_count": 300, - "acceptances_count": 150, - "lines_suggested": 300, - "lines_accepted": 250, - "active_users": 6 - }, - { - "language": "ruby", - "editor": "vscode", - "suggestions_count": 200, - "acceptances_count": 150, - "lines_suggested": 200, - "lines_accepted": 150, - "active_users": 3 - } - ] - } - ], - "schema": { - "type": "array", - "items": { - "title": "Copilot Usage Metrics", - "description": "Summary of Copilot usage.", - "type": "object", - "properties": { - "day": { - "type": "string", - "format": "date", - "description": "The date for which the usage metrics are reported, in `YYYY-MM-DD` format." - }, - "total_suggestions_count": { - "type": "integer", - "description": "The total number of Copilot code completion suggestions shown to users." - }, - "total_acceptances_count": { - "type": "integer", - "description": "The total number of Copilot code completion suggestions accepted by users." - }, - "total_lines_suggested": { - "type": "integer", - "description": "The total number of lines of code completions suggested by Copilot." - }, - "total_lines_accepted": { - "type": "integer", - "description": "The total number of lines of code completions accepted by users." - }, - "total_active_users": { - "type": "integer", - "description": "The total number of users who were shown Copilot code completion suggestions during the day specified." - }, - "total_chat_acceptances": { - "type": "integer", - "description": "The total instances of users who accepted code suggested by Copilot Chat in the IDE (panel and inline)." - }, - "total_chat_turns": { - "type": "integer", - "description": "The total number of chat turns (prompt and response pairs) sent between users and Copilot Chat in the IDE." - }, - "total_active_chat_users": { - "type": "integer", - "description": "The total number of users who interacted with Copilot Chat in the IDE during the day specified." - }, - "breakdown": { - "type": [ - "array", - "null" - ], - "description": "Breakdown of Copilot code completions usage by language and editor", - "items": { - "type": "object", - "description": "Breakdown of Copilot usage by editor for this language", - "additionalProperties": true, - "properties": { - "language": { - "type": "string", - "description": "The language in which Copilot suggestions were shown to users in the specified editor." - }, - "editor": { - "type": "string", - "description": "The editor in which Copilot suggestions were shown to users for the specified language." - }, - "suggestions_count": { - "type": "integer", - "description": "The number of Copilot suggestions shown to users in the editor specified during the day specified." - }, - "acceptances_count": { - "type": "integer", - "description": "The number of Copilot suggestions accepted by users in the editor specified during the day specified." - }, - "lines_suggested": { - "type": "integer", - "description": "The number of lines of code suggested by Copilot in the editor specified during the day specified." - }, - "lines_accepted": { - "type": "integer", - "description": "The number of lines of code accepted by users in the editor specified during the day specified." - }, - "active_users": { - "type": "integer", - "description": "The number of users who were shown Copilot completion suggestions in the editor specified during the day specified." - } - } - } - } - }, - "required": [ - "day", - "breakdown" - ], - "additionalProperties": false - } - } - } - } - ], - "previews": [], - "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change. This endpoint is only applicable to dedicated enterprise accounts for Copilot Business. See \"About enterprise accounts for Copilot Business.\"

    \n
    \n

    You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE\nfor users within an enterprise team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.\nSee the response schema tab for detailed metrics definitions.

    \n

    The response contains metrics for up to 28 days prior. Usage metrics are processed once per day for the previous day,\nand the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,\nthey must have telemetry enabled in their IDE.

    \n

    Note

    \n

    \nThis endpoint will only return results for a given day if the enterprise team had five or more members with active Copilot licenses, as evaluated at the end of that day.

    \n
    \n

    Owners and billing managers for the enterprise that contains the enterprise team can view Copilot usage metrics for the enterprise team.

    \n

    OAuth app tokens and personal access tokens (classic) need either the manage_billing:copilot or read:enterprise scopes to use this endpoint.

    ", - "statusCodes": [ - { - "httpStatusCode": "200", - "description": "

    OK

    " - }, - { - "httpStatusCode": "401", - "description": "

    Requires authentication

    " - }, - { - "httpStatusCode": "403", - "description": "

    Forbidden

    " - }, - { - "httpStatusCode": "404", - "description": "

    Resource not found

    " - }, - { - "httpStatusCode": "500", - "description": "

    Internal Error

    " - } - ] - }, - { - "serverUrl": "https://api.github.com", - "verb": "get", - "requestPath": "/orgs/{org}/copilot/usage", - "title": "Get a summary of Copilot usage for organization members", - "category": "copilot", - "subcategory": "copilot-usage", - "parameters": [ - { - "name": "org", - "description": "

    The organization name. The name is not case sensitive.

    ", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "since", - "description": "

    Show usage metrics since this date. This is a timestamp in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ). Maximum value is 28 days ago.

    ", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "until", - "description": "

    Show usage metrics until this date. This is a timestamp in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ) and should not preceed the since date if it is passed.

    ", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "description": "

    The page number of the results to fetch. For more information, see \"Using pagination in the REST API.\"

    ", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "description": "

    The number of days of metrics to display per page (max 28). For more information, see \"Using pagination in the REST API.\"

    ", - "in": "query", - "schema": { - "type": "integer", - "default": 28 - } - } - ], - "bodyParameters": [], - "progAccess": { - "userToServerRest": true, - "serverToServer": true, - "fineGrainedPat": true, - "permissions": [ - { - "\"GitHub Copilot Business\" organization permissions": "read" - }, - { - "\"Administration\" organization permissions": "read" - } - ] - }, - "codeExamples": [ - { - "key": "default", - "request": { - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json", - "parameters": { - "org": "ORG" + "org": "ORG" } }, "response": { @@ -239876,11 +239883,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "read" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -240506,6 +240509,15 @@ "62ab9291-fae2-468e-974b-7e45096d5021" ] }, + "group_name": { + "type": [ + "string", + "null" + ], + "examples": [ + "Justice League" + ] + }, "html_url": { "type": "string", "format": "uri", @@ -241492,6 +241504,15 @@ "62ab9291-fae2-468e-974b-7e45096d5021" ] }, + "group_name": { + "type": [ + "string", + "null" + ], + "examples": [ + "Justice League" + ] + }, "html_url": { "type": "string", "format": "uri", @@ -242671,6 +242692,15 @@ "62ab9291-fae2-468e-974b-7e45096d5021" ] }, + "group_name": { + "type": [ + "string", + "null" + ], + "examples": [ + "Justice League" + ] + }, "html_url": { "type": "string", "format": "uri", @@ -266756,11 +266786,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "write" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -266904,11 +266930,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "write" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -267014,11 +267036,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "write" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -267312,11 +267330,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [ - { - "\"Enterprise administration\" business permissions": "write" - } - ] + "permissions": [] }, "codeExamples": [ { @@ -281605,6 +281619,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -282105,6 +282122,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -282728,6 +282746,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -283192,6 +283213,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -283592,6 +283616,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -284185,6 +284212,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -284654,6 +284684,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -285277,6 +285308,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -285741,6 +285775,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -286057,6 +286094,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -286680,6 +286718,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -287144,6 +287185,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -287985,6 +288029,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -288449,6 +288496,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -289302,6 +289352,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -289766,6 +289819,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -291048,6 +291104,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -291512,6 +291571,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -291892,6 +291954,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -292569,6 +292634,7 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, + "comments_enabled": true, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { @@ -293192,6 +293258,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -293656,6 +293725,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "type": [ "string", @@ -294064,6 +294136,9 @@ "comments": { "type": "integer" }, + "comments_enabled": { + "type": "boolean" + }, "user": { "anyOf": [ { @@ -448718,6 +448793,872 @@ } ] }, + "private-registries": { + "organization-configurations": [ + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries", + "title": "List private registries for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "per_page", + "description": "

    The number of results per page (max 100). For more information, see \"Using pagination in the REST API.\"

    ", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "

    The page number of the results to fetch. For more information, see \"Using pagination in the REST API.\"

    ", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "read" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

    Response

    ", + "example": { + "total_count": 1, + "configurations": [ + { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z", + "visibility": "selected" + } + ] + }, + "schema": { + "type": "object", + "required": [ + "total_count", + "configurations" + ], + "properties": { + "total_count": { + "type": "integer" + }, + "configurations": { + "type": "array", + "items": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": [ + "string", + "null" + ], + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Lists all private registry configurations available at the organization-level without revealing their encrypted\nvalues.

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

    OK

    " + }, + { + "httpStatusCode": "400", + "description": "

    Bad Request

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "post", + "requestPath": "/orgs/{org}/private-registries", + "title": "Create a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [ + { + "type": "string", + "name": "registry_type", + "in": "body", + "description": "

    The registry type.

    ", + "isRequired": true, + "enum": [ + "maven_repository" + ] + }, + { + "type": "string or null", + "name": "username", + "in": "body", + "description": "

    The username to use when authenticating with the private registry. This field should be omitted if the private registry does not require a username for authentication.

    " + }, + { + "type": "string", + "name": "encrypted_value", + "in": "body", + "description": "

    The value for your secret, encrypted with LibSodium using the public key retrieved from the Get private registries public key for an organization endpoint.

    ", + "isRequired": true + }, + { + "type": "string", + "name": "key_id", + "in": "body", + "description": "

    The ID of the key you used to encrypt the secret.

    ", + "isRequired": true + }, + { + "type": "string", + "name": "visibility", + "in": "body", + "description": "

    Which type of organization repositories have access to the private registry. selected means only the repositories specified by selected_repository_ids can access the private registry.

    ", + "isRequired": true, + "enum": [ + "all", + "private", + "selected" + ] + }, + { + "type": "array of integers", + "name": "selected_repository_ids", + "in": "body", + "description": "

    An array of repository IDs that can access the organization private registry. You can only provide a list of repository IDs when visibility is set to selected. You can manage the list of selected repositories using the Update a private registry for an organization endpoint. This field should be omitted if visibility is set to all or private.

    " + } + ], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "write" + } + ] + }, + "codeExamples": [ + { + "key": "org-private-registry-with-private-visibility", + "request": { + "contentType": "application/json", + "description": "Example of a private registry configuration with private visibility", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "registry_type": "maven_repository", + "username": "monalisa", + "encrypted_value": "c2VjcmV0", + "key_id": "012345678912345678", + "visibility": "private" + }, + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "201", + "contentType": "application/json", + "description": "

    The organization private registry configuration

    ", + "example": { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "visibility": "selected", + "selected_repository_ids": [ + 1296269, + 1296280 + ], + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z" + }, + "schema": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": "string", + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry. `selected` means only the repositories specified by `selected_repository_ids` can access the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "selected_repository_ids": { + "type": "array", + "description": "An array of repository IDs that can access the organization private registry when `visibility` is set to `selected`.", + "items": { + "type": "integer" + } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + }, + { + "key": "org-private-registry-with-selected-visibility", + "request": { + "contentType": "application/json", + "description": "Example of a private registry configuration with selected visibility", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "registry_type": "maven_repository", + "username": "monalisa", + "encrypted_value": "c2VjcmV0", + "key_id": "012345678912345678", + "visibility": "selected", + "selected_repository_ids": [ + 1296269, + 1296280 + ] + }, + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "201", + "contentType": "application/json", + "description": "

    The organization private registry configuration

    ", + "example": { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "visibility": "private", + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z" + }, + "schema": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": "string", + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry. `selected` means only the repositories specified by `selected_repository_ids` can access the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "selected_repository_ids": { + "type": "array", + "description": "An array of repository IDs that can access the organization private registry when `visibility` is set to `selected`.", + "items": { + "type": "integer" + } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Creates a private registry configuration with an encrypted value for an organization. Encrypt your secret using LibSodium. For more information, see \"Encrypting secrets for the REST API.\"

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "201", + "description": "

    The organization private registry configuration

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + }, + { + "httpStatusCode": "422", + "description": "

    Validation failed, or the endpoint has been spammed.

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/public-key", + "title": "Get private registries public key for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "read" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

    Response

    ", + "example": { + "key_id": "012345678912345678", + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234" + }, + "schema": { + "type": "object", + "required": [ + "key_id", + "key" + ], + "properties": { + "key_id": { + "description": "The identifier for the key.", + "type": "string", + "examples": [ + "012345678912345678" + ] + }, + "key": { + "description": "The Base64 encoded public key.", + "type": "string", + "examples": [ + "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234" + ] + } + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Gets the org public key, which is needed to encrypt private registry secrets. You need to encrypt a secret before you can create or update secrets.

    \n

    OAuth tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

    OK

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "title": "Get a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secret_name", + "description": "

    The name of the secret.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "read" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG", + "secret_name": "SECRET_NAME" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

    The specified private registry configuration for the organization

    ", + "example": { + "name": "MAVEN_REPOSITORY_SECRET", + "registry_type": "maven_repository", + "username": "monalisa", + "visibility": "private", + "created_at": "2019-08-10T14:59:22Z", + "updated_at": "2020-01-10T14:59:22Z" + }, + "schema": { + "title": "Organization private registry", + "description": "Private registry configuration for an organization", + "type": "object", + "properties": { + "name": { + "description": "The name of the private registry configuration.", + "type": "string", + "examples": [ + "MAVEN_REPOSITORY_SECRET" + ] + }, + "registry_type": { + "description": "The registry type.", + "enum": [ + "maven_repository" + ], + "type": "string" + }, + "username": { + "description": "The username to use when authenticating with the private registry.", + "type": [ + "string", + "null" + ], + "examples": [ + "monalisa" + ] + }, + "visibility": { + "description": "Which type of organization repositories have access to the private registry.", + "enum": [ + "all", + "private", + "selected" + ], + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "name", + "registry_type", + "visibility", + "created_at", + "updated_at" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Get the configuration of a single private registry defined for an organization, omitting its encrypted value.

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

    The specified private registry configuration for the organization

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "patch", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "title": "Update a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secret_name", + "description": "

    The name of the secret.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [ + { + "type": "string", + "name": "registry_type", + "in": "body", + "description": "

    The registry type.

    ", + "enum": [ + "maven_repository" + ] + }, + { + "type": "string or null", + "name": "username", + "in": "body", + "description": "

    The username to use when authenticating with the private registry. This field should be omitted if the private registry does not require a username for authentication.

    " + }, + { + "type": "string", + "name": "encrypted_value", + "in": "body", + "description": "

    The value for your secret, encrypted with LibSodium using the public key retrieved from the Get private registries public key for an organization endpoint.

    " + }, + { + "type": "string", + "name": "key_id", + "in": "body", + "description": "

    The ID of the key you used to encrypt the secret.

    " + }, + { + "type": "string", + "name": "visibility", + "in": "body", + "description": "

    Which type of organization repositories have access to the private registry. selected means only the repositories specified by selected_repository_ids can access the private registry.

    ", + "enum": [ + "all", + "private", + "selected" + ] + }, + { + "type": "array of integers", + "name": "selected_repository_ids", + "in": "body", + "description": "

    An array of repository IDs that can access the organization private registry. You can only provide a list of repository IDs when visibility is set to selected. This field should be omitted if visibility is set to all or private.

    " + } + ], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "write" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "contentType": "application/json", + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "username": "monalisa", + "encrypted_value": "c2VjcmV0", + "key_id": "012345678912345678" + }, + "parameters": { + "org": "ORG", + "secret_name": "SECRET_NAME" + } + }, + "response": { + "statusCode": "204", + "description": "

    Response

    " + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Updates a private registry configuration with an encrypted value for an organization. Encrypt your secret using LibSodium. For more information, see \"Encrypting secrets for the REST API.\"

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "204", + "description": "

    No Content

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + }, + { + "httpStatusCode": "422", + "description": "

    Validation failed, or the endpoint has been spammed.

    " + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "delete", + "requestPath": "/orgs/{org}/private-registries/{secret_name}", + "title": "Delete a private registry for an organization", + "category": "private-registries", + "subcategory": "organization-configurations", + "parameters": [ + { + "name": "org", + "description": "

    The organization name. The name is not case sensitive.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secret_name", + "description": "

    The name of the secret.

    ", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [], + "progAccess": { + "userToServerRest": true, + "serverToServer": true, + "fineGrainedPat": true, + "permissions": [ + { + "\"Organization private registries\" organization permissions": "write" + } + ] + }, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG", + "secret_name": "SECRET_NAME" + } + }, + "response": { + "statusCode": "204", + "description": "

    Response

    " + } + } + ], + "previews": [], + "descriptionHTML": "

    Note

    \n

    \nThis endpoint is in public preview and is subject to change.

    \n
    \n

    Delete a private registry configuration at the organization-level.

    \n

    OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

    ", + "statusCodes": [ + { + "httpStatusCode": "204", + "description": "

    No Content

    " + }, + { + "httpStatusCode": "400", + "description": "

    Bad Request

    " + }, + { + "httpStatusCode": "404", + "description": "

    Resource not found

    " + } + ] + } + ] + }, "projects": { "projects": [ { @@ -526815,7 +527756,7 @@ "serverUrl": "https://api.github.com", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -526869,20 +527810,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -526897,7 +527838,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -526913,7 +527854,7 @@ "serverUrl": "https://api.github.com", "verb": "put", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Enable automated security fixes", + "title": "Enable Dependabot security updates", "category": "repos", "subcategory": "repos", "parameters": [ @@ -526965,7 +527906,7 @@ } ], "previews": [], - "descriptionHTML": "

    Enables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Enables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "204", @@ -526977,7 +527918,7 @@ "serverUrl": "https://api.github.com", "verb": "delete", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Disable automated security fixes", + "title": "Disable Dependabot security updates", "category": "repos", "subcategory": "repos", "parameters": [ @@ -527029,7 +527970,7 @@ } ], "previews": [], - "descriptionHTML": "

    Disables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Disables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "204", @@ -528440,7 +529381,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -575993,8 +576934,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { @@ -582761,7 +583701,7 @@ } ], "previews": [], - "descriptionHTML": "

    Lists the latest incremental and backfill scans by type for a repository.

    \n

    OAuth app tokens and personal access tokens (classic) need the repo or security_events scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the public_repo scope instead.

    ", + "descriptionHTML": "

    Lists the latest default incremental and backfill scans by type for a repository. Scans from Copilot Secret Scanning are not included.

    \n

    OAuth app tokens and personal access tokens (classic) need the repo or security_events scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the public_repo scope instead.

    ", "statusCodes": [ { "httpStatusCode": "200", diff --git a/src/rest/data/ghes-3.10-2022-11-28/schema.json b/src/rest/data/ghes-3.10-2022-11-28/schema.json index eff9e6192e08..ee9aaf59a9c6 100644 --- a/src/rest/data/ghes-3.10-2022-11-28/schema.json +++ b/src/rest/data/ghes-3.10-2022-11-28/schema.json @@ -152696,6 +152696,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -212224,7 +212225,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -214773,7 +214773,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -216176,7 +216175,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -222688,7 +222686,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -427522,7 +427519,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -427576,20 +427573,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -427604,7 +427601,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -428957,7 +428954,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -463232,8 +463229,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { diff --git a/src/rest/data/ghes-3.11-2022-11-28/schema.json b/src/rest/data/ghes-3.11-2022-11-28/schema.json index fd42bc789e7a..821117e83005 100644 --- a/src/rest/data/ghes-3.11-2022-11-28/schema.json +++ b/src/rest/data/ghes-3.11-2022-11-28/schema.json @@ -152721,6 +152721,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -152843,7 +152844,7 @@ "type": "array of strings", "name": "languages", "in": "body", - "description": "

    CodeQL languages to be analyzed.\nSupported values are: c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " + "description": "

    CodeQL languages to be analyzed.\nSupported values are: actions, c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " } ], "progAccess": { @@ -212467,7 +212468,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -215016,7 +215016,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -216419,7 +216418,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -222931,7 +222929,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -433894,7 +433891,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -433948,20 +433945,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -433976,7 +433973,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -435329,7 +435326,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -476182,8 +476179,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { diff --git a/src/rest/data/ghes-3.12-2022-11-28/schema.json b/src/rest/data/ghes-3.12-2022-11-28/schema.json index fc11368c9f55..33cae5a1bf13 100644 --- a/src/rest/data/ghes-3.12-2022-11-28/schema.json +++ b/src/rest/data/ghes-3.12-2022-11-28/schema.json @@ -153042,6 +153042,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -153163,7 +153164,7 @@ "type": "array of strings", "name": "languages", "in": "body", - "description": "

    CodeQL languages to be analyzed.\nSupported values are: c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " + "description": "

    CodeQL languages to be analyzed.\nSupported values are: actions, c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " } ], "progAccess": { @@ -214704,7 +214705,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -217253,7 +217253,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -218656,7 +218655,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -225168,7 +225166,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -436780,7 +436777,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -436834,20 +436831,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -436862,7 +436859,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -438215,7 +438212,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -479585,8 +479582,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { diff --git a/src/rest/data/ghes-3.13-2022-11-28/schema.json b/src/rest/data/ghes-3.13-2022-11-28/schema.json index a66359286f80..f3bf7c6bbe10 100644 --- a/src/rest/data/ghes-3.13-2022-11-28/schema.json +++ b/src/rest/data/ghes-3.13-2022-11-28/schema.json @@ -153186,6 +153186,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -153307,7 +153308,7 @@ "type": "array of strings", "name": "languages", "in": "body", - "description": "

    CodeQL languages to be analyzed.\nSupported values are: c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " + "description": "

    CodeQL languages to be analyzed.\nSupported values are: actions, c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " } ], "progAccess": { @@ -214904,7 +214905,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -217453,7 +217453,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -218856,7 +218855,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -225368,7 +225366,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -439211,7 +439208,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -439265,20 +439262,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -439293,7 +439290,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -440646,7 +440643,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -482728,8 +482725,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { diff --git a/src/rest/data/ghes-3.14-2022-11-28/schema.json b/src/rest/data/ghes-3.14-2022-11-28/schema.json index 2b64dd1def74..610ef6ba7e5b 100644 --- a/src/rest/data/ghes-3.14-2022-11-28/schema.json +++ b/src/rest/data/ghes-3.14-2022-11-28/schema.json @@ -153186,6 +153186,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -153307,7 +153308,7 @@ "type": "array of strings", "name": "languages", "in": "body", - "description": "

    CodeQL languages to be analyzed.\nSupported values are: c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " + "description": "

    CodeQL languages to be analyzed.\nSupported values are: actions, c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " } ], "progAccess": { @@ -214904,7 +214905,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -217453,7 +217453,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -218856,7 +218855,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -225368,7 +225366,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -442460,7 +442457,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -442514,20 +442511,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -442542,7 +442539,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -443895,7 +443892,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -486464,8 +486461,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { diff --git a/src/rest/data/ghes-3.15-2022-11-28/schema.json b/src/rest/data/ghes-3.15-2022-11-28/schema.json index 2ec158dacb4c..f7ec4f669b92 100644 --- a/src/rest/data/ghes-3.15-2022-11-28/schema.json +++ b/src/rest/data/ghes-3.15-2022-11-28/schema.json @@ -153878,6 +153878,7 @@ "items": { "type": "string", "enum": [ + "actions", "c-cpp", "csharp", "go", @@ -153999,7 +154000,7 @@ "type": "array of strings", "name": "languages", "in": "body", - "description": "

    CodeQL languages to be analyzed.\nSupported values are: c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " + "description": "

    CodeQL languages to be analyzed.\nSupported values are: actions, c-cpp, csharp, go, java-kotlin, javascript-typescript, python, ruby, swift

    " } ], "progAccess": { @@ -217825,7 +217826,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -220374,7 +220374,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -221777,7 +221776,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -228289,7 +228287,6 @@ "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, - "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", @@ -446482,7 +446479,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/automated-security-fixes", - "title": "Check if automated security fixes are enabled for a repository", + "title": "Check if Dependabot security updates are enabled for a repository", "category": "repos", "subcategory": "repos", "parameters": [ @@ -446536,20 +446533,20 @@ "paused": false }, "schema": { - "title": "Check Automated Security Fixes", - "description": "Check Automated Security Fixes", + "title": "Check Dependabot security updates", + "description": "Check Dependabot security updates", "type": "object", "properties": { "enabled": { "type": "boolean", - "description": "Whether automated security fixes are enabled for the repository.", + "description": "Whether Dependabot security updates are enabled for the repository.", "examples": [ true ] }, "paused": { "type": "boolean", - "description": "Whether automated security fixes are paused for the repository.", + "description": "Whether Dependabot security updates are paused for the repository.", "examples": [ false ] @@ -446564,7 +446561,7 @@ } ], "previews": [], - "descriptionHTML": "

    Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring automated security fixes\".

    ", + "descriptionHTML": "

    Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see \"Configuring Dependabot security updates\".

    ", "statusCodes": [ { "httpStatusCode": "200", @@ -447917,7 +447914,7 @@ "type": "array of strings", "name": "names", "in": "body", - "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names cannot contain uppercase letters.

    ", + "description": "

    An array of topics to add to the repository. Pass one or more topics to replace the set of existing topics. Send an empty array ([]) to clear all topics from the repository. Note: Topic names will be saved as lowercase.

    ", "isRequired": true } ], @@ -491168,8 +491165,7 @@ "userToServerRest": false, "serverToServer": false, "fineGrainedPat": false, - "permissions": [], - "allowPermissionlessAccess": true + "permissions": [] }, "codeExamples": [ { diff --git a/src/rest/lib/config.json b/src/rest/lib/config.json index f1dc9bdc309e..1238b5e39e05 100644 --- a/src/rest/lib/config.json +++ b/src/rest/lib/config.json @@ -50,5 +50,5 @@ ] } }, - "sha": "99b100d4af04d83bdb08024aa6af991edd2ea02f" + "sha": "b1a9b605ce4d053e9554509fb4503109617a85f3" } \ No newline at end of file diff --git a/src/secret-scanning/data/public-docs.yml b/src/secret-scanning/data/public-docs.yml index 4df0fdafe14f..259dc3a0fc53 100644 --- a/src/secret-scanning/data/public-docs.yml +++ b/src/secret-scanning/data/public-docs.yml @@ -187,7 +187,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -786,7 +786,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -898,6 +898,17 @@ hasPushProtection: false hasValidityCheck: false isduplicate: false +- provider: Cockroach Labs + supportedSecret: CockroachDB Cloud API Key + secretType: ccdb_api_key + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: true + hasPushProtection: false + hasValidityCheck: false + isduplicate: false - provider: Contentful supportedSecret: Contentful Personal Access Token secretType: contentful_personal_access_token @@ -923,23 +934,23 @@ isduplicate: false - provider: Coveo supportedSecret: Coveo Access Token - secretType: coveoaccesstoken + secretType: coveo_access_token versions: fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false - provider: Coveo supportedSecret: Coveo API Key - secretType: coveoapikey + secretType: coveo_api_key versions: fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -962,7 +973,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -1000,6 +1011,17 @@ hasPushProtection: false hasValidityCheck: false isduplicate: false +- provider: Datastax + supportedSecret: Datastax AstraCS Tokens + secretType: datastax_astracs_token + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: true + hasPushProtection: true + hasValidityCheck: false + isduplicate: false - provider: Defined Networking supportedSecret: Defined Networking Managed Nebula API Key secretType: defined_networking_nebula_api_key @@ -1611,7 +1633,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -1855,6 +1877,17 @@ hasPushProtection: true hasValidityCheck: false isduplicate: false +- provider: Hubspot + supportedSecret: Hubspot Private Apps User Token + secretType: hubspot_private_apps_user_token + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: true + hasPushProtection: false + hasValidityCheck: false + isduplicate: false - provider: Hubspot supportedSecret: Hubspot SMTP Credential secretType: hubspot_smtp_credential @@ -1888,7 +1921,7 @@ ghes: '>=3.15' isPublic: true isPrivateWithGhas: true - hasPushProtection: false + hasPushProtection: true hasValidityCheck: false isduplicate: false - provider: IBM @@ -2016,7 +2049,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2027,7 +2060,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2164,6 +2197,28 @@ hasPushProtection: false hasValidityCheck: false isduplicate: false +- provider: Mailersend + supportedSecret: Mailersend API Token + secretType: mailersend_api_token + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: false + hasPushProtection: false + hasValidityCheck: false + isduplicate: false +- provider: Mailersend + supportedSecret: Mailersend SMTP Username + secretType: mailersend_smtp_username + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: false + hasPushProtection: false + hasValidityCheck: false + isduplicate: false - provider: Mailgun supportedSecret: Mailgun API Key secretType: mailgun_api_key @@ -2290,7 +2345,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2301,7 +2356,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2528,6 +2583,17 @@ fpt: '*' ghec: '*' isPublic: true + isPrivateWithGhas: true + hasPushProtection: false + hasValidityCheck: false + isduplicate: false +- provider: Oracle + supportedSecret: Oracle API Key + secretType: oracle_api_key + versions: + fpt: '*' + ghec: '*' + isPublic: true isPrivateWithGhas: false hasPushProtection: false hasValidityCheck: false @@ -2683,7 +2749,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2694,7 +2760,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2705,18 +2771,18 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false - provider: Polar - supportedSecret: Polat Client Secret + supportedSecret: Polar Client Secret secretType: polar_client_secret versions: fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2727,7 +2793,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2738,7 +2804,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: false @@ -2862,6 +2928,39 @@ hasPushProtection: true hasValidityCheck: false isduplicate: false +- provider: Ramp + supportedSecret: Ramp OAuth Client ID + secretType: ramp_client_id + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: true + hasPushProtection: false + hasValidityCheck: false + isduplicate: false +- provider: Ramp + supportedSecret: Ramp OAuth Client Secret + secretType: ramp_client_secret + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: true + hasPushProtection: false + hasValidityCheck: false + isduplicate: false +- provider: Ramp + supportedSecret: Ramp OAuth Access or Refresh Token + secretType: ramp_oauth_token + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: true + hasPushProtection: false + hasValidityCheck: false + isduplicate: false - provider: ReadMe supportedSecret: ReadMe API Key secretType: readmeio_api_access_token @@ -2955,7 +3054,7 @@ ghes: '>=3.16' isPublic: true isPrivateWithGhas: true - hasPushProtection: false + hasPushProtection: true hasValidityCheck: false isduplicate: false - provider: Segment @@ -3228,7 +3327,7 @@ fpt: '*' ghec: '*' isPublic: true - isPrivateWithGhas: false + isPrivateWithGhas: true hasPushProtection: false hasValidityCheck: false isduplicate: true @@ -3424,6 +3523,17 @@ hasPushProtection: false hasValidityCheck: false isduplicate: false +- provider: Tailscale + supportedSecret: Tailscale API Key + secretType: tailscale_api_key + versions: + fpt: '*' + ghec: '*' + isPublic: true + isPrivateWithGhas: true + hasPushProtection: false + hasValidityCheck: false + isduplicate: false - provider: Telegram supportedSecret: Telegram Bot Token secretType: telegram_bot_token diff --git a/src/secret-scanning/lib/config.json b/src/secret-scanning/lib/config.json index 721fe00f022a..966ea7b9599d 100644 --- a/src/secret-scanning/lib/config.json +++ b/src/secret-scanning/lib/config.json @@ -1,5 +1,5 @@ { - "sha": "cc2ad2addc1a78be626037470b48db546e8a35ec", - "blob-sha": "7cd3674e6d0419376506fc41828588bd3eaed01d", + "sha": "069c13554f6b1fdc9281b631113e4515192b14f3", + "blob-sha": "4eb010ed9f73b9e744147d53dbc0ce506f95cb40", "targetFilename": "code-security/secret-scanning/introduction/supported-secret-scanning-patterns" } \ No newline at end of file diff --git a/src/webhooks/data/fpt/schema.json b/src/webhooks/data/fpt/schema.json index 5d30a76972aa..8d4479f28bfc 100644 --- a/src/webhooks/data/fpt/schema.json +++ b/src/webhooks/data/fpt/schema.json @@ -10700,6 +10700,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10712,6 +10717,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -10853,14 +10863,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -11110,6 +11121,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11122,6 +11138,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11444,7 +11465,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -11619,7 +11640,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -11884,6 +11905,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11896,6 +11922,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12067,12 +12098,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -12208,12 +12240,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12380,14 +12422,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -12523,12 +12566,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12670,13 +12723,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/data/ghec/schema.json b/src/webhooks/data/ghec/schema.json index 24629ed32474..4033bd26f602 100644 --- a/src/webhooks/data/ghec/schema.json +++ b/src/webhooks/data/ghec/schema.json @@ -13104,6 +13104,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -13116,6 +13121,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13257,14 +13267,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -13514,6 +13525,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -13526,6 +13542,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13848,7 +13869,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -14023,7 +14044,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -14288,6 +14309,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -14300,6 +14326,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -14471,12 +14502,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -14612,12 +14644,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -14784,14 +14826,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -14927,12 +14970,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -15074,13 +15127,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/data/ghes-3.10/schema.json b/src/webhooks/data/ghes-3.10/schema.json index f88a974222d8..1948dda23a7f 100644 --- a/src/webhooks/data/ghes-3.10/schema.json +++ b/src/webhooks/data/ghes-3.10/schema.json @@ -10427,6 +10427,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10439,6 +10444,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -10580,14 +10590,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -10837,6 +10848,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10849,6 +10865,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11171,7 +11192,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -11346,7 +11367,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -11611,6 +11632,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11623,6 +11649,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11794,12 +11825,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -11935,12 +11967,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12107,14 +12149,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -12250,12 +12293,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12397,13 +12450,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/data/ghes-3.11/schema.json b/src/webhooks/data/ghes-3.11/schema.json index 12042549cb6b..823902e9fd14 100644 --- a/src/webhooks/data/ghes-3.11/schema.json +++ b/src/webhooks/data/ghes-3.11/schema.json @@ -10551,6 +10551,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10563,6 +10568,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -10704,14 +10714,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -10961,6 +10972,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10973,6 +10989,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11295,7 +11316,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -11470,7 +11491,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -11735,6 +11756,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11747,6 +11773,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11918,12 +11949,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -12059,12 +12091,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12231,14 +12273,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -12374,12 +12417,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12521,13 +12574,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/data/ghes-3.12/schema.json b/src/webhooks/data/ghes-3.12/schema.json index 4991d12177c5..c479c0fb9dbb 100644 --- a/src/webhooks/data/ghes-3.12/schema.json +++ b/src/webhooks/data/ghes-3.12/schema.json @@ -10551,6 +10551,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10563,6 +10568,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -10704,14 +10714,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -10961,6 +10972,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10973,6 +10989,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11295,7 +11316,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -11470,7 +11491,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -11735,6 +11756,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11747,6 +11773,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11918,12 +11949,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -12059,12 +12091,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12231,14 +12273,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -12374,12 +12417,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12521,13 +12574,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/data/ghes-3.13/schema.json b/src/webhooks/data/ghes-3.13/schema.json index d6cd67de9fce..7e6e9f1a5fbb 100644 --- a/src/webhooks/data/ghes-3.13/schema.json +++ b/src/webhooks/data/ghes-3.13/schema.json @@ -10551,6 +10551,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10563,6 +10568,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -10704,14 +10714,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -10961,6 +10972,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -10973,6 +10989,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11295,7 +11316,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -11470,7 +11491,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -11735,6 +11756,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11747,6 +11773,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11918,12 +11949,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -12059,12 +12091,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12231,14 +12273,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -12374,12 +12417,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12521,13 +12574,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/data/ghes-3.14/schema.json b/src/webhooks/data/ghes-3.14/schema.json index 1d4b5f56d096..1b5a860ba65c 100644 --- a/src/webhooks/data/ghes-3.14/schema.json +++ b/src/webhooks/data/ghes-3.14/schema.json @@ -11721,6 +11721,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11733,6 +11738,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -11874,14 +11884,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -12131,6 +12142,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -12143,6 +12159,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12465,7 +12486,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -12640,7 +12661,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -12905,6 +12926,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -12917,6 +12943,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13088,12 +13119,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -13229,12 +13261,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13401,14 +13443,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -13544,12 +13587,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13691,13 +13744,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/data/ghes-3.15/schema.json b/src/webhooks/data/ghes-3.15/schema.json index 13f952923d30..8821490223c8 100644 --- a/src/webhooks/data/ghes-3.15/schema.json +++ b/src/webhooks/data/ghes-3.15/schema.json @@ -11884,6 +11884,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -11896,6 +11901,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12037,14 +12047,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -12294,6 +12305,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -12306,6 +12322,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -12628,7 +12649,7 @@ { "type": "null", "name": "fixed_at", - "description": "" + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " }, { "type": "string", @@ -12803,7 +12824,7 @@ { "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", @@ -13068,6 +13089,11 @@ } ] }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", @@ -13080,6 +13106,11 @@ null ] }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13251,12 +13282,13 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ - "fixed" + "fixed", + null ] }, { @@ -13392,12 +13424,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "string or null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13564,14 +13606,15 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", "dismissed", - "fixed" + "fixed", + null ] }, { @@ -13707,12 +13750,22 @@ "description": "", "isRequired": true }, + { + "type": "string or null", + "name": "dismissed_comment", + "description": "

    The dismissal comment associated with the dismissal of the alert.

    " + }, { "type": "null", "name": "dismissed_reason", "description": "

    The reason for dismissing or closing the alert. Can be one of: false positive, won't fix, and used in tests.

    ", "isRequired": true }, + { + "type": "null", + "name": "fixed_at", + "description": "

    The time that the alert was fixed in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

    " + }, { "type": "string", "name": "html_url", @@ -13854,13 +13907,14 @@ ] }, { - "type": "string", + "type": "string or null", "name": "state", - "description": "

    State of a code scanning alert.

    ", + "description": "

    State of a code scanning alert. Events for alerts found outside the default branch will return a null value until they are dismissed or fixed.

    ", "isRequired": true, "enum": [ "open", - "fixed" + "fixed", + null ] }, { diff --git a/src/webhooks/lib/config.json b/src/webhooks/lib/config.json index 7327892fa0f2..08fa94769d84 100644 --- a/src/webhooks/lib/config.json +++ b/src/webhooks/lib/config.json @@ -1,3 +1,3 @@ { - "sha": "99b100d4af04d83bdb08024aa6af991edd2ea02f" + "sha": "b1a9b605ce4d053e9554509fb4503109617a85f3" } \ No newline at end of file diff --git a/src/workflows/close-dangling-prs.ts b/src/workflows/close-dangling-prs.ts index caa7e517da73..43ced3d4a2d3 100644 --- a/src/workflows/close-dangling-prs.ts +++ b/src/workflows/close-dangling-prs.ts @@ -1,7 +1,6 @@ import { program, Option } from 'commander' import github from './github.js' -import { getActionContext } from './action-context.js' import { octoSecondaryRatelimitRetry } from './secondary-ratelimit-retry' const DRY_RUN = process.env.DRY_RUN || 'false' @@ -32,19 +31,13 @@ const CONFIGS: Config[] = [ }, ] -let owner = 'github' -let repo = 'docs-internal' - -if (process.env.GITHUB_EVENT_PATH) { - const actionContext = getActionContext() - owner = actionContext.owner - repo = actionContext.repo -} +const owner = process.env.GITHUB_REPOSITORY_OWNER || 'github' +const repo = process.env.GITHUB_REPOSITORY?.split('/')[1] || 'docs-internal' program .description('Finds PRs with "FOR PREVIEW ONLY" in the title that are too old and closes them.') - .option('owner', 'Owner of the repository', owner) - .option('repo', 'Name of the repository', repo) + .option('--owner', 'Owner of the repository', owner) + .option('--repo', 'Name of the repository', repo) .addOption( new Option( '--dry-run',