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

Merge branch 'main' into main

This commit is contained in:
Laura Coursen
2022-10-13 13:06:07 -05:00
committed by GitHub
148 changed files with 896 additions and 1686 deletions

View File

@@ -51,7 +51,7 @@ type Props = {
}
export const PlatformPicker = ({ variant = 'subnav' }: Props) => {
const router = useRouter()
const { query, asPath } = router
const { query, asPath, locale } = router
const { defaultPlatform, detectedPlatforms } = useArticleContext()
const [currentPlatform, setCurrentPlatform] = useState(defaultPlatform || '')
@@ -91,7 +91,10 @@ export const PlatformPicker = ({ variant = 'subnav' }: Props) => {
const [pathRoot, pathQuery = ''] = asPath.split('?')
const params = new URLSearchParams(pathQuery)
params.set(platformQueryKey, platform)
router.push({ pathname: pathRoot, query: params.toString() }, undefined, { shallow: true })
router.push({ pathname: pathRoot, query: params.toString() }, undefined, {
shallow: true,
locale,
})
sendEvent({
type: EventType.preference,

View File

@@ -53,7 +53,7 @@ type Props = {
}
export const ToolPicker = ({ variant = 'subnav' }: Props) => {
const router = useRouter()
const { asPath, query } = router
const { asPath, query, locale } = router
// allTools comes from the ArticleContext which contains the list of tools available
const { defaultTool, detectedTools, allTools } = useArticleContext()
const [currentTool, setCurrentTool] = useState(getDefaultTool(defaultTool, detectedTools))
@@ -97,7 +97,10 @@ export const ToolPicker = ({ variant = 'subnav' }: Props) => {
const [pathRoot, pathQuery = ''] = asPath.split('?')
const params = new URLSearchParams(pathQuery)
params.set(toolQueryKey, tool)
router.push({ pathname: pathRoot, query: params.toString() }, undefined, { shallow: true })
router.push({ pathname: pathRoot, query: params.toString() }, undefined, {
shallow: true,
locale,
})
sendEvent({
type: EventType.preference,

View File

@@ -63,69 +63,73 @@ export const ArticleCards = () => {
return (
<div>
<label htmlFor="guide-filter-form">{t('filter_instructions')}</label>
<form name="guide-filter-form" className="mt-2 mb-5 d-flex d-flex">
<div data-testid="card-filter-types">
<div
onClick={() => clickDropdown(typesRef)}
onKeyDown={() => clickDropdown(typesRef)}
role="button"
tabIndex={-1}
className="text-uppercase f6 color-fg-muted d-block"
>
{t('filters.type')}
<div data-search="hide">
<label htmlFor="guide-filter-form">{t('filter_instructions')}</label>
<form name="guide-filter-form" className="mt-2 mb-5 d-flex d-flex">
<div data-testid="card-filter-types">
<div
onClick={() => clickDropdown(typesRef)}
onKeyDown={() => clickDropdown(typesRef)}
role="button"
tabIndex={-1}
className="text-uppercase f6 color-fg-muted d-block"
>
{t('filters.type')}
</div>
<ActionMenu anchorRef={typesRef}>
<ActionMenu.Button>
{typeFilter ? typeFilter.text : t('filters.all')}
</ActionMenu.Button>
<ActionMenu.Overlay aria-label="types" data-testid="types-dropdown">
<ActionList selectionVariant="single">
{types.map((type) => {
return (
<ActionList.Item onSelect={() => setTypeFilter(type)} key={type.text}>
{type.text}
</ActionList.Item>
)
})}
</ActionList>
</ActionMenu.Overlay>
</ActionMenu>
</div>
<ActionMenu anchorRef={typesRef}>
<ActionMenu.Button>{typeFilter ? typeFilter.text : t('filters.all')}</ActionMenu.Button>
<ActionMenu.Overlay aria-label="types" data-testid="types-dropdown">
<ActionList selectionVariant="single">
{types.map((type) => {
return (
<ActionList.Item onSelect={() => setTypeFilter(type)} key={type.text}>
{type.text}
</ActionList.Item>
)
})}
</ActionList>
</ActionMenu.Overlay>
</ActionMenu>
</div>
<div data-testid="card-filter-topics" className="mx-4">
<div
onClick={() => clickDropdown(topicsRef)}
onKeyDown={() => clickDropdown(topicsRef)}
role="button"
tabIndex={-1}
className="text-uppercase f6 color-fg-muted d-block"
>
{t('filters.topic')}
<div data-testid="card-filter-topics" className="mx-4">
<div
onClick={() => clickDropdown(topicsRef)}
onKeyDown={() => clickDropdown(topicsRef)}
role="button"
tabIndex={-1}
className="text-uppercase f6 color-fg-muted d-block"
>
{t('filters.topic')}
</div>
<ActionMenu anchorRef={topicsRef}>
<ActionMenu.Button>
{topicFilter ? topicFilter.text : t('filters.all')}
</ActionMenu.Button>
<ActionMenu.Overlay aria-label="topics" data-testid="topics-dropdown">
<ActionList selectionVariant="single">
{topics.map((topic) => {
return (
<ActionList.Item onSelect={() => setTopicFilter(topic)} key={topic.text}>
{topic.text}
</ActionList.Item>
)
})}
</ActionList>
</ActionMenu.Overlay>
</ActionMenu>
</div>
<ActionMenu anchorRef={topicsRef}>
<ActionMenu.Button>
{topicFilter ? topicFilter.text : t('filters.all')}
</ActionMenu.Button>
<ActionMenu.Overlay aria-label="topics" data-testid="topics-dropdown">
<ActionList selectionVariant="single">
{topics.map((topic) => {
return (
<ActionList.Item onSelect={() => setTopicFilter(topic)} key={topic.text}>
{topic.text}
</ActionList.Item>
)
})}
</ActionList>
</ActionMenu.Overlay>
</ActionMenu>
</div>
</form>
</form>
<div role="status" className="color-fg-muted">
{guides.length === 0
? t('guides_found.none')
: guides.length === 1
? t('guides_found.one')
: t('guides_found.multiple').replace('{n}', guides.length)}
<div role="status" className="color-fg-muted">
{guides.length === 0
? t('guides_found.none')
: guides.length === 1
? t('guides_found.one')
: t('guides_found.multiple').replace('{n}', guides.length)}
</div>
</div>
<ul ref={articleCardRef} className="d-flex flex-wrap mr-0 mr-md-n6 mr-lg-n8">
@@ -144,6 +148,7 @@ export const ArticleCards = () => {
{guides.length > numVisible && (
<button
className="col-12 mt-5 text-center text-bold color-fg-accent btn-link"
data-search="hide"
onClick={loadMore}
>
{t('load_more')}

View File

@@ -102,6 +102,7 @@ export const LearningTrack = ({ track }: Props) => {
)}
{
<button
data-search="hide"
className={
'Box-footer btn-link border-top-0 position-relative text-center text-bold color-fg-accent pt-1 pb-3 col-12 ' +
((track?.guides?.length || 0) <= numVisible && cx(styles.removeHoverEvents))

View File

@@ -33,6 +33,7 @@ export const CodeExamples = () => {
return (
<div>
<form
data-search="hide"
className="pr-lg-3 mb-5 mt-3"
onSubmit={(event) => {
event.preventDefault()

View File

@@ -169,6 +169,8 @@ Sets an action's output parameter.
Optionally, you can also declare output parameters in an action's metadata file. For more information, see "[Metadata syntax for {% data variables.product.prodname_actions %}](/articles/metadata-syntax-for-github-actions#outputs-for-docker-container-and-javascript-actions)."
You can escape multiline strings for setting an output parameter by creating an environment variable and using it in a workflow command. For more information, see "[Setting an environment variable](#setting-an-environment-variable)."
### Example: Setting an output parameter
{% bash %}

View File

@@ -244,7 +244,11 @@ Optionally, to validate the restore, configure an IP exception list to allow acc
{% note %}
**Note:** The network settings are excluded from the backup snapshot. You must manually configure the network on the target {% data variables.product.prodname_ghe_server %} appliance as required for your environment.
**Note:**
- The network settings are excluded from the backup snapshot. You must manually configure the network on the target {% data variables.product.prodname_ghe_server %} appliance as required for your environment.
- When restoring to new disks on an existing or empty {% data variables.product.prodname_ghe_server %} instance, stale UUIDs may be present, resulting in Git and/or Alambic replication reporting as out of sync. Stale server entry IDs can be the result of a retired node in a high availability configuration still being present in the application database, but not in the restored replication configuration. To remediate, stale UUIDs can be torn down using `ghe-repl-teardown` once the restore has completed and prior to starting replication. In this scenario, contact {% data variables.contact.contact_ent_support %} for further assistance.
{% endnote %}

View File

@@ -93,7 +93,7 @@ Optionally, if you use {% data variables.product.prodname_registry %} on your pr
{% warning %}
**Warning**: If you don't configure {% data variables.product.prodname_actions %} on the staging instance before restoring your production backup, your staging instance will use your production instance's external storage, which could result in loss of data. We strongly recommended that you use different external storage for your staging instance.
**Warning**: If you don't configure {% data variables.product.prodname_registry %} on the staging instance before restoring your production backup, your staging instance will use your production instance's external storage, which could result in loss of data. We strongly recommended that you use different external storage for your staging instance.
{% endwarning %}
@@ -128,7 +128,7 @@ Optionally, if you use {% data variables.product.prodname_registry %} on your pr
Use the `ghe-restore` command to restore the rest of the data from the backup. For more information, see "[Restoring a backup](/admin/configuration/configuring-backups-on-your-appliance#restoring-a-backup)."
If the staging instance is already configured and you're about to overwrite settings, certificate, and license data, add the `-c` option to the command. For more information about the option, see [Using the backup and restore commands](https://github.com/github/backup-utils/blob/master/docs/usage.md#restoring-settings-tls-certificate-and-license) in the {% data variables.product.prodname_enterprise_backup_utilities %} documentation.
If the staging instance is already configured and you want to overwrite settings, certificate, and license data, add the `-c` option to the command. For more information about the option, see [Using the backup and restore commands](https://github.com/github/backup-utils/blob/master/docs/usage.md#restoring-settings-tls-certificate-and-license) in the {% data variables.product.prodname_enterprise_backup_utilities %} documentation.
### 6. Review the instance's configuration

View File

@@ -56,7 +56,7 @@ Jobs that run on Windows and macOS runners that {% data variables.product.prodna
The storage used by a repository is the total storage used by {% data variables.product.prodname_actions %} artifacts and {% data variables.product.prodname_registry %}. Your storage cost is the total usage for all repositories owned by your account. For more information about pricing for {% data variables.product.prodname_registry %}, see "[About billing for {% data variables.product.prodname_registry %}](/billing/managing-billing-for-github-packages/about-billing-for-github-packages)."
If your account's usage surpasses these limits and you have set a spending limit above $0 USD, you will pay $0.008 USD per GB of storage per day and per-minute usage depending on the operating system used by the {% data variables.product.prodname_dotcom %}-hosted runner. {% data variables.product.prodname_dotcom %} rounds the minutes each job uses up to the nearest minute.
If your account's usage surpasses these limits and you have set a spending limit above $0 USD, you will pay $0.008 USD per GB of storage per day and per-minute usage depending on the operating system used by the {% data variables.product.prodname_dotcom %}-hosted runner. {% data variables.product.prodname_dotcom %} rounds the minutes and partial minutes each job uses up to the nearest whole minute.
{% note %}

View File

@@ -3,6 +3,7 @@ title: About billing for GitHub Codespaces
shortTitle: About billing
intro: 'View pricing and see how to manage {% data variables.product.prodname_github_codespaces %} billing for your organization.'
permissions: 'To manage billing for {% data variables.product.prodname_github_codespaces %} for an organization, you must be an organization owner or a billing manager.'
miniTocMaxHeadingLevel: 3
versions:
fpt: '*'
ghec: '*'
@@ -13,40 +14,105 @@ topics:
- Billing
redirect_from:
- /billing/managing-billing-for-github-codespaces/about-billing-for-codespaces
- /github/developing-online-with-codespaces/about-billing-for-codespaces
- /codespaces/getting-started-with-codespaces/about-billing-for-codespaces
- /codespaces/codespaces-reference/about-billing-for-codespaces
- /codespaces/codespaces-reference/understanding-billing-for-codespaces
- /codespaces/codespaces-reference/understanding-billing-for-github-codespaces.md
---
## {% data variables.product.prodname_github_codespaces %} pricing
Charges are incurred for the use of {% data variables.product.prodname_github_codespaces %} for repositories owned by organization and enterprise accounts on {% data variables.product.prodname_team %} and {% data variables.product.prodname_enterprise %}. These accounts do not include any free minutes or storage for {% data variables.product.prodname_github_codespaces %}. Repositories in personal accounts are not currently billed for {% data variables.product.prodname_github_codespaces %} usage.
Charges are incurred for the use of {% data variables.product.prodname_github_codespaces %} for repositories owned by organization and enterprise accounts on {% data variables.product.prodname_team %} and {% data variables.product.prodname_enterprise %}. These accounts do not include any free minutes or storage for {% data variables.product.prodname_github_codespaces %}. Personal accounts are not currently billed for {% data variables.product.prodname_github_codespaces %} usage.
A {% data variables.product.prodname_github_codespaces %} instance (a "codespace") incurs charges for compute time, while it is active, and for the amount of storage it uses on disk.
{% data variables.product.prodname_github_codespaces %} usage is billed according to the units of measure in the following table:
| Product | SKU | Unit of measure | Price |
| ------------------- | -------- | --------------- | ----- |
| Codespaces Compute | 2 core | 1 hour | $0.18 |
| | 4 core | 1 hour | $0.36 |
| | 8 core | 1 hour | $0.72 |
| | 16 core | 1 hour | $1.44 |
| | 32 core | 1 hour | $2.88 |
| Codespaces Storage | Storage | 1 GB-month | $0.07 |
| Component | Machine type | Unit of measure | Price |
| ------------------- | ------------ | --------------- | ----- |
| Codespaces compute | 2 core | 1 hour | $0.18 |
| | 4 core | 1 hour | $0.36 |
| | 8 core | 1 hour | $0.72 |
| | 16 core | 1 hour | $1.44 |
| | 32 core | 1 hour | $2.88 |
| Codespaces storage | Storage | 1 GB-month<sup>*</sup> | $0.07 |
<sup>*</sup> See "[Billing for storage usage](#billing-for-storage-usage)" below for details of the GB-month unit of measure.
If you enable prebuilding of codespaces this will incur additional charges. For more information, see "[Billing for {% data variables.product.prodname_codespaces %} prebuilds](#billing-for-codespaces-prebuilds)."
## About billing for {% data variables.product.prodname_github_codespaces %}
{% data reusables.codespaces.codespaces-billing %}
{% data variables.product.prodname_github_codespaces %} is billed in US dollars (USD) according to their compute and storage usage. {% data reusables.codespaces.codespaces-monthly-billing %} xxx
Your {% data variables.product.prodname_github_codespaces %} usage shares your organization or enterprise account's existing billing date, payment method, and receipt. {% data reusables.dotcom_billing.view-all-subscriptions %}
Your {% data variables.product.prodname_github_codespaces %} usage shares your organization or enterprise account's existing payment method, and receipt. For more information, see "[Viewing your subscriptions and billing date](/articles/viewing-your-subscriptions-and-billing-date)."
{% ifversion ghec %}
If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_github_codespaces %} usage. For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)."
{% endif %}
{% data reusables.dotcom_billing.pricing_calculator.pricing_cal_codespaces %}
### Billing for compute usage
The compute usage of a codespace is the number of minutes for which that codespace is active. Total compute usage is calculated by summing the number of minutes used by all codespaces that are billable to the organization or enterprise. These totals are reported to the billing service every hour, and are billed monthly.
As an example, if a codespace is active for 1 hour and 15 minutes, then the compute cost will be the hourly cost of the codespace, as determined by its machine type, multiplied by 1.25.
You can restrict compute usage by stopping your codespaces. For information, see "[Stopping and starting a codespace](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace)." Codespaces are stopped automatically after a configurable period of inactivity. The timeout period can be configured by the user, or at the organization level. For more information, see "[Setting your timeout period for {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-timeout-period-for-github-codespaces)" and "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)."
### Billing for storage usage
For {% data variables.product.prodname_github_codespaces %} billing purposes, this includes all storage used by all codespaces and prebuilds in your account. This includes any files used by the codespaces, such as cloned repositories, configuration files, and extensions, among others. Storage is billed for all of your existing codespaces, regardless of whether they are active or stopped. The storage billing for a codespace ends when it is deleted.
Codespace storage is reported in GB-months. Your billing month runs from a fixed day in one month until the same day in the next month. In most cases the day of the month is determined by the day you started on your current {% data variables.product.prodname_dotcom %} plan. Your GB-month storage, is calculated as follows. Once every hour, the storage used by all of your currently active and stopped codespaces is assessed. This figure is then divided by the number of hours in the current billing month: `total storage size / hours this month`. The result is added to the running total for codespace storage for the month.
For example, if you have one codespace that uses 100 GB of storage and has existed for one hour you will have used `100 / (24 * 30) = 0.1388` GB-months of storage in a 30-day month. If your use of GitHub Codespaces during a 30-day month consists of two 100 GB codespaces that both existed for three full days then there will be `24 * 3` hourly reports for the storage of these codespaces, giving a total of: `(24 * 3) * 200 / (24 * 30) = 20` GB-months.
For each hourly report, the storage usage for the previous hour is calculated in seconds. As a result, you won't be charged for a full hour of storage if a codespace did not exist for the full 60 minutes. At the end of the month, {% data variables.product.prodname_dotcom %} rounds your storage to the nearest MB.
As an organization owner, you can:
- List the currently active and stopped codespaces for your organization. For more information, see "[Listing the codespaces in your organization](/codespaces/managing-codespaces-for-your-organization/listing-the-codespaces-in-your-organization)." In addition to the cost of these codespaces, the cost of {% data variables.product.prodname_github_codespaces %} for the current month may include costs for codespaces that existed earlier in the current month but have since been deleted.
- See the total {% data variables.product.prodname_github_codespaces %} compute and storage usage for your organization for the current month to date. For more information, see "[Viewing your {% data variables.product.prodname_github_codespaces %} usage](/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage)."
- Configure your organization settings to manage the cost of {% data variables.product.prodname_github_codespaces %}. For more information, see "[Managing the cost of {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-the-cost-of-github-codespaces-in-your-organization)."
To estimate the costs for metered services, you can use the {% data variables.product.prodname_dotcom %} [pricing calculator](https://github.com/pricing/calculator?feature=codespaces).
### Billing for {% data variables.product.prodname_codespaces %} prebuilds
{% data reusables.codespaces.billing-for-prebuilds-default %}
{% data reusables.codespaces.prebuilds-definition %} For more information, see "[About {% data variables.product.prodname_github_codespaces %} prebuilds](/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds)."
{% data reusables.codespaces.billing-for-prebuilds-reducing %}
#### {% data variables.product.prodname_actions %} costs for prebuilds
Prebuilds are created and updated by running a {% data variables.product.prodname_actions %} workflow on a {% data variables.product.prodname_dotcom %}-hosted runner. By default, prebuilds are updated every time you modify the prebuild configuration, or push changes to a prebuild-enabled branch. As with other workflows, while prebuild workflows are running they will either consume some of the Actions minutes included with your account, if you have any, or they will incur charges for Actions minutes. For more information about pricing for Actions minutes, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)." There is no associated {% data variables.product.prodname_codespaces %} compute cost for creating or updating prebuilds.
To reduce consumption of Actions minutes, you can set a prebuild to be updated only when you make a change to your dev container configuration files, or only on a custom schedule. You can also manage your storage usage by adjusting the number of previous versions of each prebuild that are retained. For more information, see "[Configuring prebuilds](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)."
If you are an organization or enterprise owner, you can track usage of prebuild workflows and storage by downloading a usage report for your organization or enterprise. You can identify workflow runs for prebuilds by filtering the CSV output to only include the workflow called "Create {% data variables.product.prodname_github_codespaces %} Prebuilds." For more information, see "[Viewing your {% data variables.product.prodname_actions %} usage](/billing/managing-billing-for-github-actions/viewing-your-github-actions-usage#viewing-github-actions-usage-for-your-organization)."
#### Storage costs for prebuilds
In addition to {% data variables.product.prodname_actions %} minutes, you will also be billed for the storage of prebuilds associated with each prebuild configuration for a given repository and region. Storage of prebuilds is billed at the same rate as storage of codespaces.
The storage cost for a prebuild in a single region will be similar to the storage cost that will be incurred for storing a single codespace created from that prebuild. The storage cost for the generated codespace may be more than the cost for the prebuild if, for example, the `updateContentCommand` and `postCreateCommand` commands are used during codespace creation to download more files to the dev container.
The total storage costs associated with a prebuild template will depend on:
* The price of storage per GB. See the table above.
* The size of the generated prebuild in GB.
* The number of regions in which the prebuild is available (because a copy of the prebuild is stored in each region).
* The number of older versions of the prebuild that are retained.
The storage cost for a prebuild is therefore calculated as: `price per GB * size (GB) * regions * versions`.
To limit the storage costs associated with prebuilds, you can choose to create prebuilds only in selected regions, and you can specify the number of older versions of prebuilds that will be retained. For more information, see "[Configuring prebuilds](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)."
{% note %}
**Note**: Prebuilds may be updated several times during a billing month. Newer versions of a prebuild may be larger or smaller than the previous versions. This will affect the storage charges. For details of how storage is calculated during a billing month, see "[Billing for storage usage](#billing-for-storage-usage)" above.
{% endnote %}
#### Cost of codespaces created from prebuilds
Use of codespaces created using prebuilds is charged at the same rate as regular codespaces.
## Setting a spending limit
@@ -72,7 +138,7 @@ For example, a user in an organization can fork a repository within that organiz
## How billing is handled when a repository is transferred
Usage is billed and reported on every hour. As such, you pay for any usage when a repository is within your organization. When a repository is transferred out of your organization, any codespaces in that repository are removed as part of the transfer process.
Usage is calculated every hour. An organization pays for usage of codespaces created from any repository owned by the organization, where the organization settings permit the organization to be billed. For more information, see "[Enabling GitHub Codespaces for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." When a repository is transferred out of your organization, ownership and billing responsibility for any codespaces associated with that repository will change accordingly.
## What happens when users are removed

View File

@@ -11,4 +11,3 @@ children:
- /viewing-your-github-codespaces-usage
- /managing-spending-limits-for-github-codespaces
---

View File

@@ -21,6 +21,8 @@ redirect_from:
{% data reusables.codespaces.codespaces-spending-limit-requirement %}
{% data reusables.codespaces.codespaces-monthly-billing %}
Once you've reached your spending limit, your organization or repository will no longer be able to create new codespaces, and won't be able to start existing codespaces. Any existing codespaces that are still running will not be shutdown; if you don't change the spending limit, you will not be charged for the amount that exceeds the limit.
For more information about pricing for {% data variables.product.prodname_github_codespaces %} usage, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)."
@@ -67,4 +69,4 @@ You can disable these notifications anytime by navigating to the bottom of the *
## Further reading
- "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)"
- "[Managing billing for {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization)"
- "[Managing the cost of {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-the-cost-of-github-codespaces-in-your-organization)"

View File

@@ -21,8 +21,21 @@ Organization owners and billing managers can view {% data variables.product.prod
{% data reusables.organizations.billing-settings %}
1. Under "{% data variables.product.prodname_codespaces %}", view the details of the compute hours and storage used so far this month.
![Details of minute usage](/assets/images/help/billing/codespaces-compute-storage.png)
![Details of minute usage](/assets/images/help/billing/codespaces-compute-storage.png)
You can also see and update your current spending limit. For more information, see "[Managing spending limits for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-github-codespaces)."
{% note %}
**Notes**:
* The costs shown here are the cumulative costs within the current monthly billing period. The metered costs for {% data variables.product.prodname_github_codespaces %} shown on this page are reset to zero at the start of each monthly billing period. Outstanding costs from previous months are not shown.
* The figures on this page are updated every hour.
{% endnote %}
{% data reusables.dotcom_billing.actions-packages-report-download-org-account %}
The data used for this report is updated daily.
1. Filter the report to show only rows that mention "Codespaces" in the `Product` field.
![A usage report filtered for Codespaces](/assets/images/help/codespaces/CSV-usage-report.png)
@@ -38,3 +51,7 @@ Enterprise owners and billing managers can view {% data variables.product.prodna
1. Under "{% data variables.product.prodname_codespaces %} monthly usage", view the usage details of each organization in your enterprise account.
{% data reusables.enterprise-accounts.actions-packages-report-download-enterprise-accounts %}
{% endif %}
## Further reading
- "[Listing the codespaces in your organization](/codespaces/managing-codespaces-for-your-organization/listing-the-codespaces-in-your-organization)"

View File

@@ -14,23 +14,23 @@ shortTitle: Private image registry
A registry is a secure space for storing, managing, and fetching private container images. You may use one to store one or more images. There are many examples of registries, such as {% data variables.product.prodname_container_registry %}, {% data variables.product.prodname_npm_registry %}, Azure Container Registry, or DockerHub.
{% data variables.product.prodname_ghcr_and_npm_registry %} can be configured to allow container images to be pulled seamlessly into {% data variables.product.prodname_github_codespaces %} during codespace creation, without having to provide any authentication credentials. For other image registries, you must create secrets in {% data variables.product.prodname_dotcom %} to store the access details, which will allow {% data variables.product.prodname_github_codespaces %} to access images stored in that registry.
{% data variables.packages.prodname_ghcr_and_npm_registry %} can be configured to allow container images to be pulled seamlessly into {% data variables.product.prodname_github_codespaces %} during codespace creation, without having to provide any authentication credentials. For other image registries, you must create secrets in {% data variables.product.prodname_dotcom %} to store the access details, which will allow {% data variables.product.prodname_github_codespaces %} to access images stored in that registry.
## Accessing images stored in {% data variables.product.prodname_ghcr_and_npm_registry %}
## Accessing images stored in {% data variables.packages.prodname_ghcr_and_npm_registry %}
{% data variables.product.prodname_ghcr_and_npm_registry %} provide the easiest way for {% data variables.product.prodname_github_codespaces %} to consume dev container images.
{% data variables.packages.prodname_ghcr_and_npm_registry %} provide the easiest way for {% data variables.product.prodname_github_codespaces %} to consume dev container images.
For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)" and "[Working with the npm registry](/packages/working-with-a-github-packages-registry/working-with-the-npm-registry)".
### Accessing an image published to the same repository as the codespace
If you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %} in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. You won't have to provide any additional credentials, unless the **Inherit access from repo** option was unselected when the container image was published.
If you publish a container image to {% data variables.packages.prodname_ghcr_or_npm_registry %} in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. You won't have to provide any additional credentials, unless the **Inherit access from repo** option was unselected when the container image was published.
#### Inheriting access from the repository from which an image was published
By default, when you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %}, the image inherits the access setting of the repository from which the image was published. For example, if the repository is public, the image is also public. If the repository is private, the image is also private, but is accessible from the repository.
By default, when you publish a container image to {% data variables.packages.prodname_ghcr_or_npm_registry %}, the image inherits the access setting of the repository from which the image was published. For example, if the repository is public, the image is also public. If the repository is private, the image is also private, but is accessible from the repository.
This behavior is controlled by the **Inherit access from repo** option. **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.product.prodname_ghcr_or_npm_registry %} using a Personal Access Token (PAT).
This behavior is controlled by the **Inherit access from repo** option. **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.packages.prodname_ghcr_or_npm_registry %} using a Personal Access Token (PAT).
If the **Inherit access from repo** option was not selected when the image was published, you can manually add the repository to the published container image's access controls. For more information, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#inheriting-access-for-a-container-image-from-a-repository)."
@@ -46,13 +46,13 @@ If you want to allow a subset of an organization's repositories to access a cont
### Publishing a container image from a codespace
Seamless access from a codespace to {% data variables.product.prodname_ghcr_or_npm_registry %} is limited to pulling container images. If you want to publish a container image from inside a codespace, you must use a personal access token (PAT) with the `write:packages` scope.
Seamless access from a codespace to {% data variables.packages.prodname_ghcr_or_npm_registry %} is limited to pulling container images. If you want to publish a container image from inside a codespace, you must use a personal access token (PAT) with the `write:packages` scope.
We recommend publishing images via {% data variables.product.prodname_actions %}. For more information, see "[Publishing Docker images](/actions/publishing-packages/publishing-docker-images)" and "[Publishing Node.js packages](/actions/publishing-packages/publishing-nodejs-packages)."
## Accessing images stored in other container registries
If you are accessing a container image from a registry that isn't {% data variables.product.prodname_ghcr_or_npm_registry %}, {% data variables.product.prodname_github_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. If these secrets are found, {% data variables.product.prodname_github_codespaces %} will make the registry available inside your codespace.
If you are accessing a container image from a registry that isn't {% data variables.packages.prodname_ghcr_or_npm_registry %}, {% data variables.product.prodname_github_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. If these secrets are found, {% data variables.product.prodname_github_codespaces %} will make the registry available inside your codespace.
- `<*>_CONTAINER_REGISTRY_SERVER`
- `<*>_CONTAINER_REGISTRY_USER`

View File

@@ -6,7 +6,6 @@ versions:
ghec: '*'
product: '{% data reusables.gated-features.codespaces %}'
children:
- /understanding-billing-for-github-codespaces
- /allowing-your-codespace-to-access-a-private-image-registry
- /using-github-copilot-in-github-codespaces
- /using-the-vs-code-command-palette-in-codespaces

View File

@@ -1,63 +0,0 @@
---
title: Understanding billing for GitHub Codespaces
intro: 'Learn how your {% data variables.product.prodname_github_codespaces %} usage is billed.'
versions:
fpt: '*'
ghec: '*'
redirect_from:
- /github/developing-online-with-codespaces/about-billing-for-codespaces
- /codespaces/getting-started-with-codespaces/about-billing-for-codespaces
- /codespaces/codespaces-reference/about-billing-for-codespaces
- /codespaces/codespaces-reference/understanding-billing-for-codespaces
type: reference
topics:
- Codespaces
- Billing
product: '{% data reusables.gated-features.codespaces %}'
shortTitle: Understanding billing
---
This article explains how billing works for your codespaces, and explains how your organization's billing manager can help.
## Getting access to {% data variables.product.prodname_github_codespaces %}
Your organization's administrator might limit {% data variables.product.prodname_github_codespaces %} usage to only specific personal accounts. To get access, you will need to contact your billing manager. For more information, see "[Managing access to other repositories within your codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)."
## How much it costs to use {% data variables.product.prodname_codespaces %}
To see the pricing for {% data variables.product.prodname_github_codespaces %} usage, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces#codespaces-pricing)."
## How your codespace usage is billed
Your codespace is billed for its compute minutes and for the amount of storage it uses on disk.
If you enable prebuilding of codespaces this will incur additional charges. For more information, see "[About {% data variables.product.prodname_github_codespaces %} prebuilds](/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds#about-billing-for-codespaces-prebuilds)."
### Understanding what compute minutes are
Your codespace is billed for the number of minutes that it's active. If your codespaces window is left idle for 30 minutes, it will automatically shutdown, and compute billing for the codespace will end until you start the codespace again.
### Understanding how codespace storage is billed
For {% data variables.product.prodname_github_codespaces %}, storage is defined to include any files relating to your codespace, such as the cloned repository, configuration files, and extensions, among others. This storage is billed while your codespace is shutdown. The storage billing for a codespace ends when you manually delete it from https://github.com/codespaces.
## How spending limits work
Before your organization can use {% data variables.product.prodname_github_codespaces %}, your billing manager will need to set a spending limit. For more information, see "[Managing spending limits for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-github-codespaces)."
## Exporting changes when you have reached your spending limit
{% data reusables.codespaces.exporting-changes %}
## Checking your current usage and limits
If you need to check your current usage or spending limit, contact your organization's billing manager. For more information, see "[Viewing your {% data variables.product.prodname_github_codespaces %} usage](/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage)."
## Codespaces can be automatically deleted
Your codespace will be automatically deleted when you are removed from an organization or repository.
## Deleting your unused codespaces
You can manually delete your codespaces in https://github.com/codespaces and from within {% data variables.product.prodname_vscode %}. To reduce the size of a codespace, you can manually delete files using the terminal or from within {% data variables.product.prodname_vscode %}.
## Further reading
- "[Managing billing for {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization)"

View File

@@ -71,7 +71,7 @@ If you try to delete a codespace with unpushed git commits, your editor will not
Codespaces that have been stopped and remain inactive for a specified period of time will be deleted automatically. By default, inactive codespaces are deleted after 30 days, but you can customize your codespace retention period. For more information, see "[Configuring automatic deletion of your codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)."
You will be charged for the storage of all your codespaces. When you delete a codespace, you will no longer be charged.
If you create a codespace, it will continue to accrue storage charges until it is deleted, irrespective of whether it is active or stopped. For more information, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#billing-for-storage-usage)." Deleting a codespace does not reduce the current billable amount for {% data variables.product.prodname_github_codespaces %}, which accumulates during each monthly billing cycle. For more information, see "[Viewing your {% data variables.product.prodname_github_codespaces %} usage](/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage)."
For more information on deleting a codespace, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace)."

View File

@@ -11,12 +11,12 @@ children:
- /codespaces-lifecycle
- /developing-in-a-codespace
- /creating-a-codespace
- /deleting-a-codespace
- /opening-an-existing-codespace
- /using-source-control-in-your-codespace
- /using-github-codespaces-for-pull-requests
- /stopping-and-starting-a-codespace
- /renaming-a-codespace
- /deleting-a-codespace
- /forwarding-ports-in-your-codespace
- /default-environment-variables-for-your-codespace
- /connecting-to-a-private-network

View File

@@ -117,6 +117,6 @@ If you already use {% data variables.product.prodname_vscode_shortname %}, you c
## Further reading
- "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)"
- "[Managing billing for {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization)"
- "[Managing the cost of {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-the-cost-of-github-codespaces-in-your-organization)"
- "[Add a dev container configuration to your repository](/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces)"
- "[Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle)"

View File

@@ -111,4 +111,4 @@ You've successfully created, personalized, and run your first application within
## Further reading
- "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)"
- "[Managing billing for {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization)"
- "[Managing the cost of {% data variables.product.prodname_github_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-the-cost-of-github-codespaces-in-your-organization)"

View File

@@ -19,7 +19,7 @@ topics:
## About enabling {% data variables.product.prodname_github_codespaces %} for your organization
Organization owners can control which users in your organization can create and use codespaces at the organization's expense.
Organization owners can control which users in your organization can create and use codespaces at the organization's expense. For information about pricing, see "[About billing for GitHub Codespaces](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)."
Only people who can clone a repository can create a codespace for that repository. To allow people to create codespaces for repositories owned by your organization, you must:

View File

@@ -12,7 +12,7 @@ topics:
children:
- /enabling-github-codespaces-for-your-organization
- /listing-the-codespaces-in-your-organization
- /managing-billing-for-github-codespaces-in-your-organization
- /managing-the-cost-of-github-codespaces-in-your-organization
- /managing-encrypted-secrets-for-your-repository-and-organization-for-github-codespaces
- /managing-repository-access-for-your-organizations-codespaces
- /reviewing-your-organizations-audit-logs-for-github-codespaces

View File

@@ -15,10 +15,12 @@ topics:
## Overview
As an organization owner, you can list all of the currently active and stopped codespaces for your organization. You might want to do this to check how many codespaces users are creating, to make sure they aren't incurring unnecessary costs.
As an organization owner, you can list all of the currently active and stopped codespaces for your organization. You might want to do this to check how many codespaces users are creating, to make sure they aren't incurring unnecessary costs. For information about pricing, see "[About billing for GitHub Codespaces](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)."
The easiest way to list the codespaces for an organization is by using {% data variables.product.prodname_cli %}. You can also use the REST API, which provides more information about each codespace.
For information on how to see the current total {% data variables.product.prodname_codespaces %} usage for your organization or enterprise, and generate a detailed report, see "[Viewing your {% data variables.product.prodname_github_codespaces %} usage](/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage)."
### Using {% data variables.product.prodname_cli %} to list codespaces
To list all of the current codespaces for a specified organization, use the following command.

View File

@@ -1,62 +0,0 @@
---
title: Managing billing for GitHub Codespaces in your organization
shortTitle: Manage billing
intro: 'You can check your {% data variables.product.prodname_github_codespaces %} usage and set usage limits.'
product: '{% data reusables.gated-features.codespaces %}'
permissions: 'To manage billing for {% data variables.product.prodname_github_codespaces %} for an organization, you must be an organization owner or a billing manager.'
versions:
fpt: '*'
ghec: '*'
type: reference
topics:
- Codespaces
- Billing
redirect_from:
- /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization
---
## Overview
To learn about pricing for {% data variables.product.prodname_github_codespaces %}, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#codespaces-pricing)."
{% data reusables.codespaces.codespaces-billing %}
- As an organization owner or a billing manager, you can manage {% data variables.product.prodname_github_codespaces %} billing for your organization: ["About billing for Codespaces"](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)
- As an organization owner, you can list the currently active and stopped codespaces for your organization. In addition to these codespaces, costs for the current month may include costs for codespaces that existed earlier in the current month but have since been deleted.
- For users, there is a guide that explains how billing works: ["Understanding billing for {% data variables.product.prodname_github_codespaces %}"](/codespaces/codespaces-reference/understanding-billing-for-github-codespaces)
## Usage limits
You can set a usage limit for the codespaces in your organization or repository. This limit is applied to the compute and storage usage for {% data variables.product.prodname_github_codespaces %}:
- **Compute minutes:** Compute usage is calculated by the actual number of minutes used by all {% data variables.product.prodname_github_codespaces %} instances while they are active. These totals are reported to the billing service daily, and is billed monthly. You can set a spending limit for {% data variables.product.prodname_github_codespaces %} usage in your organization. For more information, see "[Managing spending limits for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-github-codespaces)."
- **Storage usage:** For {% data variables.product.prodname_github_codespaces %} billing purposes, this includes all storage used by all codespaces in your account. This includes resources such as cloned repositories, configuration files, and extensions, among others. These totals are reported to the billing service daily, and is billed monthly. At the end of the month, {% data variables.product.prodname_dotcom %} rounds your storage to the nearest MB. To check how many compute minutes and storage GB have been used by {% data variables.product.prodname_github_codespaces %}, see "[Viewing your {% data variables.product.prodname_github_codespaces %} usage"](/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage)."
## Disabling or limiting {% data variables.product.prodname_codespaces %}
You can disable all use of {% data variables.product.prodname_github_codespaces %} that would be billed to your organization. Alternatively, you can specify which organization members or collaborators can use {% data variables.product.prodname_codespaces %} at your organization's expense. For more information, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)."
{% data reusables.codespaces.codespaces-disabling-org-billing %}
You can configure which repositories can be accessed from codespaces created for a particular repository. For more information, see "[Managing access to other repositories within your codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)."
You can limit the choice of types of machine that are available for codespaces created from repositories owned by your organization. This allows you to prevent people using overly resourced machines for their codespaces, and incurring unnecessary charges. For more information, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)."
You can also restrict how long a codespace can remain unused before it is automatically deleted. This can help to reduce storage costs for {% data variables.product.prodname_codespaces %}. For more information, see "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)."
## Deleting unused codespaces
Your users can delete their own codespaces in https://github.com/codespaces and from within {% data variables.product.prodname_vscode %}. To reduce the size of a codespace, users can manually delete files using the terminal or from within {% data variables.product.prodname_vscode_shortname %}.
As an organization owner, you can delete any codespace in your organization. For more information, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace#deleting-codespaces-in-your-organization)."
{% note %}
**Note:** Codespaces are automatically deleted after they have been stopped and have remained inactive for a defined number of days. For more information, see "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." A codespace can only be manually deleted by the person who created the codespace.
{% endnote %}
## Further reading
- "[Listing the codespaces in your organization](/codespaces/managing-codespaces-for-your-organization/listing-the-codespaces-in-your-organization)"

View File

@@ -0,0 +1,71 @@
---
title: Managing the cost of GitHub Codespaces in your organization
shortTitle: Manage Codespaces costs
intro: 'You can check your {% data variables.product.prodname_github_codespaces %} usage and set usage limits.'
product: '{% data reusables.gated-features.codespaces %}'
permissions: 'To manage billing for {% data variables.product.prodname_github_codespaces %} for an organization, you must be an organization owner or a billing manager.'
versions:
fpt: '*'
ghec: '*'
type: reference
topics:
- Codespaces
- Billing
redirect_from:
- /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization
- /codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization
---
## Overview
Your organization is billed according to its compute and storage usage for {% data variables.product.prodname_github_codespaces %}. This article explains the ways in which you, as an organization owner, can manage these costs.
To learn about pricing for {% data variables.product.prodname_github_codespaces %}, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#codespaces-pricing)."
## Spending limits
You can set a spending limit for {% data variables.product.prodname_github_codespaces %} for your organization. This limit is applied to the total compute and storage cost for {% data variables.product.prodname_github_codespaces %}. For more information, see "[Managing spending limits for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-github-codespaces)."
- **Compute usage:** This is the total time during which all {% data variables.product.prodname_github_codespaces %} instances ("codespaces") were active in a billing month.
- **Storage usage:** For {% data variables.product.prodname_github_codespaces %} billing purposes, this includes all files used by all codespaces and prebuilds in your account. This includes resources such as cloned repositories, configuration files, and extensions, among others.
You can check the compute and storage usage for {% data variables.product.prodname_github_codespaces %} for the current billing month. For information, see "[Viewing your {% data variables.product.prodname_github_codespaces %} usage"](/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage)."
{% note %}
**Note**: Prebuilds for {% data variables.product.prodname_github_codespaces %} are created and updated using {% data variables.product.prodname_actions %}. This may incur billable costs for {% data variables.product.prodname_actions %}. You can set a spending limit for {% data variables.product.prodname_actions %}. For more information, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#billing-for-codespaces-prebuilds)" and "[Managing your spending limit for GitHub Actions](/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions)." Storage of the generated prebuilds is charged at the same rate as your codespaces, and is included in your {% data variables.product.prodname_github_codespaces %} spending limit.
{% endnote %}
## Disabling or limiting {% data variables.product.prodname_codespaces %}
You can disable all use of {% data variables.product.prodname_github_codespaces %} that would be billed to your organization. Alternatively, you can specify which organization members or collaborators can use {% data variables.product.prodname_codespaces %} at your organization's expense. For more information, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)."
{% data reusables.codespaces.codespaces-disabling-org-billing %}
You can configure which repositories can be accessed from codespaces created for a particular repository. For more information, see "[Managing access to other repositories within your codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)."
You can limit the choice of types of machine that are available for codespaces created from repositories owned by your organization. This allows you to prevent people using overly resourced machines for their codespaces, and incurring unnecessary charges. For more information, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)."
You can set a maximum idle timeout constraint to limit the maximum timeout that people can set for codespaces that are billable to your organization. This can reduce the compute usage charges generated by codespaces that are left running in an idle state, by stopping active codespace after a shorter timeout period. For more information, see "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)."
You can also restrict how long stopped codespaces can remain unused before they are automatically deleted. This can help to reduce storage costs for {% data variables.product.prodname_codespaces %}. For more information, see "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)."
Repository owners who set up prebuilds for their repository can reduce the storage costs of prebuilds by configuring these to be created only in selected regions. For more information, see "[Configuring prebuilds](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)."
## Deleting unused codespaces
Your users can delete their own codespaces in https://github.com/codespaces and from within {% data variables.product.prodname_vscode %}. To reduce the size of a codespace, users can manually delete files using the terminal or from within {% data variables.product.prodname_vscode_shortname %}.
As an organization owner, you can delete any codespace in your organization. For more information, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace#deleting-codespaces-in-your-organization)."
{% note %}
**Note:** Codespaces are automatically deleted after they have been stopped and have remained inactive for a user-definable number of days. For more information, see "[Configuring automatic deletion of your codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)." As an organization owner, you can set the maximum retention period for codespaces owned by your organization. This will override a user's personal retention setting. For more information, see "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)."
{% endnote %}
## Further reading
- "[Listing the codespaces in your organization](/codespaces/managing-codespaces-for-your-organization/listing-the-codespaces-in-your-organization)"

View File

@@ -40,6 +40,8 @@ You can also personalize aspects of your codespace environment by using a public
For information on pricing, storage, and usage for {% data variables.product.prodname_github_codespaces %}, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)."
{% data reusables.codespaces.codespaces-spending-limit-requirement %} For information on how organizations owners and billing managers can manage the spending limit for {% data variables.product.prodname_github_codespaces %} for an organization, see "[Managing spending limits for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-github-codespaces)."
{% data reusables.codespaces.codespaces-spending-limit-requirement %}
{% data reusables.codespaces.codespaces-monthly-billing %} For information on how organizations owners and billing managers can manage the spending limit for {% data variables.product.prodname_github_codespaces %} for an organization, see "[Managing spending limits for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-github-codespaces)."
You can see who will pay for a codespace before you create it. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)."

View File

@@ -14,7 +14,9 @@ redirect_from:
## Overview
Prebuilding your codespaces allows you to be more productive and access your codespace faster, particularly if your repository is large or complex and new codespaces currently take more than 2 minutes to start. This is because any source code, editor extensions, project dependencies, commands, and configurations have already been downloaded, installed, and applied before you create a codespace for your project. Think of a prebuild as a "ready-to-go" template for a codespace.
{% data reusables.codespaces.prebuilds-definition %}
If it currently takes more than 2 minutes to create a codespace for a repository, you are likely to benefit from using prebuilds. This is because, with a prebuild, any source code, editor extensions, project dependencies, commands, and configurations have already been downloaded, installed, and applied before you create a codespace.
By default, whenever you push changes to your repository, {% data variables.product.prodname_github_codespaces %} uses {% data variables.product.prodname_actions %} to automatically update your prebuilds.
@@ -28,16 +30,10 @@ To create a prebuild you set up a prebuild configuration. When you save the conf
When a prebuild configuration workflow runs, {% data variables.product.prodname_dotcom %} creates a temporary codespace, performing setup operations up to and including any `onCreateCommand` and `updateContentCommand` commands in the `devcontainer.json` file. No `postCreateCommand` commands are run during the creation of a prebuild. For more information about these commands, see the [`devcontainer.json` reference](https://code.visualstudio.com/docs/remote/devcontainerjson-reference#_devcontainerjson-properties) in the {% data variables.product.prodname_vscode_shortname %} documentation. A snapshot of the generated container is then taken and stored.
As with other Actions workflows, running a prebuild configuration workflow will either consume some of the Actions minutes included with your account, if you have any, or it will incur charges for Actions minutes. Storage of codespace prebuilds is billed in the same way as storage of active or stopped codespaces. For more information, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#billing-for-codespaces-prebuilds)."
When you create a codespace from a prebuild, {% data variables.product.prodname_dotcom %} downloads the existing container snapshot from storage and deploys it on a fresh virtual machine, completing the remaining commands specified in the dev container configuration. Since many operations have already been performed, such as cloning the repository, creating a codespace from a prebuild can be substantially quicker than creating one without a prebuild. This is true where the repository is large and/or `onCreateCommand` commands take a long time to run.
## About billing for {% data variables.product.prodname_codespaces %} prebuilds
{% data reusables.codespaces.billing-for-prebuilds-default %} For details of {% data variables.product.prodname_github_codespaces %} storage pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)."
{% data reusables.codespaces.billing-for-prebuilds-reducing %}
Use of codespaces created using prebuilds is charged at the same rate as regular codespaces.
## About pushing changes to prebuild-enabled branches
By default, each push to a branch that has a prebuild configuration results in a {% data variables.product.prodname_dotcom %}-managed Actions workflow run to update the prebuild. The prebuild workflow has a concurrency limit of one workflow run at a time for a given prebuild configuration, unless changes were made that affect the dev container configuration for the associated repository. For more information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers)." If a run is already in progress, the workflow run that was queued most recently queued will run next, after the current run completes.

View File

@@ -61,7 +61,7 @@ Before you can configure prebuilds for your project the following must be true:
{% note %}
**Notes**:
* The prebuild for each region will incur individual charges. You should, therefore, only enable prebuilds for regions in which you know they'll be used. For more information, see "[About {% data variables.product.prodname_github_codespaces %} prebuilds](/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds#about-billing-for-codespaces-prebuilds)."
* The prebuild for each region will incur individual charges. You should, therefore, only enable prebuilds for regions in which you know they'll be used. For more information, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#billing-for-codespaces-prebuilds)."
* Developers can set their default region for {% data variables.product.prodname_github_codespaces %}, which can allow you to enable prebuilds for fewer regions. For more information, see "[Setting your default region for {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-region-for-github-codespaces)."
{% endnote %}

View File

@@ -299,9 +299,9 @@ subdirectory of the callback URL.
BAD: http://oauth.example.com:8080/path
BAD: http://example.org
### Localhost redirect urls
### Loopback redirect urls
The optional `redirect_uri` parameter can also be used for localhost URLs. If the application specifies a localhost URL and a port, then after authorizing the application users will be redirected to the provided URL and port. The `redirect_uri` does not need to match the port specified in the callback url for the app.
The optional `redirect_uri` parameter can also be used for loopback URLs. If the application specifies a loopback URL and a port, then after authorizing the application users will be redirected to the provided URL and port. The `redirect_uri` does not need to match the port specified in the callback URL for the app.
For the `http://127.0.0.1/path` callback URL, you can use this `redirect_uri`:
@@ -309,6 +309,8 @@ For the `http://127.0.0.1/path` callback URL, you can use this `redirect_uri`:
http://127.0.0.1:1234/path
```
Note that OAuth RFC [recommends not to use `localhost`](https://datatracker.ietf.org/doc/html/rfc8252#section-7.3), but instead to use loopback literal `127.0.0.1` or IPv6 `::1`.
## Creating multiple tokens for OAuth Apps
You can create multiple tokens for a user/application/scope combination to create tokens for specific use cases.

View File

@@ -155,9 +155,11 @@ $ ssh-add YOUR-KEY
On macOS, `ssh-agent` will "forget" this key, once it gets restarted during reboots. But you can import your SSH keys into Keychain using this command:
```shell
$ ssh-add -K YOUR-KEY
$ ssh-add --apple-use-keychain YOUR-KEY
```
For MacOS versions prior to Monterey (12.0), use `-K` instead of `--apple-use-keychain`. For more information, see "[Adding your SSH key to the ssh-agent](/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#adding-your-ssh-key-to-the-ssh-agent)."
{% endtip %}
[tech-tips]: http://www.unixwiz.net/techtips/ssh-agent-forwarding.html

View File

@@ -26,14 +26,14 @@ The {% data variables.product.prodname_registry %} registries below **only** use
- Apache Maven registry
- NuGet registry
{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %}
{% ifversion packages-npm-v2 %}For {% data variables.packages.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %}
{% ifversion fpt or ghec %}
## Granular permissions for user/organization-scoped packages
Packages with granular permissions are scoped to a personal user or organization account. You can change the access control and visibility of the package separately from a repository that is connected (or linked) to a package.
Currently, the {% data variables.product.prodname_ghcr_and_npm_registry %} offer granular permissions for your container image packages.
Currently, the {% data variables.packages.prodname_ghcr_and_npm_registry %} offer granular permissions for your container image packages.
## Visibility and access permissions for container images

View File

@@ -15,7 +15,7 @@ shortTitle: Access control & visibility
Packages with granular permissions are scoped to a personal user or organization account. You can change the access control and visibility of a package separately from the repository that it is connected (or linked) to.
Currently, you can only use granular permissions with the {% data variables.product.prodname_ghcr_and_npm_registry %}. Granular permissions are not supported in our other package registries, such as the RubyGems registry.{% ifversion docker-ghcr-enterprise-migration %} For more information about migration to the {% data variables.product.prodname_container_registry %}, see "[Migrating to the {% data variables.product.prodname_container_registry %} from the Docker registry](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)."{% endif %}
Currently, you can only use granular permissions with the {% data variables.packages.prodname_ghcr_and_npm_registry %}. Granular permissions are not supported in our other package registries, such as the RubyGems registry.{% ifversion docker-ghcr-enterprise-migration %} For more information about migration to the {% data variables.product.prodname_container_registry %}, see "[Migrating to the {% data variables.product.prodname_container_registry %} from the Docker registry](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)."{% endif %}
For more information about permissions for repository-scoped packages, packages-related scopes for PATs, or managing permissions for your actions workflows, see "[About permissions for GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages)."
@@ -105,7 +105,7 @@ To further customize access to your container image, see "[Configuring access to
{% ifversion fpt or ghec %}
## Ensuring {% data variables.product.prodname_github_codespaces %} access to your package
By default, a codespace can seamlessly access certain packages in the {% data variables.product.prodname_ghcr_and_npm_registry %}, such as those published in the same repository with the **Inherit access** option selected. For more information on which access is automatically configured, see "[Allowing your codespace to access a private image registry](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-container-registry-and-npm-registry)."
By default, a codespace can seamlessly access certain packages in the {% data variables.packages.prodname_ghcr_and_npm_registry %}, such as those published in the same repository with the **Inherit access** option selected. For more information on which access is automatically configured, see "[Allowing your codespace to access a private image registry](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-container-registry-and-npm-registry)."
Otherwise, to ensure that a codespace has access to your package, you must grant access to the repository where the codespace is being launched.

View File

@@ -62,7 +62,7 @@ The {% data variables.product.prodname_registry %} registries below **only** use
- Apache Maven registry
- NuGet registry
{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %}
{% ifversion packages-npm-v2 %}For {% data variables.packages.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %}
{% ifversion fpt or ghec %}

View File

@@ -51,7 +51,7 @@ For more information about the configuration of {% data variables.product.prodna
| | |
|--------------------|--------------------|
| Permissions | {% ifversion fpt or ghec %}The permissions for a package are either inherited from the repository where the package is hosted or, for packages in the {% data variables.product.prodname_ghcr_and_npm_registry %}, they can be defined for specific user or organization accounts. For more information, see "[Configuring a packages access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." {% else %}Each package inherits the permissions of the repository where the package is hosted. <br> <br> For example, anyone with read permissions for a repository can install a package as a dependency in a project, and anyone with write permissions can publish a new package version.{% endif %} |
| Permissions | {% ifversion fpt or ghec %}The permissions for a package are either inherited from the repository where the package is hosted or, for packages in the {% data variables.packages.prodname_ghcr_and_npm_registry %}, they can be defined for specific user or organization accounts. For more information, see "[Configuring a packages access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." {% else %}Each package inherits the permissions of the repository where the package is hosted. <br> <br> For example, anyone with read permissions for a repository can install a package as a dependency in a project, and anyone with write permissions can publish a new package version.{% endif %} |
| Visibility | {% data reusables.package_registry.public-or-private-packages %} |
For more information, see "[About permissions for {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)."

View File

@@ -31,7 +31,7 @@ Repository-scoped packages inherit their permissions and visibility from the rep
- NuGet registry
{% ifversion fpt or ghec %}
The {% data variables.product.prodname_ghcr_and_npm_registry %} offer you the option of granular permissions and visibility settings that can be customized for each package owned by a personal user or organization account. You can choose to use granular permissions or connect the package to a repository and inherit it's permissions. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)."
The {% data variables.packages.prodname_ghcr_and_npm_registry %} offer you the option of granular permissions and visibility settings that can be customized for each package owned by a personal user or organization account. You can choose to use granular permissions or connect the package to a repository and inherit it's permissions. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)."
{% endif %}
For more information, see "[About permissions for GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages){% ifversion fpt or ghec %}" and "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility){% endif %}."

View File

@@ -24,7 +24,7 @@ shortTitle: Publish & install with Actions
You can extend the CI and CD capabilities of your repository by publishing or installing packages as part of your workflow.
{% ifversion fpt or ghec %}
### Authenticating to the {% data variables.product.prodname_ghcr_and_npm_registry %}
### Authenticating to the {% data variables.packages.prodname_ghcr_and_npm_registry %}
{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %}
@@ -40,7 +40,7 @@ You can reference the `GITHUB_TOKEN` in your workflow file using the {% raw %}`{
{% note %}
**Note:** Some registries, such as RubyGems, {% ifversion packages-npm-v2 %}{% else %}npm, {% endif %}Apache Maven, NuGet, {% ifversion fpt or ghec %}and Gradle{% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`{% endif %}, only allow repository-owned packages. With {% data variables.product.prodname_ghcr_and_npm_registry_full %} you can choose to allow packages to be owned by a user, an organization, or linked to a repository.
**Note:** Some registries, such as RubyGems, {% ifversion packages-npm-v2 %}{% else %}npm, {% endif %}Apache Maven, NuGet, {% ifversion fpt or ghec %}and Gradle{% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`{% endif %}, only allow repository-owned packages. With {% data variables.packages.prodname_ghcr_and_npm_registry_full %} you can choose to allow packages to be owned by a user, an organization, or linked to a repository.
{% endnote %}
@@ -49,11 +49,11 @@ When you enable GitHub Actions, GitHub installs a GitHub App on your repository.
{% data variables.product.prodname_registry %} allows you to push and pull packages through the `GITHUB_TOKEN` available to a {% data variables.product.prodname_actions %} workflow.
{% ifversion fpt or ghec %}
## About permissions and package access for {% data variables.product.prodname_ghcr_and_npm_registry %}
## About permissions and package access for {% data variables.packages.prodname_ghcr_and_npm_registry %}
The {% data variables.product.prodname_ghcr_and_npm_registry_full %} allows users to create and administer packages as free-standing resources at the organization level. Packages can be owned by an organization or personal account and you can customize access to each of your packages separately from repository permissions.
The {% data variables.packages.prodname_ghcr_and_npm_registry_full %} allows users to create and administer packages as free-standing resources at the organization level. Packages can be owned by an organization or personal account and you can customize access to each of your packages separately from repository permissions.
All workflows accessing the {% data variables.product.prodname_ghcr_and_npm_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)."
All workflows accessing the {% data variables.packages.prodname_ghcr_and_npm_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)."
## Default permissions and access settings for containers modified through workflows
@@ -486,7 +486,7 @@ Installing packages hosted by {% data variables.product.prodname_registry %} thr
{% ifversion fpt or ghec %}
## Upgrading a workflow that accesses a registry using a PAT
The {% data variables.product.prodname_ghcr_and_npm_registry %} support the `GITHUB_TOKEN` for easy and secure authentication in your workflows. If your workflow is using a personal access token (PAT) to authenticate to the registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`.
The {% data variables.packages.prodname_ghcr_and_npm_registry %} support the `GITHUB_TOKEN` for easy and secure authentication in your workflows. If your workflow is using a personal access token (PAT) to authenticate to the registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`.
For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)."

View File

@@ -126,7 +126,7 @@ Customers use of the Products must not violate any applicable laws, including
Customers use of the Service must comply with [GitHub's Acceptable Use Policies](/articles/github-acceptable-use-policies) and [GitHubs Community Guidelines](/articles/github-community-guidelines). Customer must not use the Service in any jurisdiction for unlawful, obscene, offensive or fraudulent Content or activity, such as advocating or causing harm, interfering with or violating the integrity or security of a network or system, evading filters, sending unsolicited, abusive, or deceptive messages, viruses or harmful code, or violating third party rights.
### 3. Privacy
The [GitHub Privacy Statement](/articles/github-privacy-statement) and the [GitHub Data Protection Agreement](/github/site-policy/github-data-protection-agreement-non-enterprise-customers) provide detailed notice of GitHub's privacy and data use practices as well as GitHub's processing and security obligations with respect to Customer Personal Data. Any person, entity, or service collecting data from the Service must comply with the GitHub Privacy Statement, particularly in regards to the collection of Users' Personal Information (as defined in the GitHub Privacy Statement). If Customer collects any personal information from GitHub, Customer will only use it for the purpose for which the External User has authorized it. Customer will reasonably secure any such Personal Information, and Customer will respond promptly to complaints, removal requests, and "do not contact" requests from GitHub or External Users.
The [GitHub Privacy Statement](/articles/github-privacy-statement) and the [GitHub Data Protection Agreement](https://github.com/customer-terms) provide detailed notice of GitHub's privacy and data use practices as well as GitHub's processing and security obligations with respect to Customer Personal Data. Any person, entity, or service collecting data from the Service must comply with the GitHub Privacy Statement, particularly in regards to the collection of personal data (as defined in the GitHub Privacy Statement). If Customer collects any personal information from GitHub, Customer will only use it for the purpose for which the External User has authorized it. Customer will reasonably secure any such Personal Information, and Customer will respond promptly to complaints, removal requests, and "do not contact" requests from GitHub or External Users.
## D. Content Responsibility; Ownership; License Rights

View File

@@ -8,9 +8,14 @@ topics:
children:
- /github-privacy-statement
- /global-privacy-practices
- /github-data-protection-agreement
- /github-subprocessors-and-cookies
- /github-codespaces-privacy-statement
- /github-candidate-privacy-policy
redirect_from:
- /github/site-policy/github-data-protection-addendum
- /github/site-policy-deprecated/github-data-protection-addendum
- /github/site-policy/github-data-protection-agreement-non-enterprise-customers
- /site-policy/privacy-policies/github-data-protection-agreement
---

View File

@@ -283,7 +283,7 @@ Customers use of the Service must not violate any applicable laws, including
Customers use of the Service must comply with [GitHub's Acceptable Use Policies](/articles/github-acceptable-use-policies) and [GitHubs Community Guidelines](/articles/github-community-guidelines). Customer must not use the Service in any jurisdiction for unlawful, obscene, offensive or fraudulent Content or activity, such as advocating or causing harm, interfering with or violating the integrity or security of a network or system, evading filters, sending unsolicited, abusive, or deceptive messages, viruses or harmful code, or violating third party rights.
#### 3.2.3 Privacy.
[The GitHub Privacy Statement](/articles/github-privacy-statement) and the [GitHub Data Protection Addendum](/github/site-policy/github-data-protection-addendum) provide detailed notice of GitHub's privacy and data use practices as well as GitHub's processing and security obligations with respect to Customer Personal Data. Any person, entity, or service collecting data from the Service must comply with the [GitHub Privacy Statement](/articles/github-privacy-statement), particularly in regards to the collection of Users' Personal Information (as defined in the GitHub Privacy Statement). If Customer collects any User Personal Information from GitHub, Customer will only use it for the purpose for which the External User has authorized it. Customer will reasonably secure any such Personal Information, and Customer will respond promptly to complaints, removal requests, and "do not contact" requests from GitHub or External Users.
[The GitHub Privacy Statement](/articles/github-privacy-statement) and the [GitHub Data Protection Addendum](https://github.com/customer-terms) provide detailed notice of GitHub's privacy and data use practices as well as GitHub's processing and security obligations with respect to Customer Personal Data. Any person, entity, or service collecting data from the Service must comply with the [GitHub Privacy Statement](/articles/github-privacy-statement), particularly in regards to the collection of Users' Personal Information (as defined in the GitHub Privacy Statement). If Customer collects any User Personal Information from GitHub, Customer will only use it for the purpose for which the External User has authorized it. Customer will reasonably secure any such Personal Information, and Customer will respond promptly to complaints, removal requests, and "do not contact" requests from GitHub or External Users.
### 3.3 Content Responsibility; Ownership; License Rights.

View File

@@ -125,7 +125,7 @@ Customers use of the Service must not violate any applicable laws, including
Customers use of the Service must comply with [GitHub's Acceptable Use Policies](/github/site-policy/github-acceptable-use-policies) and [GitHubs Community Guidelines](/github/site-policy/github-community-guidelines). Customer must not use the Service in any jurisdiction for unlawful, obscene, offensive or fraudulent Content or activity, such as advocating or causing harm, interfering with or violating the integrity or security of a network or system, evading filters, sending unsolicited, abusive, or deceptive messages, viruses or harmful code, or violating third party rights.
#### 2.2.3 Privacy.
[The GitHub Privacy Statement](/github/site-policy/github-privacy-statement) and the [GitHub Data Protection Addendum](/github/site-policy/github-data-protection-addendum) provide detailed notice of GitHub's privacy and data use practices as well as GitHub's processing and security obligations with respect to Customer Personal Data. Any person, entity, or service collecting data from the Service must comply with the [GitHub Privacy Statement](/github/site-policy/github-privacy-statement), particularly in regards to the collection of Users' Personal Information (as defined in the GitHub Privacy Statement). If Customer collects any User Personal Information from GitHub, Customer will only use it for the purpose for which the External User has authorized it. Customer will reasonably secure any such Personal Information, and Customer will respond promptly to complaints, removal requests, and "do not contact" requests from GitHub or External Users.
[The GitHub Privacy Statement](/github/site-policy/github-privacy-statement) and the [GitHub Data Protection Addendum](https://github.com/customer-terms) provide detailed notice of GitHub's privacy and data use practices as well as GitHub's processing and security obligations with respect to Customer Personal Data. Any person, entity, or service collecting data from the Service must comply with the [GitHub Privacy Statement](/github/site-policy/github-privacy-statement), particularly in regards to the collection of Users' Personal Information (as defined in the GitHub Privacy Statement). If Customer collects any User Personal Information from GitHub, Customer will only use it for the purpose for which the External User has authorized it. Customer will reasonably secure any such Personal Information, and Customer will respond promptly to complaints, removal requests, and "do not contact" requests from GitHub or External Users.
### 2.3 Content Responsibility; Ownership; License Rights.

View File

@@ -244,6 +244,7 @@ Introduce links consistently using a standard format that clearly indicates wher
For links to other articles in the GitHub docs: `For more information, see "[Page or article title]()."`
For links to another section in the same article: `For more information, see "[Header text]()."`
For links to specific sections in other articles in the GitHub docs: `For more information, see "[Article title]()."`
For links to an article with a specific tool selected: `For more information, see the TOOLNAME documentation in "[ARTICLE TITLE](/PATH/TO/ARTICLE?tool=TOOLNAME).`
For links to external documentation: `For more information, see [Page or article title]() in the X documentation.`
Do not include quotation marks within a hyperlink.
@@ -283,6 +284,12 @@ To link to a specific header in the same article, use this format:
To link to a specific header in a different article, use this format:
> For more information, see "[ARTICLE TITLE](path-to-article#HEADER-TITLE)."
### Links to a specific tool
When we link to content with a specific tool selected, we want to make sure that someone knows that they will be looking at content relevant to a specific tool even if they do not view the tool switcher tabs in the article.
> For more information, see the TOOLNAME documentation in "[ARTICLE TITLE](/PATH/TO/ARTICLE?tool=TOOLNAME).
### Links to learning paths
Use this format to link to a learning path.

View File

@@ -21,9 +21,9 @@ Do not use the tool switcher just to show examples in different languages. Only
### How to use tool tags
Tool tags are Liquid tags that wrap content specific to a tool. For more information on using tool tags in an article, see the [content markup reference](./content-markup-reference.md#tool-tags).
Only include a maximum of eight different tools in an article. Including more tools causes the tool switcher tabs to overflow with an article's table of contents, which prevents people from using either the tool switcher or table of contents. It is unlikely that you will ever need to include eight separate tools in an article. In general, plan to use as few separate tools as possible in an article.
Put tools in alphabetical order. By default, the first tool tag will be selected for an article. You can define a different default tool for an article in the article's frontmatter. For more information, see the [content README](../content/README.md#defaulttool). You can also link to an article with a specific tool selected by adding `?tool=TOOLNAME` to the end of the link. For more information, see the [content style guide](./content-style-guide.md#links-to-a-specific-tool).
Tool tags are displayed alphabetically. You can define a default tool for an article in the article's frontmatter. For more information, see the [content README](../content/README.md#defaulttool).
Only include a maximum of eight different tools in an article. Including more tools causes the tool switcher tabs to overflow with an article's table of contents, which prevents people from using either the tool switcher or table of contents. It is unlikely that you will ever need to include eight separate tools in an article. In general, plan to use as few separate tools as possible in an article.
## Adding new tools
If a writer determines that adding a new tool is the only way to accurately document something, they should explain their reasoning in the content planning stage. Whoever reviews content plan should consider if there are any alternative ways to address the documentation need without adding a new tool. If a new tool is the only way to create accurate documentation, the new tool should be added. If there is an alternative content solution that does not add a new tool, that option should be used.

View File

@@ -1,3 +1 @@
We recommend that you only use {% data variables.actions.hosted_runner %}s with private repositories:
- Forks of your repository can potentially run dangerous code on your {% data variables.actions.hosted_runner %} by creating a pull request that executes the code in a workflow.
- You could incur unexpected costs if you allow forked repositories to run jobs on your {% data variables.actions.hosted_runner %}s.
If you are using a Fixed IP range, we recommend that you only use {% data variables.actions.hosted_runner %}s with private repositories. Forks of your repository can potentially run dangerous code on your {% data variables.actions.hosted_runner %} by creating a pull request that executes the code in a workflow.

View File

@@ -1,3 +0,0 @@
By default, a {% data variables.product.prodname_actions %} workflow is triggered every time you create or update a prebuild, or push to a prebuild-enabled branch. As with other workflows, while prebuild workflows are running they will either consume some of the Actions minutes included with your account, if you have any, or they will incur charges for Actions minutes. For more information about pricing for Actions minutes, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)."
Alongside {% data variables.product.prodname_actions %} minutes, you will also be billed for the storage of prebuilds associated with each prebuild configuration for a given repository and region. Storage of prebuilds is billed at the same rate as storage of codespaces.

View File

@@ -1,3 +0,0 @@
To reduce consumption of Actions minutes, you can set a prebuild to be updated only when you make a change to your dev container configuration files, or only on a custom schedule. You can also manage your storage usage by adjusting the number of template versions to be retained for your prebuild configurations. For more information, see "[Configuring prebuilds](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)."
If you are an organization or enterprise owner, you can track usage of prebuild workflows and storage by downloading a {% data variables.product.prodname_actions %} usage report for your organization or enterprise. You can identify workflow runs for prebuilds by filtering the CSV output to only include the workflow called "Create {% data variables.product.prodname_github_codespaces %} Prebuilds." For more information, see "[Viewing your {% data variables.product.prodname_actions %} usage](/billing/managing-billing-for-github-actions/viewing-your-github-actions-usage#viewing-github-actions-usage-for-your-organization)."

View File

@@ -1,9 +0,0 @@
{% data variables.product.prodname_codespaces %} are billed in US dollars (USD) according to their compute and storage usage.
### Calculating compute usage
Compute usage is defined as the total number of uptime minutes for which a {% data variables.product.prodname_github_codespaces %} instance is active. Compute usage is calculated by summing the actual number of minutes used by all codespaces that are billable to the organization or enterprise. These totals are reported to the billing service daily, and are billed monthly.
Uptime is controlled by stopping your codespace, which can be done manually or automatically after a developer specified period of inactivity. For more information, see "[Closing or stopping your codespace](/codespaces/getting-started/deep-dive#closing-or-stopping-your-codespace)".
### Calculating storage usage
For {% data variables.product.prodname_github_codespaces %} billing purposes, this includes all storage used by all codespaces in your account. This includes any files used by the codespaces, such as cloned repositories, configuration files, and extensions, among others. These totals are reported to the billing service daily, and are billed monthly. At the end of the month, {% data variables.product.prodname_dotcom %} rounds your storage to the nearest MB.

View File

@@ -1,5 +1,5 @@
{% note %}
**Note**: If you disable billable codespaces use for your organization, anyone who can create codespaces as an individual user, and can clone a repository in your organization, will still be able to create a codespace for that repository. However, this will not incur any charge for your organization. For information about restricting access to a repository, see "[Managing teams and people with access to your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)."
**Note**: If you disable billable codespaces use for your organization, anyone who can clone a repository in your organization, will still be able to create a codespace for that repository by using their personal account. However, this will not incur any charge for your organization. For information about restricting access to a repository, see "[Managing teams and people with access to your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)."
{% endnote %}

View File

@@ -0,0 +1 @@
Costs for {% data variables.product.prodname_github_codespaces %} are always billed monthly, even if your account is otherwise billed annually.

View File

@@ -5,5 +5,3 @@
{% endnote %}
By default, your organization or enterprise will have a {% data variables.product.prodname_github_codespaces %} spending limit of $0. This prevents new codespaces from being created, or existing codespaces from being opened, if this would incur a billable cost to your organization or enterprise. To allow your users to create codespaces in your organization, set the limit to a value higher than $0.
{% data reusables.billing.overages-billed-monthly %}

View File

@@ -1,11 +1,5 @@
After you connect your account on {% data variables.product.product_location %} to the {% data variables.product.prodname_github_codespaces %} extension, you can create a new codespace. For more information about the {% data variables.product.prodname_github_codespaces %} extension, see the [{% data variables.product.prodname_vs_marketplace_shortname %} marketplace](https://marketplace.visualstudio.com/items?itemName=GitHub.codespaces).
{% note %}
**Note**: Currently, {% data variables.product.prodname_vscode_shortname %} doesn't allow you to choose a dev container configuration when you create a codespace. If you want to choose a specific dev container configuration, use the {% data variables.product.prodname_dotcom %} web interface to create your codespace. For more information, click the **Web browser** tab at the top of this page.
{% endnote %}
{% data reusables.codespaces.click-remote-explorer-icon-vscode %}
2. Click the Add icon: {% octicon "plus" aria-label="The plus icon" %}.

View File

@@ -1 +1 @@
If you hit a spending limit, you will no longer be able to create or resume your codespaces. You can still [export any work in progress changes to a new branch](/codespaces/troubleshooting/exporting-changes-to-a-branch).
If your organization reaches its spending limit, people will no longer be able to create or resume codespaces that are billable to your organization. However, they can still [export any work in progress changes to a new branch](/codespaces/troubleshooting/exporting-changes-to-a-branch).

View File

@@ -0,0 +1 @@
A prebuild assembles the main components of a codespace for a particular combination of repository, branch, and `devcontainer.json` configuration file. It provides a quick way to create a new codespace. For complex and/or large repositories in particular, you can create a new codespace more quickly by using a prebuild.

View File

@@ -1 +0,0 @@
To estimate the costs for consumptive services, you can use the {% data variables.product.prodname_dotcom %} [pricing calculator](https://github.com/pricing/calculator?feature=codespaces).

View File

@@ -0,0 +1,3 @@
prodname_ghcr_and_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %}{% endif %}'
prodname_ghcr_or_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} or {% data variables.product.prodname_npm_registry %}{% endif %}'
prodname_ghcr_and_npm_registry_full: '{% data variables.product.prodname_container_registry %} (`ghcr.io`){% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %} (`npm.pkg.github.com`){% endif %}'

View File

@@ -140,9 +140,6 @@ prodname_container_registries: 'Container registries'
prodname_docker_registry_namespace: '{% ifversion fpt or ghec %}`docker.pkg.github.com`{% elsif ghes or ghae %}<code>docker.<em>HOSTNAME</em></code>{% endif %}'
prodname_container_registry_namespace: '{% ifversion fpt or ghec %}`ghcr.io`{% elsif ghes or ghae %}<code>containers.<em>HOSTNAME</em></code>{% endif %}'
prodname_npm_registry: 'npm registry'
prodname_ghcr_and_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %}{% endif %}'
prodname_ghcr_or_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} or {% data variables.product.prodname_npm_registry %}{% endif %}'
prodname_ghcr_and_npm_registry_full: '{% data variables.product.prodname_container_registry %} (`ghcr.io`){% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %} (`npm.pkg.github.com`){% endif %}'
# GitHub Insights
prodname_insights: 'GitHub Insights'

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c1e316800b0ecb7e0b6c4e22531b6dcc65ea0261d40b18d5df49b5e376019ebc
size 786148
oid sha256:c4b810ba5e9dfac2a18bde3929ecf72beeca793aaa80038fc00f83850293c05a
size 785820

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:710509fe6a709be217ab3d3a0c841225e2c65fd540173a445005de6c099a1e93
size 1630178
oid sha256:22766e741bdf33d0959a74e5cb68f294271aa98f7da51a7137a92cf6af041c0a
size 1637595

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1da730bf21034298ed9c76ea18e90cd3ba4203e7d6c6d2acf90d35d1bffcc5bd
size 1099296
oid sha256:6e5813d7598158689930c0701dd189bde6bb4da4aa9a36bf7fce3b63a5cb30f8
size 1100588

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7789fa5730a66069d43dacb834d66799481e1c5974cee6a402be5dcd7bee5fdf
size 4478847
oid sha256:1ab53e754174a0d9162bfb24e097f82cb83cc09d4864d5783d7dc241dd7e7092
size 4482703

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9c1df3d276c7e3af2f2598e1631376f0692fc3d9acefdba7f5afc46d975753bb
size 746123
oid sha256:b7ebf010bc7c3c5c8a6082102179ddc7ff9ef1f4f5e82d37a33cc5015ce3141c
size 746824

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e5c96370e5a124ca2e005ae03cbfe50ff231e784ba08ad7f959a7cab21ec5803
size 3142521
oid sha256:d6c183854931043e1decb358cb7852de3104fb08594b557d236638070e82739a
size 3149441

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:622a8f897c4f0aca676bab7468aacbf6cbc12c627b7898f23bb8d4fc011318ac
size 827874
oid sha256:d4a8ae260c48370eefa41da4a67380fce01bed5c9e542107a574fa4fca576cfa
size 827403

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8ba3897c4eb7b9882222d2db39de2184e5efc2557cc7cf994b3437f92b18a41a
size 4409958
oid sha256:e59140a1ee9da06b73ad5b93b1a50f43638d8b8876f28102fe1f2996f8a906ff
size 4411380

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eb35d825b812c23d569ae8d21dc490b805d1493a489323b95d1bdfa73209e9dd
size 732723
oid sha256:5d037943a5aca636441fb1fa0623e2eb64560ede01eff015752663af764d4eee
size 733293

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:84776107eefcba41d68db37bf99040c573bc170fb81955fb30a46ef67f28e7fa
size 3120912
oid sha256:850422094c149634f0ca67eac9d916d80ebb0b6c0551b247da3c60381fc68e69
size 3129130

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9a1a4d215db506ff72ef54e9b105fb02df64d4e63a57ae73da2cbfd70f1fbd8b
size 810545
oid sha256:c72b4be3611cd0de641cc10964a784d794b57af23e413a4cb93ecb7064b68385
size 810274

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0e6a20e4ea5227a79691b0f73db72af401d42276012b818684f840a989784d94
size 1685425
oid sha256:651f5531c1c7fc97343dce7e082692196d96fc68aaaea587a680484dc17def38
size 1692427

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:125107e1e60bb1cd23806b8f349f64a3563ff7ae4de733489fb7b13414b2bf2c
size 1135321
oid sha256:5842022974f3e9d90da627da2391271beb8f07ecbaa699a5bff9bf5894361af2
size 1136383

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c86c0b042a5fde7af934fc8297bbd81342c74432dc99392c8c58ded12fdc2120
size 4582821
oid sha256:f9a5093303d9c75b82da67be8ec205b32db91f8a669eed89c5704f1045038d06
size 4587223

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3aae190eb2aa194f8774dba4cc18820f111f0bad2f90ded56788deca270fbee3
size 767737
oid sha256:5275ef1828e8c9dd2a6b40bd944b58c78779be5fce85d8efdbae407987b95d2c
size 768746

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dcf06d47fe6636f2331f3d3b61f0c1bcdde9a90a4376dc63cf1a048891999e2d
size 3237286
oid sha256:c902488174f85e8b61b257512ad089488a95d04f7f38ef81a0f6d40ae3e3c71b
size 3245397

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d57ead981442e6bbe1cdde849653f253185be76520bd26a06567209795376854
size 852049
oid sha256:57e9fbc67b811f719cf3bdcb69965c95ccdc2fb4012635f8b2aa5d0ae993ad7f
size 851368

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c4cb807820d41bf8dab64a884cbb08283e4ae7d484f9d191667e96150518e94a
size 4542358
oid sha256:e715fbac42c2965488ad1a4065149552ea5c4ed3c67232344e1651bde0099bcd
size 4542564

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f6e3df5252a3c42a855791fdf293c1727b1367ca64d51d3e3b095fd4d2b898ce
size 754664
oid sha256:14ee00e316369200647537d60aaeaec5cdc6747948d94ac41995d6eb0722c5a5
size 755444

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:16d035c3747768031dfed30ee9c8a45adacb895745eb7e99523cf0cf4ceae2a7
size 3216823
oid sha256:8909b569adcd53130c02598ece69a4371fcc4e0ae43b31ff5f431849cdb6f3a7
size 3224774

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:82f1ab8939d5dd26cbcf8d8e8127685d7df040e34766c0f033dcfb2ed84b608a
size 813071
oid sha256:dfcc12174ccceeabadd3719d9f43ba6f3998ea8a7457c6fda01146d538f64104
size 812594

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:37798c560348a57b9281d4485d57e49df40395c217e17139586b8ecddf5db120
size 1699281
oid sha256:23316b801b75ffcf081781f23da523ca7020bb79df6d00d9904d17f631be25e9
size 1705727

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2c494b17ccad4a828b13b60fef8e2d2c65b561af145fc2f3daa803240f6bf763
size 1146911
oid sha256:20ff7a53cfdae827c28fe13921ee752abcc6f7569e614626ad107d0a7765fdb2
size 1147534

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:97e6b7d79453f2623564b58e3bdf191a5df33c074a3fa9318ed06024b4a56a96
size 4643132
oid sha256:8e353148317ea02fddcf9f55106bcd74eb94170023b603de7bcbdb2c0def670c
size 4649066

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f2d1a80587e182370a76baaab88aa7e4e53f8c0fee254b51a2d75818d8667b81
size 772282
oid sha256:32d0e6b73754567a0d6942ca11c2cb7d0788ed00e283463c0fe89ee57928d00a
size 773144

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6b77ef7d174387505ae2b6de83dfd9c6b38899319ce87b445532fbb0600d8816
size 3265028
oid sha256:ee65882ace27b556afa1da22f131812581b6d15cca88c858ba9c400aeb947b2a
size 3271985

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f8018b669d0fc4ca288f42e8793e795f8442a97436e87eaf9e30b5acb8a3dddb
size 854092
oid sha256:19906631cf066b04bb84dcad8ad6d3c86020c6f13d8ef232f31aed162f539110
size 853298

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:86278d13de69f0c4e59e0279bab7a93251791a41a55ef53378ab1294c4f44cc8
size 4568763
oid sha256:459540a5c1b478d9e4f13610b6b562bdf26ee6328026e7e728b599c663fc1d9e
size 4570475

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d054eecda396c7f332cf7f9e4fe29e426e632d447f8f030c143699e0e1b5d5dd
size 759001
oid sha256:625d53713f954f67956109ef467033813b3332d91955bb5bb4670db3bc7fd7e2
size 759703

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:30bc27bf2b1d4d6aecb06bc29a3caf68989902ab144e99d0b6278b9fc0732dc0
size 3243686
oid sha256:e12550f1a2ef5dc8b23ebe250dbb7de35a83df2f97e57db243c2c77c54546fc8
size 3252146

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3200128e89914ac5839d08ce3320acb356b22494f293c002decc7b05ca21697d
size 843382
oid sha256:7c541b5d9be25a761c5b02e4d7db7722a6e9b5d6901d86d69b5a49e134383908
size 843067

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6391e168f9f3b253592e9212c5f682b1185ebe6d357d347c2ef8419b5afeb79e
size 1764903
oid sha256:9851566311359a73ba5f80c503fb556bd2fd81e4d8225860dbf8697dc597b833
size 1772774

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:39506d96b315a4f5baf2f7c593fa389d1d6cc733544deb60f5c7f3b43d21ebf2
size 1187033
oid sha256:3d4eab484c271ef4924b408efda68dc65b7b249b340f576f8bce6a4a1d689ae1
size 1188474

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5f2b8dcda46be7ac2312f7fdf54e66cb3d4ea6bd3ab1a5b24f6592317876e8b3
size 4809942
oid sha256:2ed35a3beed4edeb7db00a50561585ded796c82bd1904ee255f6d91075af9df6
size 4815435

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f151d81357d6763dd75927bd9103b9bf9a3f955a799a1e7205e05b3f89981ee0
size 797215
oid sha256:a8061ec65782c88fc8c437a182b350e86cbfba68416ac96083c86e294acd2b5f
size 798059

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:687f3e4f1fa8531861e097027ec06fcc015999479d26528af7e1f14057f4abb5
size 3379783
oid sha256:155ab77837d9ce855da37df04aa210634191f38c9945f2c51feabb0d46d8887c
size 3386219

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a95fb41a71d410159960c52cb1f40b1e34a3a79d6da6d4d3265de7203dc1fba3
size 884301
oid sha256:235d327c3ea9e2b627acba1145f1ae13b9d52f52d22c4d05b346ab96807594b4
size 883427

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:17fa68c49ad52af79f3dae4817178ca2b55ccdd9087005034f092b980c3e03e2
size 4738701
oid sha256:348d0f04baeaea1a0a576733bc68d748210995b724ee1d5088ea80f040731d40
size 4739924

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8e7430213368cf17013ce3c3c16d9f0a417c8220924b6a9fe521ac9fd4b0e7d6
size 783970
oid sha256:0bb434d457dd89dcbdc4928e19b5ebfa4f2308aabfb3fdd3a1308e4a11b45f97
size 784870

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b511ec3d8b829ea994fcb2b446eab37900c04435c7371e10d7e19e70f91f9335
size 3359310
oid sha256:27fac92b5801f18f187b39e8b7195041ee11b48d50e0091406e707ff6fc44dc1
size 3368246

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3dd69fcc279e4e3bb8cdc8304655546c8754f7b83b6bfc20977634e07b1f09ae
size 866724
oid sha256:c4577edc495b805542370b75a732e7122a30aabd24ef92e40fc5b33a44dadb55
size 866226

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:96345e899a6bfb6be04f78b1cbc6d11b6a2e57e4440291f439303a279f51ec4e
size 1808420
oid sha256:5160bdd5f27fc89e8030a20bf12d51fcb0d1b63634a32168f3736aa0b91908f1
size 1814531

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:03724e59d8f1ef414f97583424dea6505a9c65cb1a37b3af410cd4aa42d8540c
size 1221916
oid sha256:04317f88ce1915fa2b8014540ee6fdf730dcc89af511b0d57093e3fc1e5051fa
size 1222601

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b5c47a807549dda866b5a0952dc4af1fefdaa5107bec19ba541b8df0c9770027
size 4948429
oid sha256:4ff29bd1ecb88fd251b0522bc019c1fc1a9ebaf04bcad90af7dc349f9f2db31a
size 4952320

Some files were not shown because too many files have changed in this diff Show More