From 688ab2d120c40ad887ef243e7f9c53363c37e372 Mon Sep 17 00:00:00 2001 From: Patrick Thomson Date: Fri, 10 Jan 2025 08:24:23 -0500 Subject: [PATCH 1/3] Update GHES 3.15 notes to mention syntax highlighting errors. (#53793) Co-authored-by: Isaac Brown <101839405+isaacmbrown@users.noreply.github.com> --- data/release-notes/enterprise-server/3-15/1.yml | 2 ++ 1 file changed, 2 insertions(+) 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. - | From 0c412f92136d0fde1aa86130c210b5b1a751f5be Mon Sep 17 00:00:00 2001 From: Ashish Keshan Date: Fri, 10 Jan 2025 08:49:46 -0500 Subject: [PATCH 2/3] Lint remaining internal links in `data/reusables` and `content` (#53797) Co-authored-by: Anne-Marie <102995847+am-stead@users.noreply.github.com> --- .../usage-limits-billing-and-administration.md | 2 +- ...g-a-custom-security-configuration-for-your-enterprise.md | 2 +- ...quests-with-a-github-app-in-a-github-actions-workflow.md | 2 +- .../apps/oauth-apps/using-oauth-apps/internal-oauth-apps.md | 2 +- content/apps/using-github-apps/internal-github-apps.md | 2 +- .../removing-sensitive-data-from-a-repository.md | 2 +- .../responsible-use-autofix-code-scanning.md | 2 +- .../working-with-push-protection-from-the-command-line.md | 2 +- .../working-with-push-protection-in-the-github-ui.md | 2 +- .../giving-org-access-private-registries.md | 2 +- .../security-overview/assessing-adoption-code-security.md | 2 +- .../responsible-use-of-github-copilot-chat-in-github.md | 2 +- .../writing-mathematical-expressions.md | 2 +- .../reclaiming-mannequins-for-github-enterprise-importer.md | 2 +- content/rest/search/search.md | 2 +- .../organizations/team-discussions-api-deprecation.md | 4 ++-- .../reusables/package_registry/packages-classic-pat-only.md | 2 +- data/reusables/pages/private_pages_are_public_warning.md | 6 +++--- data/reusables/pages/twenty-minutes-to-publish.md | 2 +- data/reusables/rai/copilot-dotcom-feedback-collection.md | 2 +- data/reusables/rai/copilot/about-copilot-chat-in-mobile.md | 4 ++-- .../rai/copilot/copilot-chat-ide-improving-performance.md | 2 +- data/reusables/repositories/legacy-issue-template-tip.md | 2 +- data/reusables/sponsors/org-email-updates.md | 2 +- .../user-settings/classic-projects-api-classic-pat-only.md | 2 +- .../user-settings/enterprise-admin-api-classic-pat-only.md | 2 +- .../reusables/user-settings/imports-api-classic-pat-only.md | 2 +- .../user-settings/notifications-api-classic-pat-only.md | 2 +- 28 files changed, 32 insertions(+), 32 deletions(-) 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 cf36742d9775..7722a551d142 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 @@ -112,7 +112,7 @@ 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 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/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/oauth-apps/using-oauth-apps/internal-oauth-apps.md b/content/apps/oauth-apps/using-oauth-apps/internal-oauth-apps.md index f583a0b3bc91..0d1256a12fb2 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 : 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/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/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/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/security-overview/assessing-adoption-code-security.md b/content/code-security/security-overview/assessing-adoption-code-security.md index 108479724e07..189249df537e 100644 --- a/content/code-security/security-overview/assessing-adoption-code-security.md +++ b/content/code-security/security-overview/assessing-adoption-code-security.md @@ -31,7 +31,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/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/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..07749bb3e264 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 @@ -42,7 +42,7 @@ This sentence uses $\` and \`$ delimiters to show math inline: $`\sqrt{3x-1}+(1+ 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**\ 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 be68fec8bf6f..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 @@ -127,7 +127,7 @@ If your migration source is Azure DevOps, you can reclaim mannequins with the {% 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-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 %} 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/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/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/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/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/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-in-mobile.md b/data/reusables/rai/copilot/about-copilot-chat-in-mobile.md index 288fcf810634..9ea623370c5c 100644 --- a/data/reusables/rai/copilot/about-copilot-chat-in-mobile.md +++ b/data/reusables/rai/copilot/about-copilot-chat-in-mobile.md @@ -21,7 +21,7 @@ The response generated by {% data variables.product.prodname_copilot_chat_short 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/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/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/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 %} From ff836e54a554660c74ae6df51ebf57d0c2fc2100 Mon Sep 17 00:00:00 2001 From: hubwriter Date: Fri, 10 Jan 2025 14:50:41 +0000 Subject: [PATCH 3/3] Update the "Prototyping with AI models" article (#53807) --- .../help/models/model-playground-code-tab.png | Bin 0 -> 47556 bytes .../prototyping-with-ai-models.md | 36 ++++++++++++------ .../models/steps-to-open-model-playground.md | 5 +++ 3 files changed, 29 insertions(+), 12 deletions(-) create mode 100644 assets/images/help/models/model-playground-code-tab.png create mode 100644 data/reusables/models/steps-to-open-model-playground.md 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 0000000000000000000000000000000000000000..f63e8832cd2e7ed5af3daaa57530dcd50218b5c5 GIT binary patch literal 47556 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

ESw%_mSKj&Q^gZfV_J?bMFSNmn?&E+$U4Nt8Q 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 Al>h($ literal 0 HcmV?d00001 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/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**.