Merge branch 'main' into baileycodespaces-java-quickstart
33
.github/ISSUE_COMMENT_TEMPLATE/batch-status.yml
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
---
|
||||
name: Batch Status Update
|
||||
description: Batch Status Update
|
||||
body:
|
||||
- type: dropdown
|
||||
attributes:
|
||||
label: Status
|
||||
options:
|
||||
- label: "GREEN \U0001F7E2 (All good, smooth sailing)"
|
||||
value: 'Status: GREEN'
|
||||
- label:
|
||||
"YELLOW \U0001F7E1 (We've identified areas of concern, but have them under
|
||||
control at this time)"
|
||||
value: 'Status: YELLOW'
|
||||
- label: "RED \U0001F534 (We need help, there are blockers beyond our control)"
|
||||
value: 'Status: RED'
|
||||
- label: GREY ⚪️ (Not started, paused, not currently being worked on)
|
||||
value: 'Status: GREY'
|
||||
- label: "BLACK ⚫️ (We shipped it \U0001F389)"
|
||||
value: 'Status: BLACK'
|
||||
- type: input
|
||||
attributes:
|
||||
label: Target date
|
||||
format: date
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Update
|
||||
placeholder: A few words on how it's going
|
||||
- type: input
|
||||
attributes:
|
||||
label: 'Attribution'
|
||||
value: '_created with :heart: by typing_ `/status`'
|
||||
format: text
|
||||
29
.github/ISSUE_COMMENT_TEMPLATE/quick-status.yml
vendored
@@ -1,29 +0,0 @@
|
||||
---
|
||||
name: A brief status update
|
||||
description: A brief status update.
|
||||
body:
|
||||
- type: dropdown
|
||||
attributes:
|
||||
label: Status
|
||||
options:
|
||||
- label: 'GREY ⚪️ (Not started, paused, not currently being worked on)'
|
||||
value: 'Status: GREY'
|
||||
- label: 'GREEN 🟢 (All good, smooth sailing)'
|
||||
value: 'Status: GREEN'
|
||||
- label: "YELLOW \U0001F7E1 (On track, with hurdles to work through)"
|
||||
value: 'Status: YELLOW'
|
||||
- label: "RED \U0001F534 (BLOCKED)"
|
||||
value: 'Status: RED'
|
||||
- label: "BLACK ⚫️ (We shipped it \U0001F389)"
|
||||
value: 'Status: BLACK'
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Update Summary
|
||||
placeholder:
|
||||
Brief summary of the status and next steps. Any blockers should be
|
||||
called out specifically.
|
||||
- type: input
|
||||
attributes:
|
||||
label: 'Attribution'
|
||||
value: '_created with :heart: by typing_ `/status`'
|
||||
format: text
|
||||
9
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -12,19 +12,20 @@ Thanks again!
|
||||
|
||||
### Why:
|
||||
|
||||
Closes [issue link]
|
||||
|
||||
<!--
|
||||
- If there's an existing issue for your change, please link to it.
|
||||
- If there's _not_ an existing issue, please open one first to make it more likely that this update will be accepted: https://github.com/github/docs/issues/new/choose. -->
|
||||
**Closes [issue link]**
|
||||
|
||||
### What's being changed:
|
||||
|
||||
<!-- Share artifacts of the changes, be they code snippets, GIFs or screenshots; whatever shares the most context. -->
|
||||
|
||||
### Check off the following:
|
||||
- [ ] I have reviewed my changes in staging. (look for the **deploy-to-heroku** link in your pull request, then click **View deployment**)
|
||||
- [ ] For content changes, I have reviewed the [localization checklist](https://github.com/github/docs/blob/main/contributing/localization-checklist.md)
|
||||
- [ ] For content changes, I have reviewed the [Content style guide for GitHub Docs](https://github.com/github/docs/blob/main/contributing/content-style-guide.md).
|
||||
|
||||
- [ ] I have reviewed my changes in staging (look for the **deploy-to-heroku** link in your pull request, then click **View deployment**).
|
||||
- [ ] For content changes, I have completed the [self-review checklist](https://github.com/github/docs/blob/main/CONTRIBUTING.md#self-review).
|
||||
|
||||
### Writer impact (This section is for GitHub staff members only):
|
||||
|
||||
|
||||
34
.github/review-template.md
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
## Author self-review
|
||||
|
||||
- [ ] The changes in this PR meet the user experience and goals outlined in the content design plan.
|
||||
- [ ] I've compared my PR's source changes to staging and reviewed for versioning issues, redirects, the [style guide](https://github.com/github/docs/blob/main/contributing/content-style-guide.md), [content model](https://github.com/github/docs-content-strategy/blob/main/content-design/models.md), or [localization checklist](https://github.com/github/docs/blob/main/contributing/localization-checklist.md) rendering problems, typos, and wonky screenshots.
|
||||
- [ ] I've worked through build failures and tests are passing.
|
||||
- [ ] For REST API content, I've verified that endpoints, parameters, and responses are correct and work as expected and provided curl samples below.
|
||||
|
||||
For more information, check out our [full review guidelines and checklist](https://github.com/github/docs-content/blob/main/docs-content-docs/docs-content-workflows/reviews-and-feedback/review-process.md).
|
||||
|
||||
## Review request
|
||||
|
||||
### Summary
|
||||
|
||||
_Help reviewers understand this project and its context by writing a paragraph summarizing its goals and intended user experience and explaining how the PR meets those goals._
|
||||
[Content design plan](LINK HERE)
|
||||
|
||||
### Docs Content review
|
||||
|
||||
_Give Docs Content any extra context, highlight areas for them to consider in their review, and ask them questions you need answered to ship the PR._
|
||||
|
||||
### Technical review
|
||||
|
||||
_Ping in technical reviewers, asking them to review whether content is technically accurate and right for the audience._
|
||||
_Highlight areas for them to consider in their review and ask them questions you need answered to ship the PR._
|
||||
|
||||
### Content changes
|
||||
|
||||
[PR on staging](LINK HERE)
|
||||
|
||||
_Give a high-level overview of the changes in your PR and how they support the overall goals of the PR. Share links to important articles or changes in source and on staging. If your PR is large or complex, use a table to highlight changes with high user impact._
|
||||
|
||||
### Notes
|
||||
|
||||
_Discuss test failures, versioning issues, or anything else reviewers should know to consider the overall user experience of the PR._
|
||||
36
.github/workflows/add-review-template.yml
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
name: Add review template
|
||||
|
||||
# **What it does**: When a specific label is added to a PR, adds the contents of .github/review-template.md as a comment in the PR
|
||||
# **Why we have it**: To help Docs Content team members ensure that their PR is ready for review
|
||||
# **Who does it impact**: docs-internal maintainers and contributors
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
types:
|
||||
- labeled
|
||||
|
||||
jobs:
|
||||
comment-that-approved:
|
||||
name: Add review template
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event.label.name == 'docs-content-ready-for-review' && github.repository == 'github/docs-internal'
|
||||
|
||||
steps:
|
||||
- name: check out repo content
|
||||
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
|
||||
|
||||
# Jump through some hoops to work with a multi-line file
|
||||
- name: Store review template in variable
|
||||
run: |
|
||||
TEMPLATE=$(cat .github/workflows/review-template.md)
|
||||
echo "TEMPLATE<<EOF" >> $GITHUB_ENV
|
||||
echo "$TEMPLATE" >> $GITHUB_ENV
|
||||
echo "EOF" >> $GITHUB_ENV
|
||||
|
||||
- name: Comment on the PR
|
||||
run: |
|
||||
gh pr comment $PR --body "$TEMPLATE"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{secrets.DOCUBOT_FR_PROJECT_BOARD_WORKFLOWS_REPO_ORG_READ_SCOPES}}
|
||||
PR: ${{ github.event.pull_request.html_url }}
|
||||
TEMPLATE: ${{ env.TEMPLATE }}
|
||||
@@ -158,12 +158,12 @@ We (usually the docs team, but sometimes GitHub product managers, engineers, or
|
||||
You should always review your own PR first.
|
||||
|
||||
For content changes, make sure that you:
|
||||
- [ ] Confirm that the changes address every part of the content design plan from your issue (if there are differences, explain them).
|
||||
- [ ] Confirm that the changes meet the user experience and goals outlined in the content design plan (if there is one).
|
||||
- [ ] Compare your pull request's source changes to staging to confirm that the output matches the source and that everything is rendering as expected. This helps spot issues like typos, content that doesn't follow the style guide, or content that isn't rendering due to versioning problems. Remember that lists and tables can be tricky.
|
||||
- [ ] Review the content for technical accuracy.
|
||||
- [ ] Review the entire pull request using the [localization checklist](contributing/localization-checklist.md).
|
||||
- [ ] Copy-edit the changes for grammar, spelling, and adherence to the style guide.
|
||||
- [ ] Copy-edit the changes for grammar, spelling, and adherence to the [style guide](https://github.com/github/docs/blob/main/contributing/content-style-guide.md).
|
||||
- [ ] Check new or updated Liquid statements to confirm that versioning is correct.
|
||||
- [ ] Check that all of your changes render correctly in staging. Remember, that lists and tables can be tricky.
|
||||
- [ ] If there are any failing checks in your PR, troubleshoot them until they're all passing.
|
||||
|
||||
### Pull request template
|
||||
|
||||
BIN
assets/images/help/codespaces/autofetch-all.png
Normal file
|
After Width: | Height: | Size: 102 KiB |
BIN
assets/images/help/codespaces/autofetch-search.png
Normal file
|
After Width: | Height: | Size: 316 KiB |
BIN
assets/images/help/codespaces/branch-in-status-bar.png
Normal file
|
After Width: | Height: | Size: 119 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 316 KiB |
|
After Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 8.0 KiB After Width: | Height: | Size: 156 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 126 KiB |
BIN
assets/images/help/codespaces/create-new-branch.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
assets/images/help/codespaces/manage-button.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 68 KiB |
BIN
assets/images/help/codespaces/source-control-ellipsis-button.png
Normal file
|
After Width: | Height: | Size: 114 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 67 KiB |
BIN
assets/images/help/sponsors/disable-your-account-button.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
assets/images/help/sponsors/unpublish-profile-button.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
assets/images/help/sponsors/unpublish-profile-dialog.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 36 KiB |
@@ -57,7 +57,7 @@ See [Versioning](#versioning) for more info.
|
||||
|
||||
Example that applies to GitHub.com and recent versions of GitHub Enterprise Server:
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
title: About your personal dashboard
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
@@ -67,7 +67,7 @@ versions:
|
||||
Example that applies to all supported versions of GitHub Enterprise Server:
|
||||
(but not GitHub.com):
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
title: Downloading your license
|
||||
versions:
|
||||
enterprise-server: '*'
|
||||
@@ -75,7 +75,7 @@ versions:
|
||||
|
||||
You can also version a page for a range of releases. This would version the page for GitHub Enterprise Server 2.22 and 3.0 only:
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
enterprise-server: '>=2.22 <3.1'
|
||||
@@ -89,7 +89,7 @@ versions:
|
||||
|
||||
Example:
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
title: Getting started with GitHub Desktop
|
||||
redirect_from:
|
||||
- /articles/first-launch/
|
||||
@@ -113,7 +113,7 @@ See [`contributing/redirects`](contributing/redirects.md) for more info.
|
||||
|
||||
Example:
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
title: Contributing to projects with GitHub Desktop
|
||||
shortTitle: Contributing to projects
|
||||
```
|
||||
@@ -233,7 +233,7 @@ defaultTool: cli
|
||||
|
||||
Example:
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
includeGuides:
|
||||
- /actions/guides/about-continuous-integration
|
||||
- /actions/guides/setting-up-continuous-integration-using-workflow-templates
|
||||
@@ -258,7 +258,7 @@ includeGuides:
|
||||
|
||||
Example:
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
contributor:
|
||||
name: ACME, inc.
|
||||
URL: https://acme.example.com/
|
||||
|
||||
@@ -48,6 +48,7 @@ In addition to helping you set up CI workflows for your project, you can use {%
|
||||
For a definition of common terms, see "[Core concepts for {% data variables.product.prodname_actions %}](/github/automating-your-workflow-with-github-actions/core-concepts-for-github-actions)."
|
||||
|
||||
### Supported languages
|
||||
<!-- If you make changes to this feature, update /getting-started-with-github/github-language-support to reflect any changes to supported languages. -->
|
||||
|
||||
{% data variables.product.product_name %} offers CI workflow templates for a variety of languages and frameworks.
|
||||
|
||||
|
||||
@@ -59,7 +59,16 @@ For more information, see [`actions/cache`](https://github.com/actions/cache).
|
||||
|
||||
- `key`: **Required** The key created when saving a cache and the key used to search for a cache. Can be any combination of variables, context values, static strings, and functions. Keys have a maximum length of 512 characters, and keys longer than the maximum length will cause the action to fail.
|
||||
- `path`: **Required** The file path on the runner to cache or restore. The path can be an absolute path or relative to the working directory.
|
||||
- With `v2` of the `cache` action, you can specify a single path, or multiple paths as a list. Paths can be either directories or single files, and glob patterns are supported.
|
||||
- Paths can be either directories or single files, and glob patterns are supported.
|
||||
- With `v2` of the `cache` action, you can specify a single path, or you can add multiple paths on separate lines. For example:
|
||||
```
|
||||
- name: Cache Gradle packages
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
```
|
||||
- With `v1` of the `cache` action, only a single path is supported and it must be a directory. You cannot cache a single file.
|
||||
- `restore-keys`: **Optional** An ordered list of alternative keys to use for finding the cache if no cache hit occurred for `key`.
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ Deleting an environment will delete all secrets and protection rules associated
|
||||
{% data reusables.repositories.navigate-to-repo %}
|
||||
{% data reusables.repositories.sidebar-settings %}
|
||||
{% data reusables.github-actions.sidebar-environment %}
|
||||
1. Next the the environment that you want to delete, click {% octicon "trash" aria-label="The trash icon" %}.
|
||||
1. Next to the environment that you want to delete, click {% octicon "trash" aria-label="The trash icon" %}.
|
||||
2. Click **I understand, delete this environment**.
|
||||
|
||||
{% if currentVersion == "free-pro-team@latest" or currentVersion == "github-ae@next" or currentVersion ver_gt "enterprise-server@3.1" %}You can also delete environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)."{% endif %}
|
||||
|
||||
@@ -91,7 +91,7 @@ This example workflow runs anytime commits are pushed to the repository. The act
|
||||
|
||||
The workflow shows an example of running the ESLint static analysis tool as a step in a workflow. The `Run ESLint` step runs the ESLint tool and outputs the `results.sarif` file. The workflow then uploads the `results.sarif` file to {% data variables.product.prodname_dotcom %} using the `upload-sarif` action. For more information about creating a workflow file, see "[Introduction to GitHub Actions](/actions/learn-github-actions/introduction-to-github-actions)."
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
name: "ESLint analysis"
|
||||
|
||||
# Run workflow each time code is pushed to your repository and on a schedule.
|
||||
|
||||
@@ -35,6 +35,7 @@ You specify how often to check each ecosystem for new versions in the configurat
|
||||
If you've enabled security updates, you'll sometimes see extra pull requests for security updates. These are triggered by a {% data variables.product.prodname_dependabot %} alert for a dependency on your default branch. {% data variables.product.prodname_dependabot %} automatically raises a pull request to update the vulnerable dependency.
|
||||
|
||||
### Supported repositories and ecosystems
|
||||
<!-- If you make changes to this feature, update /getting-started-with-github/github-language-support to reflect any changes to supported repositories or ecosystems. -->
|
||||
|
||||
You can configure version updates for repositories that contain a dependency manifest or lock file for one of the supported package managers. For some package managers, you can also configure vendoring for dependencies. For more information, see "[Configuration options for dependency updates](/github/administering-a-repository/configuration-options-for-dependency-updates#vendor)."
|
||||
|
||||
|
||||
@@ -474,11 +474,11 @@ To allow {% data variables.product.prodname_dependabot %} to access a private pa
|
||||
|
||||
To allow {% data variables.product.prodname_dependabot %} to use `bundler`, `mix`, and `pip` package managers to update dependencies in private registries, you can choose to allow external code execution. For more information, see [`insecure-external-code-execution`](#insecure-external-code-execution).
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
# Allow {% data variables.product.prodname_dependabot %} to use one of the two defined private registries
|
||||
# when updating dependency versions for this ecosystem
|
||||
|
||||
{% raw %}
|
||||
version: 2
|
||||
registries:
|
||||
maven-github:
|
||||
@@ -497,8 +497,8 @@ updates:
|
||||
- maven-github
|
||||
schedule:
|
||||
interval: "monthly"
|
||||
```
|
||||
{% endraw %}
|
||||
```
|
||||
|
||||
#### `reviewers`
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ You enable {% data variables.product.prodname_dependabot_version_updates %} by c
|
||||
|
||||
{% data reusables.dependabot.initial-updates %} For more information, see "[Customizing dependency updates](/github/administering-a-repository/customizing-dependency-updates)."
|
||||
|
||||
{% data reusables.dependabot.private-dependencies-note %} Additionally, {% data variables.product.prodname_dependabot %} doesn't support private {% data variables.product.prodname_dotcom %} dependencies for all package managers. For more information, see "[About Dependabot version updates](/github/administering-a-repository/about-dependabot-version-updates#supported-repositories-and-ecosystems)."
|
||||
{% data reusables.dependabot.private-dependencies-note %} Additionally, {% data variables.product.prodname_dependabot %} doesn't support private {% data variables.product.prodname_dotcom %} dependencies for all package managers. For more information, see "[About Dependabot version updates](/github/administering-a-repository/about-dependabot-version-updates#supported-repositories-and-ecosystems)" and "[{% data variables.product.prodname_dotcom %} language support](/github/getting-started-with-github/github-language-support)."
|
||||
|
||||
### Enabling {% data variables.product.prodname_dependabot_version_updates %}
|
||||
|
||||
|
||||
71
content/codespaces/about-codespaces.md
Normal file
@@ -0,0 +1,71 @@
|
||||
---
|
||||
title: About Codespaces
|
||||
intro: '{% data variables.product.prodname_codespaces %} is a configurable online development environment, hosted by {% data variables.product.prodname_dotcom %} and powered by {% data variables.product.prodname_vscode %}, that allows you to develop entirely in the cloud.'
|
||||
product: '{% data reusables.gated-features.codespaces %}'
|
||||
redirect_from:
|
||||
- /github/developing-online-with-github-codespaces/about-github-codespaces
|
||||
- /github/developing-online-with-codespaces/about-codespaces
|
||||
- /codespaces/getting-started-with-codespaces/about-codespaces
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
topics:
|
||||
- Codespaces
|
||||
---
|
||||
|
||||
{% note %}
|
||||
|
||||
**Note:** {% data variables.product.prodname_codespaces %} is currently in limited public beta and subject to change. During the beta period, {% data variables.product.prodname_dotcom %} does not make any guarantees about the availability of {% data variables.product.prodname_codespaces %}.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
### About {% data variables.product.prodname_codespaces %}
|
||||
|
||||
{% data variables.product.prodname_codespaces %} is a configurable cloud development environment available in your browser on {% data variables.product.prodname_dotcom %} or through {% data variables.product.prodname_vscode %}.
|
||||
|
||||

|
||||
|
||||
A codespace includes everything developers need to develop for a specific repository, including the {% data variables.product.prodname_vscode %} editing experience and common languages, tools, and utilities. {% data variables.product.prodname_codespaces %} is completely configurable, allowing you to create a customized development environment for your project, and allowing developers to personalize their experience with extensions and dotfile settings.
|
||||
|
||||
Codespaces offers many benefits to teams by allowing for a consistent environment across your entire team, fast onboarding, and creating a secure space for development.
|
||||
|
||||
### A consistent environment
|
||||
|
||||
You can create a single codespace configuration that defines the environment (or _dev container_) of every new codespace that anyone creates for your repository. Once you've made a configuration, developers don’t have to worry about installing the right tools to comment, review, or contribute. A standardized environment is already available for them as soon as they create a codespace from the repository. For more information, see "[Configuring {% data variables.product.prodname_codespaces %} for your project](/github/developing-online-with-codespaces/configuring-codespaces-for-your-project)."
|
||||
|
||||
For help getting started with configurations for specific languages, see the [Getting Started](/codespaces/getting-started-with-codespaces) tutorials.
|
||||
|
||||
While every codespace created from your repository has a consistent development environment, developers can use {% data variables.product.prodname_codespaces %} wherever they need it – on {% data variables.product.prodname_dotcom %} or through {% data variables.product.prodname_vscode %}.
|
||||
|
||||
### Fast and personal onboarding
|
||||
|
||||
With a [dev container](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project#about-dev-containers) configured in your repository, any new developer can quickly onboard with the correct development environment for your project by using the {% octicon "download" aria-label="The download icon" %} **Code** drop-down menu, and selecting **Open with Codespaces**.
|
||||
|
||||

|
||||
|
||||
As a result of standardizing on a repeatable developer environment, developers can get started with a new codespace without doing any manual configuration and do not need to do continued maintenance of their developer environment. A new codespace can be created when starting a new feature.
|
||||
|
||||
Developers can also personalize aspects of their codespace environment by using a [dotfiles](https://dotfiles.github.io/tutorials/) repository and [Settings Sync](https://code.visualstudio.com/docs/editor/settings-sync). Personalization can include shell preferences, additional tools, editor settings, and extensions, such as Live Share. Personal customizations are stored on a per-user basis, so every codespace a developer opens has their environment ready to go. For more information, see "[Personalizing {% data variables.product.prodname_codespaces %} for your account](/github/developing-online-with-codespaces/personalizing-codespaces-for-your-account)."
|
||||
|
||||
Because {% data variables.product.prodname_codespaces %} can be accessed in the browser, developers can work on multiple projects by switching between tabs.
|
||||
|
||||
### A secure environment
|
||||
|
||||
{% data variables.product.prodname_codespaces %} allows developers to develop in the cloud instead of locally. This creates one single, trackable, source of truth. Developers can contribute from anywhere, on any machine, including tablets or Chromebooks, and there is no need to maintain local copies of intellectual property. Developers always have to be logged in and provided with access to both {% data variables.product.prodname_codespaces %} and specific repositories. These permissions can be revoked at any time. As soon as you revoke access, those developers will lose all access to protected resources. In addition, authenticated developers create audit trails so you know who is doing what. For more information on access and security, see "[Managing access and security for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces)."
|
||||
|
||||
Using {% data variables.product.prodname_codespaces %} is the most secure when all members of your team are using it. It means that there is no need to clone the repository onto a local machine and that developers don't need to install locally as `root`.
|
||||
|
||||
Developers and organization administrators can also configure settings to add encrypted secrets and enable GPG verification. For more information, see "[Managing encrypted secrets for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces)", "[Managing GPG verification for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-gpg-verification-for-codespaces)".
|
||||
|
||||
### About billing for {% data variables.product.prodname_codespaces %}
|
||||
|
||||
{% data reusables.codespaces.about-billing-for-codespaces %} For more information, see "[About billing for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/about-billing-for-codespaces)."
|
||||
|
||||
### Joining the beta
|
||||
|
||||
A limited number of people will be invited to join the beta. To join the waitlist, see [Sign up for Codespaces beta](https://github.com/features/codespaces/signup).
|
||||
|
||||
### Contacting us about {% data variables.product.prodname_codespaces %}
|
||||
|
||||
If you encounter problems using {% data variables.product.prodname_codespaces %}, see "[Troubleshooting your codespace](/github/developing-online-with-codespaces/troubleshooting-your-codespace)."
|
||||
|
||||
If you still need help or have feedback about {% data variables.product.prodname_codespaces %}, use the [Codespaces Feedback](https://github.com/github/feedback/discussions/categories/codespaces-feedback) discussion.
|
||||
@@ -6,6 +6,7 @@ versions:
|
||||
free-pro-team: '*'
|
||||
redirect_from:
|
||||
- /github/developing-online-with-codespaces/about-billing-for-codespaces
|
||||
- /codespaces/getting-started-with-codespaces/about-billing-for-codespaces
|
||||
topics:
|
||||
- Codespaces
|
||||
---
|
||||
9
content/codespaces/codespaces-reference/index.md
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
title: Reference
|
||||
intro: 'This section contains references that will allow you to be successful with {% data variables.product.prodname_codespaces %}'
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
---
|
||||
|
||||
{% link_with_intro /about-billing-for-codespaces %}
|
||||
|
||||
@@ -14,6 +14,8 @@ topics:
|
||||
|
||||
{% link_with_intro /developing-in-a-codespace %}
|
||||
|
||||
{% link_with_intro /using-source-control-in-your-codespace %}
|
||||
|
||||
{% link_with_intro /deleting-a-codespace %}
|
||||
|
||||
{% link_with_intro /forwarding-ports-in-your-codespace %}
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
---
|
||||
title: Using source control in your codespace
|
||||
intro: 'After making changes to a file in your codespace you can quickly commit the changes and push your update to the remote repository.'
|
||||
product: '{% data reusables.gated-features.codespaces %}'
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
topics:
|
||||
- Codespaces
|
||||
---
|
||||
|
||||
### About source control in {% data variables.product.prodname_codespaces %}
|
||||
|
||||
{% data reusables.codespaces.release-stage %}
|
||||
|
||||
You can perform all the Git actions you need directly within your codespace. For example, you can fetch changes from the remote repository, switch branches, create a new branch, commit and push changes, and create a pull request. You can use the integrated terminal within your codespace to enter Git commands, or you can click icons and menu options to complete all the most common Git tasks. This guide explains how to use the graphical user interface for source control.
|
||||
|
||||
Source control in {% data variables.product.prodname_github_codespaces %} uses the same workflow as {% data variables.product.prodname_vscode %}. For more information, see the {% data variables.product.prodname_vscode %} documentation "[Using Version Control in VS Code](https://code.visualstudio.com/docs/editor/versioncontrol#_git-support)."
|
||||
|
||||
A typical workflow for updating a file using {% data variables.product.prodname_github_codespaces %} would be:
|
||||
|
||||
* From the default branch of your repository on {% data variables.product.prodname_dotcom %}, create a codespace. See "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace)."
|
||||
* In your codespace, create a new branch to work on.
|
||||
* Make your changes and save them.
|
||||
* Commit the change.
|
||||
* Raise a pull request.
|
||||
|
||||
### Creating or switching branches
|
||||
|
||||
1. If the current branch is not shown in the status bar, at the bottom of your codespace, right-click the status bar and select **Source control**.
|
||||
1. Click the branch name in the status bar.
|
||||

|
||||
1. In the drop-down, either click the branch you want to switch to, or enter the name for a new branch and click **Create new branch**.
|
||||

|
||||
|
||||
{% tip %}
|
||||
|
||||
**Tip**: If someone has changed a file on the remote repository, in the branch you switched to, you will not see those changes until you pull the changes into your codespace.
|
||||
|
||||
{% endtip %}
|
||||
|
||||
### Pulling changes from the remote repository
|
||||
|
||||
You can pull changes from the remote repository into your codespace at any time.
|
||||
|
||||
{% data reusables.codespaces.source-control-display-dark %}
|
||||
1. At the top of the side bar, click the ellipsis (**...**).
|
||||

|
||||
1. In the drop-down menu, click **Pull**.
|
||||
|
||||
If a dev container has been changed since you created the codespace you can apply the changes by rebuilding the container for the codespace. For more information, see "[Configuring Codespaces for your project](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project#applying-changes-to-your-configuration)."
|
||||
|
||||
### Setting your codespace to automatically fetch new changes
|
||||
|
||||
You can set your codespace to automatically fetch details of any new commits that have been made to the remote repository. This allows you to see whether your local copy of the repository is out of date, in which case you may choose to pull in the new changes.
|
||||
|
||||
If the fetch operation detects new changes on the remote repository, you'll see the number of new commits in the status bar. You can then pull the changes into your local copy.
|
||||
|
||||
1. Click the **Manage** button at the bottom of the Activity Bar.
|
||||

|
||||
1. In the menu, slick **Settings**.
|
||||
1. On the Settings page, search for: `autofetch`.
|
||||

|
||||
1. To fetch details of updates for all remotes registered for the current repository, set **Git: Autofetch** to `all`.
|
||||

|
||||
1. If you want to change the number of seconds between each automatic fetch, edit the value of **Git: Autofetch Period**.
|
||||
|
||||
### Committing your changes
|
||||
|
||||
{% data reusables.codespaces.source-control-display-dark %}
|
||||
1. To stage your changes, click **+** next to the file you've changed, or next to **Changes** if you've changed multiple files and you want to stage them all.
|
||||

|
||||
1. Type a commit message describing the change you've made.
|
||||

|
||||
1. To commit your staged changes, click the check mark at the top the source control side bar.
|
||||

|
||||
|
||||
### Raising a pull request
|
||||
|
||||
1. After you've committed changes to your local copy of the repository, click the **Create Pull Request** icon.
|
||||

|
||||
1. Check that the local branch and repository you're merging from, and the remote branch and repository you're merging into, are correct. Then give the pull request a title and a description.
|
||||

|
||||
1. Click **Create**.
|
||||
|
||||
### Pushing changes to your remote repository
|
||||
|
||||
You can push the changes you've made. This applies those changes to the upstream branch on the remote repository. You might want to do this if you're not yet ready to create a pull request, or if you prefer to create a pull request on {% data variables.product.prodname_dotcom %}.
|
||||
|
||||
1. At the top of the side bar, click the ellipsis (**...**).
|
||||

|
||||
1. In the drop-down menu, click **Push**.
|
||||
@@ -1,62 +0,0 @@
|
||||
---
|
||||
title: About Codespaces
|
||||
intro: '{% data variables.product.prodname_codespaces %} is an online development environment, hosted by {% data variables.product.prodname_dotcom %} and powered by {% data variables.product.prodname_vscode %}, that allows you to develop entirely in the cloud.'
|
||||
product: '{% data reusables.gated-features.codespaces %}'
|
||||
redirect_from:
|
||||
- /github/developing-online-with-github-codespaces/about-github-codespaces
|
||||
- /github/developing-online-with-codespaces/about-codespaces
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
topics:
|
||||
- Codespaces
|
||||
---
|
||||
|
||||
{% note %}
|
||||
|
||||
**Note:** {% data variables.product.prodname_codespaces %} is currently in limited public beta and subject to change. During the beta period, {% data variables.product.prodname_dotcom %} does not make any guarantees about the availability of {% data variables.product.prodname_codespaces %}. For more information about joining the beta, see "[Joining the beta](/github/developing-online-with-codespaces/about-codespaces#joining-the-beta)."
|
||||
|
||||
{% endnote %}
|
||||
|
||||
### About {% data variables.product.prodname_codespaces %}
|
||||
|
||||
{% data variables.product.prodname_codespaces %} is a cloud development environment available in your browser. A codespace includes everything you need to develop for a specific repository, including a text editor with syntax highlighting and autocomplete, a terminal, debugging tools, and Git commands, all within {% data variables.product.prodname_dotcom %}. You can also install {% data variables.product.prodname_vscode %} extensions in your codespace to add more functionality.
|
||||
|
||||
{% data variables.product.prodname_codespaces %} makes it easier for developers to onboard to a new company or start contributing to an open-source project. Project maintainers can configure a repository so that, when you create a codespace for the repository, the project's dependencies are included automatically. You can start coding faster by reducing time spent configuring your environment.
|
||||
|
||||
{% data variables.product.prodname_codespaces %} allows you to develop in the cloud instead of locally. Developers can contribute from anywhere, on any machine, including tablets or Chromebooks, and there is no need to maintain local copies of intellectual property.
|
||||
|
||||

|
||||
|
||||
### Using {% data variables.product.prodname_codespaces %}
|
||||
|
||||
Each developer can create one or more codespace for any public repository, or for any private repository owned by their user account. {% data reusables.codespaces.unsupported-repos %} {% data reusables.codespaces.codespaces-are-personal %}
|
||||
|
||||
{% data reusables.codespaces.codespaces-are-per-branch %} {% data reusables.codespaces.concurrent-codespace-limit %} For more information, see "[Deleting a codespace](/github/developing-online-with-codespaces/deleting-a-codespace)."
|
||||
|
||||
{% data reusables.codespaces.use-visual-studio-features %}
|
||||
|
||||
{% data reusables.codespaces.connect-to-codespace-from-vscode %}
|
||||
|
||||
{% data reusables.codespaces.about-configuration %} For more information, see "[Configuring {% data variables.product.prodname_codespaces %} for your project](/github/developing-online-with-codespaces/configuring-codespaces-for-your-project)."
|
||||
|
||||
{% data reusables.codespaces.about-personalization %} For more information, see "[Personalizing {% data variables.product.prodname_codespaces %} for your account](/github/developing-online-with-codespaces/personalizing-codespaces-for-your-account)."
|
||||
|
||||
You can configure settings to add encrypted secrets, enable GPG verification, and allow codespaces to access other repositories. For more information, see "[Managing encrypted secrets for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces)", "[Managing GPG verification for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-gpg-verification-for-codespaces)", and "[Managing access and security for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces)."
|
||||
|
||||
{% data reusables.codespaces.you-can-see-all-your-codespaces %}
|
||||
|
||||
{% data reusables.codespaces.beta-functionality-limited %}
|
||||
|
||||
### About billing for {% data variables.product.prodname_codespaces %}
|
||||
|
||||
{% data reusables.codespaces.about-billing-for-codespaces %} For more information, see "[About billing for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/about-billing-for-codespaces)."
|
||||
|
||||
### Joining the beta
|
||||
|
||||
A limited number of people will be invited to join the beta. To join the waitlist, see [Sign up for Codespaces beta](https://github.com/features/codespaces/signup).
|
||||
|
||||
### Contacting us about {% data variables.product.prodname_codespaces %}
|
||||
|
||||
If you encounter problems using {% data variables.product.prodname_codespaces %}, see "[Troubleshooting your codespace](/github/developing-online-with-codespaces/troubleshooting-your-codespace)."
|
||||
|
||||
If you still need help or have feedback about {% data variables.product.prodname_codespaces %}, use the [Codespaces Feedback](https://github.com/github/feedback/discussions/categories/codespaces-feedback) discussion.
|
||||
@@ -30,23 +30,19 @@ This guide shows you how to set up your JavaScript, Node.js, or TypeScript proje
|
||||
|
||||
When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Node.js, JavaScript, Typescript, nvm, npm, and yarn. It also includes a common set of tools like git, wget, rsync, openssh, and nano.
|
||||
|
||||
You can customize your codespace by adjusting the amount of vCPUs and RAM], [adding dotfiles to personalize your environment](/codespaces/setting-up-your-codespace/personalizing-codespaces-for-your-account), or by modifying the tools and scripts installed.
|
||||
You can customize your codespace by adjusting the amount of vCPUs and RAM, [adding dotfiles to personalize your environment](/codespaces/setting-up-your-codespace/personalizing-codespaces-for-your-account), or by modifying the tools and scripts installed.
|
||||
|
||||
{% data variables.product.prodname_codespaces %} uses a file called `devcontainer.json` to store configurations. On launch {% data variables.product.prodname_codespaces %} uses the file to install any tools, dependencies, or other set up that might be needed for the project. For more information, see "[Configuring Codespaces for your project](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project)."
|
||||
|
||||
The next section shows you how to modify your tools by adding a dev container.
|
||||
|
||||
### Step 2: Add a dev container to your codespace from a template
|
||||
|
||||
The default codespaces container will support running Node.js projects like [vscode-remote-try-node](https://github.com/microsoft/vscode-remote-try-node) out of the box. By setting up a custom container you can customize the tools and scripts that run as part of codespace creation and ensure a fully reproducible environment for all {% data variables.product.prodname_codespaces %} users in your repository.
|
||||
|
||||
To set up your project with a custom container, you will need to use a `devcontainer.json` file to define the environment. In {% data variables.product.prodname_codespaces %} you can add this either from a template or you can create your own. For more information on dev containers, see [Configuring your codespace](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project).
|
||||
|
||||
This example guides you through adding a `devcontainer.json` file from a template.
|
||||
To set up your project with a custom container, you will need to use a `devcontainer.json` file to define the environment. In {% data variables.product.prodname_codespaces %} you can add this either from a template or you can create your own. For more information on dev containers, see "[Configuring Codespaces for your project](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project)".
|
||||
|
||||
1. Access the command palette (`shift command P` / `shift control P`), then start typing "dev container". Click **Codespaces: Add Development Container Configuration Files...**
|
||||

|
||||
3. For this example, click **Node.js**. In practice, you could select any container that’s specific to Node or a combination of tools such as Node and MongoDB.
|
||||
3. For this example, click **Node.js**. If you need additional features you can select any container that’s specific to Node or a combination of tools such as Node and MongoDB.
|
||||

|
||||
4. Click the recommended version of Node.js.
|
||||

|
||||
@@ -96,18 +92,18 @@ The newly added `devcontainer.json` file defines a few properties that are descr
|
||||
}
|
||||
```
|
||||
|
||||
- **Name** - We can name our dev container anything, this is just the default
|
||||
- **Build** - Our build properties
|
||||
- **Dockerfile** - In our build object, Dockerfile is a reference to the Dockerfile in the same folder that was the second file added to our project. This is the reference path.
|
||||
- **Name** - You can name your dev container anything, this is just the default.
|
||||
- **Build** - The build properties.
|
||||
- **dockerfile** - In the build object, dockerfile is a reference to the Dockerfile that was also added from the template.
|
||||
- **Args**
|
||||
- **Variant**: We only have one build argument here which is the node variant we want to use which is passed into our Dockerfile.
|
||||
- **Settings** - These are {% data variables.product.prodname_vscode %} settings we wish to set
|
||||
- **Terminal.integrated.shell.linux** - While bash is the default here, we could use zsh for example by modifying this.
|
||||
- **Variant**: This file only contains one build argument, which is the node variant we want to use that is passed into the Dockerfile.
|
||||
- **Settings** - These are {% data variables.product.prodname_vscode %} settings that you can set.
|
||||
- **Terminal.integrated.shell.linux** - While bash is the default here, you could use other terminal shells by modifying this.
|
||||
- **Extensions** - These are extensions included by default.
|
||||
- **Dbaeumer.vscode-eslint** - ES lint is a great extension for linting, but for JavaScript there are a number of great Marketplace extensions you could also include.
|
||||
- **forwardPorts** - By default we can forward a port, like port 3000, but these will also forward automatically
|
||||
- **postCreateCommand** - If we want to run anything after we land in our codespace that’s not defined in our Dockerfile, like yarn install or npm install, we can do that here
|
||||
- **remoteUser** - We’re running as the node user, but you can optionally set this to root
|
||||
- **forwardPorts** - Any ports listed here will be forwarded automatically.
|
||||
- **postCreateCommand** - If you want to run anything after you land in your codespace that’s not defined in the Dockerfile, you can do that here.
|
||||
- **remoteUser** - By default, you’re running as the vscode user, but you can optionally set this to root.
|
||||
|
||||
##### Dockerfile
|
||||
|
||||
@@ -145,7 +141,7 @@ With your dev container added and a basic understanding of what everything does,
|
||||
"forwardPorts": [4000],
|
||||
```
|
||||
|
||||
For more information on `devcontainer.json` properties, see the [devcontainer.json reference](https://code.visualstudio.com/docs/remote/devcontainerjson-reference) on the Visual Studio Code docs.
|
||||
For more information on `devcontainer.json` properties, see the [devcontainer.json reference](https://code.visualstudio.com/docs/remote/devcontainerjson-reference) in the {% data variables.product.prodname_vscode %} docs.
|
||||
|
||||
3. To rebuild your container, access the command palette (`shift command P` / `shift control P`), then start typing "rebuild". Click **Codespaces: Rebuild Container**.
|
||||
|
||||
@@ -168,27 +164,7 @@ In the previous section, you used the `postCreateCommand` to installing a set of
|
||||
|
||||
### Step 5: Commit your changes
|
||||
|
||||
Once you've made changes to your codespace, either new code or configuration changes, you'll want to commit your changes. Committing changes to your repository ensures that anyone else who creates a codespace from this repository has the same configuration. This also means that any customization you do, such as adding {% data variables.product.prodname_vscode %} extensions, will appear for all users.
|
||||
|
||||
1. In the Activity Bar, click on the **Source Control** view.
|
||||
|
||||

|
||||
|
||||
2. To stage your changes, click **+**.
|
||||
|
||||

|
||||
|
||||
3. Type a commit message and then use `Ctrl+Enter` / `cmd+Enter` to commit the changes.
|
||||
|
||||

|
||||
|
||||
4. To create a PR, click the PR icon.
|
||||
|
||||

|
||||
|
||||
5. Select the branches that you want to merge into, then click **Create**.
|
||||
|
||||

|
||||
{% data reusables.codespaces.committing-link-to-procedure %}
|
||||
|
||||
### Next steps
|
||||
|
||||
|
||||
@@ -199,27 +199,7 @@ In the previous section, you used the `postCreateCommand` to install a set of pa
|
||||
|
||||
### Step 5: Commit your changes
|
||||
|
||||
Once you've made changes to your codespace, either new code or configuration changes, you'll want to commit your changes. Committing changes to your repository ensures that anyone else who creates a codespace from this repository has the same configuration. This also means that any customization you do, such as adding {% data variables.product.prodname_vscode %} extensions, will appear for all users.
|
||||
|
||||
1. In the Activity Bar, click on the **Source Control** view.
|
||||
|
||||

|
||||
|
||||
2. To stage your changes, click **+**.
|
||||
|
||||

|
||||
|
||||
3. Type a commit message and then use `Ctrl+Enter` / `cmd+Enter` to commit the changes.
|
||||
|
||||

|
||||
|
||||
4. To create a PR, click the PR icon.
|
||||
|
||||

|
||||
|
||||
5. Select the branches that you want to merge into, then click **Create**.
|
||||
|
||||

|
||||
{% data reusables.codespaces.committing-link-to-procedure %}
|
||||
|
||||
### Next steps
|
||||
|
||||
|
||||
@@ -5,10 +5,6 @@ versions:
|
||||
free-pro-team: '*'
|
||||
---
|
||||
|
||||
{% link_with_intro /about-codespaces %}
|
||||
|
||||
{% link_with_intro /about-billing-for-codespaces %}
|
||||
|
||||
{% link_with_intro /getting-started-with-your-nodejs-project-in-codespaces %}
|
||||
|
||||
{% link_with_intro /getting-started-with-your-python-project-in-codespaces %}
|
||||
|
||||
@@ -16,7 +16,9 @@ topics:
|
||||
|
||||
### Table of Contents
|
||||
|
||||
{% link_in_list /about-codespaces %}
|
||||
{% link_in_list /getting-started-with-codespaces %}
|
||||
{% link_in_list /setting-up-your-codespace %}
|
||||
{% link_in_list /developing-in-codespaces %}
|
||||
{% link_in_list /working-with-your-codespace %}
|
||||
{% link_in_list /codespaces-reference %}
|
||||
@@ -1,8 +1,8 @@
|
||||
---
|
||||
title: Configuring Codespaces for your project
|
||||
intro: You can set up a default configuration for every new codespace for your repository to ensure that contributors have all the tools and settings they need in their online development environment.
|
||||
intro: You can use a `devcontainer.json` file to define a {% data variables.product.prodname_codespaces %} environment for your repository.
|
||||
product: '{% data reusables.gated-features.codespaces %}'
|
||||
permissions: People with write permissions to a repository can create or edit the default codespace configuration.
|
||||
permissions: People with write permissions to a repository can create or edit the codespace configuration.
|
||||
redirect_from:
|
||||
- /github/developing-online-with-github-codespaces/configuring-github-codespaces-for-your-project
|
||||
- /github/developing-online-with-codespaces/configuring-codespaces-for-your-project
|
||||
@@ -14,27 +14,66 @@ topics:
|
||||
|
||||
{% data reusables.codespaces.release-stage %}
|
||||
|
||||
### About default codespace configurations
|
||||
### About dev containers
|
||||
|
||||
{% data reusables.codespaces.about-configuration %}
|
||||
A development container, or dev container, is the environment that {% data variables.product.prodname_codespaces %} uses to provide the tools and runtimes that your project needs for development. When working with a dev container in {% data variables.product.prodname_codespaces %} you can either [use the default configuration](#using-the-default-configuration), [use a pre-defined configuration](#using-a-pre-defined-container-configuration), or [create your own configuration](#creating-a-custom-codespace-configuration). The option you choose is dependent on the tools, runtimes, dependencies, and workflows that a user might need to be successful with your project.
|
||||
|
||||
If you don't define a configuration in your repository, {% data variables.product.prodname_dotcom %} creates a codespace with a base Linux image. The base Linux image includes tools for Python, Node.js, JavaScript, TypeScript, C++, Java, C#, F#, .NET Core, PHP, PowerShell, Go, Ruby, and Rust. For more information about the base Linux image, see the [`microsoft/vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/master/containers/codespaces-linux) repository.
|
||||
{% data variables.product.prodname_codespaces %} allows for customization on a per-project and per-branch basis with a `devcontainer.json` file. This configuration file determines the environment of every new codespace anyone creates for your repository by defining a development container that can include frameworks, tools, extensions, and port forwarding. A Dockerfile can also be used alongside the `devcontainer.json` file in the `.devcontainer` folder to define everything required to create a container image.
|
||||
|
||||
{% data reusables.codespaces.about-personalization %} {% data reusables.codespaces.codespace-config-order %} For more information, see "[Personalizing {% data variables.product.prodname_codespaces %} for your account](/github/developing-online-with-codespaces/personalizing-codespaces-for-your-account)."
|
||||
#### devcontainer.json
|
||||
|
||||
You can create a default codespace configuration using a pre-built container configuration for your project type, or you can create a custom configuration specific to your project's needs.
|
||||
{% data reusables.codespaces.devcontainer-location %}
|
||||
|
||||
{% data variables.product.prodname_codespaces %} uses settings contained in a configuration file named `devcontainer.json`. {% data reusables.codespaces.devcontainer-location %}
|
||||
You can use your `devcontainer.json` to set default settings for the entire codespace environment, including the editor, but you can also set editor-specific settings for individual [workspaces](https://code.visualstudio.com/docs/editor/workspaces) in a codespace in a file named `.vscode/settings.json`.
|
||||
|
||||
Each new codespace created from a branch that contains the `.devcontainer` folder will be configured according to the folder's contents. For more information, see "[Creating a codespace](/github/developing-online-with-codespaces/creating-a-codespace)."
|
||||
For information about the settings and properties that you can set in a `devcontainer.json`, see [devcontainer.json reference](https://aka.ms/vscode-remote/devcontainer.json) in the {% data variables.product.prodname_vscode %} documentation.
|
||||
|
||||
You can use your `devcontainer.json` to set default settings for the entire codespace environment, including the {% data variables.product.prodname_vscode %} editor, but you can also set editor-specific settings in a file named `.vscode/settings.json`.
|
||||
#### Dockerfile
|
||||
|
||||
### Using a pre-built container configuration
|
||||
A Dockerfile also lives in the `.devcontainer` folder.
|
||||
|
||||
Pre-built container definitions include a common configuration for a particular project type, and can help you quickly get started with a configuration that already has the appropriate container options, {% data variables.product.prodname_vscode %} settings, and {% data variables.product.prodname_vscode %} extensions that should be installed.
|
||||
You can add a Dockerfile to your project to define a container image and install software. In your Dockerfile, use `FROM` to designate the image, and the `RUN` instruction to install any software. For example:
|
||||
|
||||
1. Access the command palette (`shift command P` / `shift control P`), then start typing "Codespaces: Add Development Container Configuration Files...". Click **Codespaces: Add Development Container Configuration Files...**
|
||||
```Dockerfile
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:0-14
|
||||
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
# USER root
|
||||
#
|
||||
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
#
|
||||
# USER codespace
|
||||
```
|
||||
|
||||
Reference your Dockerfile in your `devcontainer.json` file by using the `dockerfile` property.
|
||||
|
||||
```json
|
||||
{
|
||||
...
|
||||
"build": { "dockerfile": "Dockerfile" },
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
For more information on using a Dockerfile in a dev container, see [](https://code.visualstudio.com/docs/remote/create-dev-container#_dockerfile) in the {% data variables.product.prodname_vscode %} documentation.
|
||||
|
||||
### Using the default configuration
|
||||
|
||||
If you don't define a configuration in your repository, {% data variables.product.prodname_dotcom %} creates a codespace with a base Linux image. The base Linux image includes languages and runtimes like Python, Node.js, JavaScript, TypeScript, C++, Java, .NET, PHP, PowerShell, Go, Ruby, and Rust. It also includes other developer tools and utilities like git, GitHub CLI, yarn, openssh, and vim. To see all the languages, runtimes, and tools that are included use the `devcontainer-info content-url` command inside your codespace terminal and follow the url.
|
||||
|
||||
For more information about everything that is included in the base Linux image, see the latest file in the [`microsoft/vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/master/containers/codespaces-linux/history) repository.
|
||||
|
||||
The default configuration is a good option if you're working on a small project that uses the languages and tools that {% data variables.product.prodname_codespaces %} provides.
|
||||
|
||||
|
||||
### Using a predefined container configuration
|
||||
|
||||
Predefined container definitions include a common configuration for a particular project type, and can help you quickly get started with a configuration that already has the appropriate container options, {% data variables.product.prodname_vscode %} settings, and {% data variables.product.prodname_vscode %} extensions that should be installed.
|
||||
|
||||
Using a predefined configuration is a great idea if you need some additional extensibility. You can also start with a predefined configuration and amend it as needed for your project's setup.
|
||||
|
||||
1. To access the command palette, in the upper-left corner, select the Application Menu and click **Command Palette…** from the **View** menu, then start typing "Codespaces: Add Development Container Configuration Files...". Click **Codespaces: Add Development Container Configuration Files...**
|
||||

|
||||
1. Click the definition you want to use.
|
||||

|
||||
@@ -44,11 +83,12 @@ Pre-built container definitions include a common configuration for a particular
|
||||
1. To apply the changes, in the bottom right corner of the screen, click **Rebuild now**. For more information about rebuilding your container, see "[Applying changes to your configuration](#applying-changes-to-your-configuration)."
|
||||

|
||||
|
||||
|
||||
### Creating a custom codespace configuration
|
||||
|
||||
If none of the pre-built configurations meet your needs, you can create a custom configuration by adding a `devcontainer.json` file. {% data reusables.codespaces.devcontainer-location %}
|
||||
If none of the predefined configurations meet your needs, you can create a custom configuration by adding a `devcontainer.json` file. {% data reusables.codespaces.devcontainer-location %}
|
||||
|
||||
In the file, you can use supported configuration keys to specify aspects of the codespace's environment, like which {% data variables.product.prodname_vscode %} extensions will be installed.
|
||||
In the file, you can use [supported configuration keys](https://code.visualstudio.com/docs/remote/devcontainerjson-reference) to specify aspects of the codespace's environment, like which {% data variables.product.prodname_vscode %} extensions will be installed.
|
||||
|
||||
{% data reusables.codespaces.vscode-settings-order %}
|
||||
|
||||
@@ -59,6 +99,7 @@ You can define default editor settings for {% data variables.product.prodname_vs
|
||||
|
||||
After updating the `devcontainer.json` file, you can rebuild the container for your codespace to apply the changes. For more information, see "[Applying changes to your configuration](#applying-changes-to-your-configuration)."
|
||||
|
||||
<!--
|
||||
### Supported codespace configuration keys
|
||||
|
||||
You can use configuration keys supported by {% data variables.product.prodname_codespaces %} in `devcontainer.json`.
|
||||
@@ -86,6 +127,7 @@ You can use configuration keys supported by {% data variables.product.prodname_c
|
||||
- `dockerComposeFile`
|
||||
|
||||
For more information about the available settings for `devcontainer.json`, see [devcontainer.json reference](https://aka.ms/vscode-remote/devcontainer.json) in the {% data variables.product.prodname_vscode %} documentation.
|
||||
-->
|
||||
|
||||
### Applying changes to your configuration
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Working with your codespace
|
||||
intro: 'You can use {% data variables.product.prodname_github_codespaces %} settings to manage information that your codespace might need'
|
||||
intro: 'You can use {% data variables.product.prodname_github_codespaces %} settings to manage information that your codespace might need.'
|
||||
product: '{% data reusables.gated-features.codespaces %}'
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
|
||||
@@ -11,11 +11,13 @@ topics:
|
||||
- SSH
|
||||
---
|
||||
|
||||
When you set up SSH, you'll [generate an SSH key and add it to the ssh-agent](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) and then [add the key to your {% data variables.product.product_name %} account](/articles/adding-a-new-ssh-key-to-your-github-account). Adding the SSH key to the ssh-agent ensures that your SSH key has an extra layer of security through the use of a passphrase. For more information, see "[Working with SSH key passphrases](/articles/working-with-ssh-key-passphrases)."
|
||||
When you set up SSH, you will need to generate a new SSH key and add it to the ssh-agent. You must add the SSH key to your account on {% data variables.product.product_name %} before you use the key to authenticate. For more information, see "[Generating a new SSH key and adding it to the ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)" and "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
|
||||
|
||||
{% if currentVersion == "free-pro-team@latest" %}To use your SSH key with a repository owned by an organization that uses SAML single sign-on, you'll need to authorize it first. For more information, see "[Authorizing an SSH key for use with SAML single sign-on](/articles/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %}
|
||||
You can further secure your SSH key by using a hardware security key, which requires the physical hardware security key to be attached to your computer when the key pair is used to authenticate with SSH. You can also secure your SSH key by adding your key to the ssh-agent and using a passphrase. For more information, see "[Working with SSH key passphrases](/github/authenticating-to-github/working-with-ssh-key-passphrases)."
|
||||
|
||||
We recommend that you regularly [review your SSH keys list](/articles/reviewing-your-ssh-keys) and revoke any that are invalid or have been compromised.
|
||||
{% if currentVersion == "free-pro-team@latest" %}To use your SSH key with a repository owned by an organization that uses SAML single sign-on, you must authorize the key. For more information, see "[Authorizing an SSH key for use with SAML single sign-on](/articles/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %}
|
||||
|
||||
To maintain account security, you can regularly review your SSH keys list and revoke any keys that are invalid or have been compromised. For more information, see "[Reviewing your SSH keys](/github/authenticating-to-github/reviewing-your-ssh-keys)."
|
||||
|
||||
{% if currentVersion == "free-pro-team@latest" %}
|
||||
If you haven't used your SSH key for a year, then {% data variables.product.prodname_dotcom %} will automatically delete your inactive SSH key as a security precaution. For more information, see "[Deleted or missing SSH keys](/articles/deleted-or-missing-ssh-keys)."
|
||||
@@ -27,8 +29,4 @@ If you're a member of an organization that provides SSH certificates, you can us
|
||||
|
||||
- "[Checking for existing SSH keys](/articles/checking-for-existing-ssh-keys)"
|
||||
- "[Testing your SSH connection](/articles/testing-your-ssh-connection)"
|
||||
- "[Working with SSH key passphrases](/articles/working-with-ssh-key-passphrases)"
|
||||
- "[Troubleshooting SSH](/articles/troubleshooting-ssh)"
|
||||
{%- if currentVersion == "free-pro-team@latest" %}
|
||||
- "[Authorizing an SSH key for use with SAML single sign-on](/articles/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)"
|
||||
{%- endif %}
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: 'Error: Unknown key type'
|
||||
intro: 'This error means that the SSH key type you used was unrecognized or is unsupported by your SSH client. '
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
enterprise-server: '>=3.2'
|
||||
github-ae: 'next'
|
||||
topics:
|
||||
- SSH
|
||||
---
|
||||
|
||||
### About the `unknown key type` error
|
||||
|
||||
When you generate a new SSH key, you may receive an `unknown key type` error if your SSH client does not support the key type that you specify.{% mac %}To solve this issue on macOS, you can update your SSH client or install a new SSH client.
|
||||
|
||||
### Prerequisites
|
||||
|
||||
You must have Homebrew installed. For more information, see the [installation guide](https://docs.brew.sh/Installation) in the Homebrew documentation.
|
||||
|
||||
### Solving the issue
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Warning:** If you install OpenSSH, your computer will not be able to retrieve passphrases that are stored in the Apple keychain. You will need to enter your passphrase or interact with your hardware security key every time you authenticate with SSH to {% data variables.product.prodname_dotcom %} or another web service.
|
||||
|
||||
If you remove OpenSSH, the passphrases that are stored in your keychain will once again be retrievable. You can remove OpenSSH by entering the command `brew uninstall openssh` in Terminal.
|
||||
|
||||
{% endwarning %}
|
||||
|
||||
1. Open Terminal.
|
||||
2. Enter the command `brew install openssh`.
|
||||
3. Quit and relaunch Terminal.
|
||||
4. Try the procedure for generating a new SSH key again. For more information, see "[Generating a new SSH key and adding it to the ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key-for-a-hardware-security-key)."
|
||||
|
||||
{% endmac %}{% linux %}To solve this issue on Linux, use the package manager for your Linux distribution to install a new version of OpenSSH, or compile a new version from source. If you install a different version of OpenSSH, the ability of other applications to authenticate via SSH may be affected. For more information, review the documentation for your distribution.{% endlinux %}
|
||||
@@ -13,9 +13,16 @@ topics:
|
||||
- SSH
|
||||
---
|
||||
|
||||
If you don't already have an SSH key, you must [generate a new SSH key](#generating-a-new-ssh-key). If you're unsure whether you already have an SSH key, check for [existing keys](/articles/checking-for-existing-ssh-keys).
|
||||
### About SSH key generation
|
||||
|
||||
If you don't want to reenter your passphrase every time you use your SSH key, you can [add your key to the SSH agent](#adding-your-ssh-key-to-the-ssh-agent), which manages your SSH keys and remembers your passphrase.
|
||||
If you don't already have an SSH key, you must generate a new SSH key to use for authentication. If you're unsure whether you already have an SSH key, you can check for existing keys. For more information, see "[Checking for existing SSH keys](/github/authenticating-to-github/checking-for-existing-ssh-keys)."
|
||||
|
||||
{% if currentVersion == "free-pro-team@latest" %}
|
||||
|
||||
If you want to use a hardware security key to authenticate to {% data variables.product.product_name %}, you must generate a new SSH key for your hardware security key. You must connect your hardware security key to your computer when you authenticate with the key pair. For more information, see the [OpenSSH 8.2 release notes](https://www.openssh.com/txt/release-8.2).
|
||||
|
||||
{% endif %}
|
||||
If you don't want to reenter your passphrase every time you use your SSH key, you can add your key to the SSH agent, which manages your SSH keys and remembers your passphrase.
|
||||
|
||||
### Generating a new SSH key
|
||||
|
||||
@@ -62,7 +69,7 @@ If you don't want to reenter your passphrase every time you use your SSH key, yo
|
||||
|
||||
{% endlinux %}
|
||||
|
||||
4. At the prompt, type a secure passphrase. For more information, see ["Working with SSH key passphrases"](/articles/working-with-ssh-key-passphrases).
|
||||
4. At the prompt, type a secure passphrase. For more information, see ["Working with SSH key passphrases](/articles/working-with-ssh-key-passphrases)."
|
||||
```shell
|
||||
> Enter passphrase (empty for no passphrase): <em>[Type a passphrase]</em>
|
||||
> Enter same passphrase again: <em>[Type passphrase again]</em>
|
||||
@@ -70,7 +77,7 @@ If you don't want to reenter your passphrase every time you use your SSH key, yo
|
||||
|
||||
### Adding your SSH key to the ssh-agent
|
||||
|
||||
Before adding a new SSH key to the ssh-agent to manage your keys, you should have [checked for existing SSH keys](/articles/checking-for-existing-ssh-keys) and [generated a new SSH key](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key). <span class="platform-mac">When adding your SSH key to the agent, use the default macOS `ssh-add` command, and not an application installed by [macports](https://www.macports.org/), [homebrew](http://brew.sh/), or some other external source.</span>
|
||||
Before adding a new SSH key to the ssh-agent to manage your keys, you should have checked for existing SSH keys and generated a new SSH key. <span class="platform-mac">When adding your SSH key to the agent, use the default macOS `ssh-add` command, and not an application installed by [macports](https://www.macports.org/), [homebrew](http://brew.sh/), or some other external source.</span>
|
||||
|
||||
{% mac %}
|
||||
|
||||
@@ -106,6 +113,25 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav
|
||||
|
||||
{% endnote %}
|
||||
|
||||
{% mac %}
|
||||
{% note %}
|
||||
|
||||
**Note:** If you see an error like this
|
||||
|
||||
```
|
||||
/Users/USER/.ssh/config: line 16: Bad configuration option: usekeychain
|
||||
```
|
||||
|
||||
add an additional config line to your `Host *` section:
|
||||
|
||||
```
|
||||
Host *
|
||||
IgnoreUnknown UseKeychain
|
||||
```
|
||||
|
||||
{% endnote %}
|
||||
{% endmac %}
|
||||
|
||||
3. Add your SSH private key to the ssh-agent and store your passphrase in the keychain. {% data reusables.ssh.add-ssh-key-to-ssh-agent %}
|
||||
```shell
|
||||
$ ssh-add -K ~/.ssh/id_ed25519
|
||||
@@ -118,7 +144,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav
|
||||
|
||||
{% endnote %}
|
||||
|
||||
4. [Add the SSH key to your GitHub account](/articles/adding-a-new-ssh-key-to-your-github-account).
|
||||
4. Add the SSH key to your account on {% data variables.product.product_name %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
|
||||
|
||||
{% endmac %}
|
||||
|
||||
@@ -136,7 +162,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav
|
||||
2. Add your SSH private key to the ssh-agent. {% data reusables.ssh.add-ssh-key-to-ssh-agent %}
|
||||
{% data reusables.ssh.add-ssh-key-to-ssh-agent-commandline %}
|
||||
|
||||
3. [Add the SSH key to your GitHub account](/articles/adding-a-new-ssh-key-to-your-github-account).
|
||||
3. Add the SSH key to your account on {% data variables.product.product_name %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
|
||||
|
||||
{% endwindows %}
|
||||
|
||||
@@ -147,10 +173,65 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav
|
||||
2. Add your SSH private key to the ssh-agent. {% data reusables.ssh.add-ssh-key-to-ssh-agent %}
|
||||
{% data reusables.ssh.add-ssh-key-to-ssh-agent-commandline %}
|
||||
|
||||
3. [Add the SSH key to your GitHub account](/articles/adding-a-new-ssh-key-to-your-github-account).
|
||||
3. Add the SSH key to your account on {% data variables.product.product_name %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
|
||||
|
||||
{% endlinux %}
|
||||
|
||||
{% if currentVersion == "free-pro-team@latest" or currentVersion == "github-ae@next" or currentVersion ver_gt "enterprise-server@3.1" %}
|
||||
### Generating a new SSH key for a hardware security key
|
||||
|
||||
If you are using macOS or Linux, you may need to update your SSH client or install a new SSH client prior to generating a new SSH key. For more information, see "[Error: Unknown key type](/github/authenticating-to-github/error-unknown-key-type)."
|
||||
|
||||
1. Insert your hardware security key into your computer.
|
||||
{% data reusables.command_line.open_the_multi_os_terminal %}
|
||||
3. Paste the text below, substituting in the email address for your account on {% data variables.product.product_name %}.
|
||||
```shell
|
||||
$ ssh-keygen -t ed25519-sk -C "<em>your_email@example.com</em>"
|
||||
```
|
||||
{% note %}
|
||||
|
||||
**Note:** If the command fails and you receive the error `invalid format` or `feature not supported,` you may be using a hardware security key that does not support the Ed25519 algorithm. Enter the following command instead.
|
||||
```shell
|
||||
$ ssh-keygen -t ecdsa-sk -C "your_email@example.com"
|
||||
```
|
||||
|
||||
{% endnote %}
|
||||
4. When you are prompted, touch the button on your hardware security key.
|
||||
5. When you are prompted to "Enter a file in which to save the key," press Enter to accept the default file location.
|
||||
|
||||
{% mac %}
|
||||
|
||||
```shell
|
||||
> Enter a file in which to save the key (/Users/<em>you</em>/.ssh/id_ed25519_sk): <em>[Press enter]</em>
|
||||
```
|
||||
|
||||
{% endmac %}
|
||||
|
||||
{% windows %}
|
||||
|
||||
```shell
|
||||
> Enter a file in which to save the key (/c/Users/<em>you</em>/.ssh/id_ed25519_sk):<em>[Press enter]</em>
|
||||
```
|
||||
|
||||
{% endwindows %}
|
||||
|
||||
{% linux %}
|
||||
|
||||
```shell
|
||||
> Enter a file in which to save the key (/home/<em>you</em>/.ssh/id_ed25519_sk): <em>[Press enter]</em>
|
||||
```
|
||||
|
||||
{% endlinux %}
|
||||
|
||||
6. When you are prompted to type a passphrase, press **Enter**.
|
||||
```shell
|
||||
> Enter passphrase (empty for no passphrase): <em>[Type a passphrase]</em>
|
||||
> Enter same passphrase again: <em>[Type passphrase again]</em>
|
||||
```
|
||||
7. Add the SSH key to your account on {% data variables.product.prodname_dotcom %}. For more information, see "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)."
|
||||
|
||||
{% endif %}
|
||||
|
||||
### Further reading
|
||||
|
||||
- "[About SSH](/articles/about-ssh)"
|
||||
|
||||
@@ -79,6 +79,7 @@ topics:
|
||||
{% link_in_list /error-agent-admitted-failure-to-sign %}
|
||||
{% link_in_list /error-ssh-add-illegal-option----k %}
|
||||
{% link_in_list /error-ssl-certificate-problem-verify-that-the-ca-cert-is-ok %}
|
||||
{% link_in_list /error-unknown-key-type %}
|
||||
{% link_in_list /error-were-doing-an-ssh-key-audit %}
|
||||
{% topic_link_in_list /managing-commit-signature-verification %}
|
||||
{% link_in_list /about-commit-signature-verification %}
|
||||
|
||||
@@ -85,7 +85,7 @@ This example workflow runs anytime commits are pushed to the repository. The act
|
||||
|
||||
The workflow shows an example of running the ESLint static analysis tool as a step in a workflow. The `Run ESLint` step runs the ESLint tool and outputs the `results.sarif` file. The workflow then uploads the `results.sarif` file to {% data variables.product.prodname_dotcom %} using the `upload-sarif` action. For more information about creating a workflow file, see "[Introduction to GitHub Actions](/actions/learn-github-actions/introduction-to-github-actions)."
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
name: "ESLint analysis"
|
||||
|
||||
# Run workflow each time code is pushed to your repository and on a schedule.
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
---
|
||||
title: GitHub language support
|
||||
intro: 'An overview of the programming languages supported by {% data variables.product.prodname_dotcom %} features.'
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
enterprise-server: '>=2.22'
|
||||
github-ae: '*'
|
||||
topics:
|
||||
- GitHub
|
||||
---
|
||||
<!-- If you make changes to this article, also update any feature-level articles to reflect the same changes in language support. -->
|
||||
|
||||
### About supported languages
|
||||
|
||||
Most {% data variables.product.prodname_dotcom %} features work regardless of which languages your code is written in. You can search for code or enable syntax highlighting based on any language known to {% data variables.product.prodname_dotcom %}. For more information, see "[Searching code](/github/searching-for-information-on-github/searching-code#search-by-language)" or "[Creating and highlighting code blocks](/github/writing-on-github/creating-and-highlighting-code-blocks#syntax-highlighting)."
|
||||
|
||||
Some {% data variables.product.prodname_dotcom %} products have features that are currently only supported for a subset of programming languages.
|
||||
|
||||
### Core languages supported by {% data variables.product.prodname_dotcom %} features
|
||||
|
||||
Core languages for {% data variables.product.prodname_dotcom %} features include C, C++, C#, Go, Java, JavaScript, PHP, Python, Ruby, Scala, and TypeScript. For features that support package managers, the currently supported package managers are included in the table with their relevant languages.
|
||||
|
||||
Some features are supported for additional languages or package managers. If you want to know whether another language is supported for a feature or to request support for a language, visit the [Community Forum](https://github.community/).
|
||||
|
||||
| Language {% data reusables.supported-languages.products-table-header %}
|
||||
{% data reusables.supported-languages.C %}
|
||||
{% data reusables.supported-languages.Cpp %}
|
||||
{% data reusables.supported-languages.Cs %}
|
||||
{% data reusables.supported-languages.go %}
|
||||
{% data reusables.supported-languages.java %}
|
||||
{% data reusables.supported-languages.javascript %}
|
||||
{% data reusables.supported-languages.php %}
|
||||
{% data reusables.supported-languages.python %}
|
||||
{% data reusables.supported-languages.ruby %}
|
||||
{% data reusables.supported-languages.scala %}
|
||||
{% data reusables.supported-languages.typescript %}
|
||||
|
||||
[1] These languages are supported for {% data variables.product.prodname_code_scanning %} by third-party actions.
|
||||
@@ -16,6 +16,8 @@ topics:
|
||||
- Security
|
||||
---
|
||||
|
||||
### About {% data variables.product.prodname_dotcom %}'s products
|
||||
|
||||
{% data variables.product.prodname_dotcom %} offers free and paid products. You can see pricing and a full list of features for each product at <{% data variables.product.pricing_url %}>. {% data reusables.products.product-roadmap %}
|
||||
|
||||
### {% data variables.product.prodname_free_user %} for user accounts
|
||||
|
||||
@@ -52,7 +52,6 @@ topics:
|
||||
<!-- {% link_with_intro /exploring-projects-on-github %} -->
|
||||
<!-- {% link_with_intro /using-github %} -->
|
||||
|
||||
|
||||
### Table of Contents
|
||||
|
||||
{% topic_link_in_list /quickstart %}
|
||||
@@ -66,6 +65,7 @@ topics:
|
||||
|
||||
{% topic_link_in_list /learning-about-github %}
|
||||
{% link_in_list /githubs-products %}
|
||||
{% link_in_list /github-language-support %}
|
||||
{% link_in_list /about-github-advanced-security %}
|
||||
{% link_in_list /types-of-github-accounts %}
|
||||
{% link_in_list /access-permissions-on-github %}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Learning about GitHub
|
||||
intro: ''
|
||||
intro: '{% data variables.product.prodname_dotcom %} has a variety of products and account types to help you build software and collaborate with other people.'
|
||||
mapTopic: true
|
||||
redirect_from:
|
||||
- /articles/learning-about-github
|
||||
|
||||
@@ -8,6 +8,7 @@ versions:
|
||||
topics:
|
||||
- Repositories
|
||||
---
|
||||
<!-- If you make changes to this feature, update /getting-started-with-github/github-language-support to reflect any changes to supported languages. -->
|
||||
|
||||
### About navigating code on {% data variables.product.prodname_dotcom %}
|
||||
|
||||
|
||||
@@ -66,8 +66,9 @@ You can use the `path` qualifier to search for source code that appears at a spe
|
||||
| <code>path:<em>PATH/TO/DIRECTORY</em></code> | [**console path:app/public language:javascript**](https://github.com/search?q=console+path%3A%22app%2Fpublic%22+language%3Ajavascript&type=Code) matches JavaScript files with the word "console" in an <em>app/public</em> directory, or in any of its subdirectories (even if they reside in <em>app/public/js/form-validators</em>).
|
||||
|
||||
### Search by language
|
||||
<!-- If you make changes to this feature, update /getting-started-with-github/github-language-support to reflect any changes. -->
|
||||
|
||||
You can search for code based on what language it's written in.
|
||||
You can search for code based on what language it's written in. The `language` qualifier can be the language name or alias. For a full list of supported languages with their names and aliases, see the [github/linguist repository]((https://github.com/github/linguist/blob/master/lib/linguist/languages.yml).
|
||||
|
||||
| Qualifier | Example
|
||||
| ------------- | -------------
|
||||
|
||||
@@ -47,6 +47,7 @@ You can use the dependency graph to:
|
||||
When the dependency graph is first enabled, any manifest and lock files for supported ecosystems are parsed immediately. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. Once enabled, the graph is automatically updated with every push to the repository.
|
||||
|
||||
### Supported package ecosystems
|
||||
<!-- If you make changes to this feature, update /getting-started-with-github/github-language-support to reflect any changes to supported packages. -->
|
||||
|
||||
The recommended formats explicitly define which versions are used for all direct and all indirect dependencies. If you use these formats, your dependency graph is more accurate. It also reflects the current build set up and enables the dependency graph to report vulnerabilities in both direct and indirect dependencies.
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@ function test() {
|
||||
{% endtip %}
|
||||
|
||||
### Syntax highlighting
|
||||
<!-- If you make changes to this feature, update /getting-started-with-github/github-language-support to reflect any changes to supported languages. -->
|
||||
|
||||
You can add an optional language identifier to enable syntax highlighting in your fenced code block.
|
||||
|
||||
|
||||
@@ -56,6 +56,7 @@ For more information, see "[About permissions for {% data variables.product.prod
|
||||
{% endif %}
|
||||
|
||||
### Supported clients and formats
|
||||
<!-- If you make changes to this feature, update /getting-started-with-github/github-language-support to reflect any changes to supported clients or formats. -->
|
||||
|
||||
{% data variables.product.prodname_registry %} uses the native package tooling commands you're already familiar with to publish and install package versions.
|
||||
#### Support for package registries
|
||||
|
||||
@@ -31,7 +31,7 @@ You can authenticate to {% data variables.product.prodname_registry %} with Apac
|
||||
|
||||
In the `servers` tag, add a child `server` tag with an `id`, replacing *USERNAME* with your {% data variables.product.prodname_dotcom %} username, and *TOKEN* with your personal access token.
|
||||
|
||||
In the `repositories` tag, configure a repository by mapping the `id` of the repository to the `id` you added in the `server` tag containing your credentials. Replace {% if enterpriseServerVersions contains currentVersion or currentVersion == "github-ae@latest" %}*HOSTNAME* with the host name of {% data variables.product.product_location %}, {% endif %}, and *OWNER* with the name of the user or organization account that owns the repository. Because uppercase letters aren't supported, you must use lowercase letters for the repository owner even if the {% data variables.product.prodname_dotcom %} user or organization name contains uppercase letters.
|
||||
In the `repositories` tag, configure a repository by mapping the `id` of the repository to the `id` you added in the `server` tag containing your credentials. Replace {% if enterpriseServerVersions contains currentVersion or currentVersion == "github-ae@latest" %}*HOSTNAME* with the host name of {% data variables.product.product_location %}, and{% endif %} *OWNER* with the name of the user or organization account that owns the repository. Because uppercase letters aren't supported, you must use lowercase letters for the repository owner even if the {% data variables.product.prodname_dotcom %} user or organization name contains uppercase letters.
|
||||
|
||||
If you want to interact with multiple repositories, you can add each repository to separate `repository` children in the `repositories` tag, mapping the `id` of each to the credentials in the `servers` tag.
|
||||
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
---
|
||||
title: Disabling your GitHub Sponsors account
|
||||
intro: 'If you no longer want to participate in {% data variables.product.prodname_sponsors %}, you can disable your {% data variables.product.prodname_sponsors %} account.'
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
type: how_to
|
||||
topics:
|
||||
- Open Source
|
||||
- Sponsors payments
|
||||
---
|
||||
|
||||
If you are receiving sponsorship payments, you'll need to contact GitHub Support to disable your {% data variables.product.prodname_sponsors %} account.
|
||||
|
||||
If you don't have any sponsors, then you can disable your {% data variables.product.prodname_sponsors %} account on GitHub.
|
||||
|
||||
If you decide to create a {% data variables.product.prodname_sponsors %} account again, you'll need to reapply.
|
||||
|
||||
Alternatively, you can unpublish your sponsors profile and then republish the account without reapplying again. For more information, see "[Unpublishing your {% data variables.product.prodname_sponsors %} profile](/sponsors/receiving-sponsorships-through-github-sponsors/unpublishing-your-github-sponsors-profile)."
|
||||
|
||||
{% data reusables.sponsors.navigate-to-sponsors-dashboard %}
|
||||
{% data reusables.sponsors.settings-tab %}
|
||||
1. Under "Disable GitHub Sponsors account", click **Disable account**.
|
||||

|
||||
2. To confirm, click **Disable GitHub Sponsors account**.
|
||||

|
||||
@@ -20,3 +20,5 @@ versions:
|
||||
{% link_with_intro /managing-your-payouts-from-github-sponsors %}
|
||||
{% link_with_intro /contacting-your-sponsors %}
|
||||
{% link_with_intro /tax-information-for-github-sponsors %}
|
||||
{% link_with_intro /disabling-your-github-sponsors-account %}
|
||||
{% link_with_intro /unpublishing-your-github-sponsors-profile %}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
title: Unpublishing your GitHub Sponsors profile
|
||||
intro: 'If you don''t have any sponsors, you can unpublish your {% data variables.product.prodname_sponsors %} profile.'
|
||||
versions:
|
||||
free-pro-team: '*'
|
||||
type: how_to
|
||||
topics:
|
||||
- Open Source
|
||||
- Sponsors payments
|
||||
---
|
||||
|
||||
If you have sponsors, you'll need to contact GitHub Support to help you unpublish your {% data variables.product.prodname_sponsors %} account.
|
||||
|
||||
After your {% data variables.product.prodname_sponsors %} account is unpublished:
|
||||
- You'll no longer receive sponsorship payments.
|
||||
- You can request to re-publish your profile.
|
||||
|
||||
{% data reusables.sponsors.navigate-to-sponsors-dashboard %}
|
||||
{% data reusables.sponsors.settings-tab %}
|
||||
3. Under "Unpublish your GitHub Sponsors profile", click **Unpublish profile**.
|
||||

|
||||
4. To confirm, click "Unpublish GitHub Sponsors account".
|
||||

|
||||
@@ -18,11 +18,6 @@ sections:
|
||||
|
||||
Administrators using {% data variables.product.prodname_GH_advanced_security %} can [enable and configure](/enterprise-server@3.1/admin/configuration/configuring-secret-scanning-for-your-appliance) {% data variables.product.prodname_GH_advanced_security %} secret scanning. You can review the [updated minimum requirements for your platform](/enterprise-server@3.1/admin/installation/setting-up-a-github-enterprise-server-instance) before you turn on {% data variables.product.prodname_GH_advanced_security %} secret scanning.
|
||||
|
||||
- heading: GitHub Advanced Security Code Scanning
|
||||
notes:
|
||||
- |
|
||||
[{% data variables.product.prodname_GH_advanced_security %} code scanning](https://github.com/features/security) is now generally available on {% data variables.product.prodname_ghe_server %} 3.1+. Organizations who have purchased {% data variables.product.prodname_GH_advanced_security %} can use this capability to do static analysis security testing against their code, and prevent vulnerabilities from making it to their production code using CodeQL, our semantic analysis engine. For more information, see "[Configuring code scanning on your appliance](/en/enterprise-server@3.1/admin/configuration/configuring-code-scanning-for-your-appliance#running-code-scanning-using-github-actions)."
|
||||
|
||||
- heading: GitHub Advanced Security billing improvements
|
||||
notes:
|
||||
- |
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
<!-- If you update the list of supported languages for CodeQL, update /github/getting-started-with-github/github-language-support to reflect the changes. -->
|
||||
- C/C++
|
||||
- C#
|
||||
- Go
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
Once you've made changes to your codespace, either new code or configuration changes, you'll want to commit your changes. Committing changes to your repository ensures that anyone else who creates a codespace from this repository has the same configuration. This also means that any customization you do, such as adding {% data variables.product.prodname_vscode %} extensions, will appear for all users.
|
||||
|
||||
For information, see "[Using source control in your codespace](/codespaces/developing-in-codespaces/using-source-control-in-your-codespace#committing-your-changes)."
|
||||
2
data/reusables/codespaces/source-control-display-dark.md
Normal file
@@ -0,0 +1,2 @@
|
||||
1. In the Activity Bar, click the **Source Control** view.
|
||||

|
||||
3
data/reusables/codespaces/source-control-display.md
Normal file
@@ -0,0 +1,3 @@
|
||||
1. In the Activity Bar, click the **Source Control** view.
|
||||
|
||||

|
||||
@@ -1,2 +1,2 @@
|
||||
1. In the left sidebar, under the user's profile picture, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Block or report user**.
|
||||

|
||||
1. In the left sidebar, below the user's profile information, click **Block or Report**.
|
||||

|
||||
|
||||
1
data/reusables/supported-languages/C.md
Normal file
@@ -0,0 +1 @@
|
||||
| C {% if currentVersion == "free-pro-team@latest" %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %}
|
||||
1
data/reusables/supported-languages/Cpp.md
Normal file
@@ -0,0 +1 @@
|
||||
| C++ {% if currentVersion == "free-pro-team@latest" %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %}
|
||||
1
data/reusables/supported-languages/Cs.md
Normal file
@@ -0,0 +1 @@
|
||||
| C# {% if currentVersion == "free-pro-team@latest" %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>`dotnet` CLI | {% octicon "check" aria-label="The check icon" %}<br>`dotnet` CLI | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>`dotnet` CLI |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>`dotnet` CLI | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>`dotnet` CLI |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>`dotnet` CLI |{% endif %}
|
||||
1
data/reusables/supported-languages/go.md
Normal file
@@ -0,0 +1 @@
|
||||
| Go {% if currentVersion == "free-pro-team@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %}<br> Go modules | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %}
|
||||
1
data/reusables/supported-languages/java.md
Normal file
@@ -0,0 +1 @@
|
||||
| Java {% if currentVersion == "free-pro-team@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>Maven | {% octicon "check" aria-label="The check icon" %}<br>Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>Maven, Gradle |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>Maven | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>Maven, Gradle |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>Maven, Gradle |{% endif %}
|
||||
1
data/reusables/supported-languages/javascript.md
Normal file
@@ -0,0 +1 @@
|
||||
| JavaScript {% if currentVersion == "free-pro-team@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm, Yarn | {% octicon "check" aria-label="The check icon" %}<br>npm | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm, Yarn | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm |{% endif %}
|
||||
1
data/reusables/supported-languages/php.md
Normal file
@@ -0,0 +1 @@
|
||||
| PHP {% if currentVersion == "free-pro-team@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %}<br>Composer | {% octicon "check" aria-label="The check icon" %}<br>Composer | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %}<br>Composer | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %}
|
||||
@@ -0,0 +1,4 @@
|
||||
{% if currentVersion == "free-pro-team@latest" %}| [Code navigation](/github/managing-files-in-a-repository/navigating-code-on-github) | [{% data variables.product.prodname_code_scanning_capc %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning) | [Dependency graph, {% data variables.product.prodname_dependabot_alerts %}, {% data variables.product.prodname_dependabot_security_updates %}](/code-security/supply-chain-security/about-the-dependency-graph#supported-package-ecosystems) | [{% data variables.product.prodname_dependabot_version_updates %}](/code-security/supply-chain-security/about-dependabot-version-updates#supported-repositories-and-ecosystems) | [{% data variables.product.prodname_actions %}](/actions/guides/about-continuous-integration#supported-languages) | [{% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages#supported-clients-and-formats) |
|
||||
| :-- | :-: | :-: | :-: | :-: | :-: | :-: |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| [{% data variables.product.prodname_code_scanning_capc %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning) | [Dependency graph, {% data variables.product.prodname_dependabot_alerts %}](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems) | [{% data variables.product.prodname_actions %}](/actions/guides/about-continuous-integration#supported-languages) | [{% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages#supported-clients-and-formats) |
|
||||
| :-- | :-: | :-: | :-: | :-: |{% elsif currentVersion == "github-ae@latest" %}| [{% data variables.product.prodname_code_scanning_capc %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning) | [{% data variables.product.prodname_actions %}](/actions/guides/about-continuous-integration#supported-languages) | [{% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages#supported-clients-and-formats) |
|
||||
| :-- | :-: | :-: | :-: |{% endif %}
|
||||
1
data/reusables/supported-languages/python.md
Normal file
@@ -0,0 +1 @@
|
||||
| Python {% if currentVersion == "free-pro-team@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>pip | {% octicon "check" aria-label="The check icon" %}<br>pip | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>pip | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %}
|
||||
1
data/reusables/supported-languages/ruby.md
Normal file
@@ -0,0 +1 @@
|
||||
| Ruby {% if currentVersion == "free-pro-team@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %}<br>RubyGems | {% octicon "check" aria-label="The check icon" %}<br>RubyGems | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>RubyGems |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %}<br>RubyGems | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>RubyGems |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>RubyGems |{% endif %}
|
||||
1
data/reusables/supported-languages/scala.md
Normal file
@@ -0,0 +1 @@
|
||||
| Scala {% if currentVersion == "free-pro-team@latest" %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %}<br>Maven | {% octicon "check" aria-label="The check icon" %}<br>Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %}<br>Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %}<sup>1</sup> | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %}
|
||||
1
data/reusables/supported-languages/typescript.md
Normal file
@@ -0,0 +1 @@
|
||||
| TypeScript {% if currentVersion == "free-pro-team@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm, Yarn | {% octicon "check" aria-label="The check icon" %}<br>npm | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm |{% elsif currentVersion ver_gt "enterprise-server@2.21" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm, Yarn | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm |{% elsif currentVersion == "github-ae@latest" %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}<br>npm |{% endif %}
|
||||
@@ -8,7 +8,7 @@ The *path*, *filename*, and *keys* within each YAML file determine what its path
|
||||
|
||||
For example, given a file `data/variables/foo/bar.yml`:
|
||||
|
||||
```yml
|
||||
```yaml
|
||||
# multiple short strings in one file
|
||||
meaning_of_life: 42
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{% if currentVersion != 'homepage' %}
|
||||
<li title="Home">
|
||||
<a href="/{{currentLanguage}}" class="f6 pl-4 pr-5 ml-n1 pb-1">
|
||||
<a href="/{{currentLanguage}}" class="f6 pl-4 pr-5 ml-n1 pb-1 color-text-primary">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" class="octicon" viewBox="0 0 16 16" width="16" height="16"> <path fill-rule="evenodd" clip-rule="evenodd" d="M7.78033 12.5303C7.48744 12.8232 7.01256 12.8232 6.71967 12.5303L2.46967 8.28033C2.17678 7.98744 2.17678 7.51256 2.46967 7.21967L6.71967 2.96967C7.01256 2.67678 7.48744 2.67678 7.78033 2.96967C8.07322 3.26256 8.07322 3.73744 7.78033 4.03033L4.81066 7L12.25 7C12.6642 7 13 7.33579 13 7.75C13 8.16421 12.6642 8.5 12.25 8.5L4.81066 8.5L7.78033 11.4697C8.07322 11.7626 8.07322 12.2374 7.78033 12.5303Z"></path></svg>
|
||||
All products
|
||||
</a>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
title="{{product.name}}{% if product.external %} (External Site){% endif %}"
|
||||
class="sidebar-product"
|
||||
>
|
||||
<a href="{% unless product.external %}/{{currentLanguage}}{% endunless %}{% if product.versions contains currentVersion %}/{{currentVersion}}/{{product.id}}{% else %}{{product.href}}{% endif %}" {% if product.external %}target="_blank"{% endif %} class="f4 pl-4 pr-5 py-2">
|
||||
<a href="{% unless product.external %}/{{currentLanguage}}{% endunless %}{% if product.versions contains currentVersion %}/{{currentVersion}}/{{product.id}}{% else %}{{product.href}}{% endif %}" {% if product.external %}target="_blank"{% endif %} class="f4 pl-4 pr-5 py-2 color-text-primary">
|
||||
{{ product.name }}
|
||||
{% if product.external %}
|
||||
<span class="ml-1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="octicon" width="16" height="16"> <path fill-rule="evenodd" clip-rule="evenodd" d="M14.75 1C14.8163 1 14.8799 1.02634 14.9268 1.07322C14.9737 1.12011 15 1.1837 15 1.25V5.396C15.0001 5.44551 14.9855 5.49393 14.958 5.53513C14.9305 5.57632 14.8915 5.60843 14.8457 5.62739C14.8 5.64635 14.7497 5.6513 14.7011 5.64162C14.6525 5.63194 14.608 5.60805 14.573 5.573L13.03 4.03L8.53 8.53C8.38783 8.66248 8.19978 8.7346 8.00548 8.73118C7.81118 8.72775 7.62579 8.64903 7.48838 8.51162C7.35097 8.37421 7.27225 8.18882 7.26883 7.99452C7.2654 7.80022 7.33752 7.61217 7.47 7.47L11.97 2.97L10.427 1.427C10.3919 1.39204 10.3681 1.34745 10.3584 1.2989C10.3487 1.25034 10.3536 1.20001 10.3726 1.15427C10.3916 1.10853 10.4237 1.06945 10.4649 1.04199C10.5061 1.01453 10.5545 0.999912 10.604 1H14.75ZM2.75 2C2.28587 2 1.84075 2.18437 1.51256 2.51256C1.18437 2.84075 1 3.28587 1 3.75V13.25C1 14.216 1.784 15 2.75 15H12.25C12.7141 15 13.1592 14.8156 13.4874 14.4874C13.8156 14.1592 14 13.7141 14 13.25V9.75C14 9.55109 13.921 9.36032 13.7803 9.21967C13.6397 9.07902 13.4489 9 13.25 9C13.0511 9 12.8603 9.07902 12.7197 9.21967C12.579 9.36032 12.5 9.55109 12.5 9.75V13.25C12.5 13.3163 12.4737 13.3799 12.4268 13.4268C12.3799 13.4737 12.3163 13.5 12.25 13.5H2.75C2.6837 13.5 2.62011 13.4737 2.57322 13.4268C2.52634 13.3799 2.5 13.3163 2.5 13.25V3.75C2.5 3.6837 2.52634 3.62011 2.57322 3.57322C2.62011 3.52634 2.6837 3.5 2.75 3.5H6.25C6.44891 3.5 6.63968 3.42098 6.78033 3.28033C6.92098 3.13968 7 2.94891 7 2.75C7 2.55109 6.92098 2.36032 6.78033 2.21967C6.63968 2.07902 6.44891 2 6.25 2H2.75Z"></path></svg></span>
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
{% include all-products-link %}
|
||||
<li title="{{product.title}}" class="sidebar-product mb-2">
|
||||
{% unless page.hidden %}
|
||||
<a href="{{product.href}}" class="pl-4 pr-5 pb-1 f4">{{ product.title }}</a>
|
||||
<a href="{{product.href}}" class="pl-4 pr-5 pb-1 f4 color-text-primary">{{ product.title }}</a>
|
||||
{% endunless %}
|
||||
</li>
|
||||
<li>
|
||||
@@ -21,12 +21,12 @@
|
||||
<li class="sidebar-category py-1 {% if breadcrumbs.category.href == category[1].href %}active {% if currentPath == fullPathToCategory %}is-current-page {% endif %}{% endif %}{% if category[1].standalone %}standalone-category{% endif %}">
|
||||
{% if category[1].shortTitle %}{% assign categoryTitle = category[1].shortTitle %}{% else %}{% assign categoryTitle = category[1].title %}{% endif %}
|
||||
{% if category[1].standalone %}
|
||||
<a href="{{fullPathToCategory}}" class="pl-4 pr-2 py-2 f6 text-uppercase d-block flex-auto mr-3">{{ categoryTitle }}</a>
|
||||
<a href="{{fullPathToCategory}}" class="pl-4 pr-2 py-2 f6 text-uppercase d-block flex-auto mr-3 color-text-primary">{{ categoryTitle }}</a>
|
||||
{% else %}
|
||||
<details class="dropdown-withArrow details details-reset" {% if breadcrumbs.category.href == category[1].href or forloop.index < 4 %}open{% endif %}>
|
||||
<summary>
|
||||
<div class="d-flex flex-justify-between">
|
||||
<a href="{{fullPathToCategory}}" class="pl-4 pr-2 py-2 f6 text-uppercase d-block flex-auto mr-3">{{ categoryTitle }}</a>
|
||||
<a href="{{fullPathToCategory}}" class="pl-4 pr-2 py-2 f6 text-uppercase d-block flex-auto mr-3 color-text-primary">{{ categoryTitle }}</a>
|
||||
{% if breadcrumbs.category.href == category[1].href or forloop.index < 4 %}
|
||||
<svg xmlns="http://www.w3.org/2000/svg" class="octicon flex-shrink-0 arrow mr-3" style="margin-top:7px" viewBox="0 0 16 16" width="16" height="16"> <path fill-rule="evenodd" clip-rule="evenodd" d="M12.7803 6.21967C13.0732 6.51256 13.0732 6.98744 12.7803 7.28033L8.53033 11.5303C8.23744 11.8232 7.76256 11.8232 7.46967 11.5303L3.21967 7.28033C2.92678 6.98744 2.92678 6.51256 3.21967 6.21967C3.51256 5.92678 3.98744 5.92678 4.28033 6.21967L8 9.93934L11.7197 6.21967C12.0126 5.92678 12.4874 5.92678 12.7803 6.21967Z"></path></svg>
|
||||
{% endif %}
|
||||
@@ -43,7 +43,7 @@
|
||||
{% if maptopic[1].shortTitle %}{% assign maptopicTitle = maptopic[1].shortTitle %}{% else %}{% assign maptopicTitle = maptopic[1].title %}{% endif %}
|
||||
|
||||
<li class="sidebar-maptopic {% if breadcrumbs.maptopic.href == maptopic[1].href %}active {% if currentPath == fullPathToMaptopic %}is-current-page{% endif %}{% endif %}">
|
||||
<a href="{{fullPathToMaptopic}}" class="pl-4 pr-5 py-2">{{ maptopicTitle }}</a>
|
||||
<a href="{{fullPathToMaptopic}}" class="pl-4 pr-5 py-2 color-text-primary">{{ maptopicTitle }}</a>
|
||||
<ul class="sidebar-articles my-2">
|
||||
{% for article in maptopic[1].articles %}
|
||||
{% unless article[1].hidden %}
|
||||
@@ -51,7 +51,7 @@
|
||||
{% if article[1].shortTitle %}{% assign articleTitle = article[1].shortTitle %}{% else %}{% assign articleTitle = article[1].title %}{% endif %}
|
||||
|
||||
<li class="sidebar-article {% if breadcrumbs.article.href == article[1].href %}active {% if currentPath == fullPathToArticle %}is-current-page{% endif %}{% endif %}">
|
||||
<a href="{{fullPathToArticle}}" class="pl-6 pr-5 py-1{% if forloop.last %} pb-2{% endif %}">{{ articleTitle }}</a>
|
||||
<a href="{{fullPathToArticle}}" class="pl-6 pr-5 py-1{% if forloop.last %} pb-2{% endif %} color-text-primary">{{ articleTitle }}</a>
|
||||
</li>
|
||||
{% endunless %}
|
||||
{% endfor %}
|
||||
@@ -68,7 +68,7 @@
|
||||
{% capture fullPathToArticle %}{{article[1].href}}{% endcapture %}
|
||||
{% if article[1].shortTitle %}{% assign articleTitle = article[1].shortTitle %}{% else %}{% assign articleTitle = article[1].title %}{% endif %}
|
||||
<li class="sidebar-article {% if breadcrumbs.article.href == article[1].href %}active {% if currentPath == fullPathToArticle %}is-current-page{% endif %}{% endif %}">
|
||||
<a href="{{fullPathToArticle}}" class="pl-4 pr-5 py-1{% if forloop.last %} pb-2{% endif %}">{{ articleTitle }}</a>
|
||||
<a href="{{fullPathToArticle}}" class="pl-4 pr-5 py-1{% if forloop.last %} pb-2{% endif %} color-text-primary">{{ articleTitle }}</a>
|
||||
</li>
|
||||
{% endunless %}
|
||||
{% endfor %}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<!-- product > category > maptopic > article -->
|
||||
<div class="sidebar d-none d-lg-block">
|
||||
<div class="sidebar d-none d-lg-block color-bg-tertiary">
|
||||
|
||||
<div class="d-flex flex-items-center p-4 position-sticky top-0 sidebar-background-color" style="z-index: 3;" id="github-logo" role="banner">
|
||||
<a href="/{{ currentLanguage }}" class="color-text-inverse" aria-hidden="true" tabindex="-1">
|
||||
<div class="d-flex flex-items-center p-4 position-sticky top-0 color-bg-tertiary" style="z-index: 3;" id="github-logo" role="banner">
|
||||
<a href="/{{ currentLanguage }}" class="color-text-primary" aria-hidden="true" tabindex="-1">
|
||||
{% octicon "mark-github" height="32" %}
|
||||
</a>
|
||||
<a href="/{{ currentLanguage }}" class="h4-mktg color-text-inverse no-underline no-wrap pl-2 flex-auto">{% data ui.header.github_docs %}</a>
|
||||
<a href="/{{ currentLanguage }}" class="h4-mktg color-text-primary no-underline no-wrap pl-2 flex-auto">{% data ui.header.github_docs %}</a>
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
{% include head %}
|
||||
|
||||
<body class="d-lg-flex">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Docs TOC</title>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<!doctype html>
|
||||
{% assign error = '404' %}
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
{% include head %}
|
||||
|
||||
<body class="d-lg-flex error-404">
|
||||
@@ -19,10 +19,6 @@
|
||||
{% data ui.errors.page_doesnt_exist %}
|
||||
</div>
|
||||
|
||||
<div class="col-md-8 col-lg-6 mx-auto">
|
||||
<img src="/assets/images/site/waldocat.png" alt="waldocat">
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 mt-6">
|
||||
<h3 class="mb-3">{% data ui.search.need_help %}</h3>
|
||||
{% include search-form %}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
{% include head %}
|
||||
<body>
|
||||
{% include header %}
|
||||
@@ -16,8 +16,6 @@
|
||||
{% if error %}
|
||||
<pre><code>{{ error.stack }}</code></pre>
|
||||
{% endif %}
|
||||
|
||||
<img src="/assets/images/site/labtocat.png" alt="labtocat">
|
||||
</article>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
{% include head %}
|
||||
|
||||
<body class="d-lg-flex">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
{% include head %}
|
||||
|
||||
<body class="d-lg-flex">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!doctype html>
|
||||
{% assign guideTypes = site.data.ui.product_sublanding.guide_types %}
|
||||
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
{% include head %}
|
||||
|
||||
<body class="d-lg-flex">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{% assign product = siteTree[currentLanguage][currentVersion].products[currentProduct] %}
|
||||
|
||||
<!doctype html>
|
||||
<html lang="{{currentLanguage}}">
|
||||
<html lang="{{currentLanguage}}" data-color-mode="auto" data-dark-theme="dark_dimmed">
|
||||
{% include head %}
|
||||
|
||||
<body class="d-lg-flex">
|
||||
|
||||
36
package-lock.json
generated
@@ -11827,9 +11827,12 @@
|
||||
"dev": true
|
||||
},
|
||||
"hosted-git-info": {
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz",
|
||||
"integrity": "sha1-l/I2l3vW4SVAiTD/bePuxigewEc="
|
||||
"version": "3.0.8",
|
||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz",
|
||||
"integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==",
|
||||
"requires": {
|
||||
"lru-cache": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"hot-shots": {
|
||||
"version": "8.2.0",
|
||||
@@ -15955,9 +15958,9 @@
|
||||
}
|
||||
},
|
||||
"lodash": {
|
||||
"version": "4.17.20",
|
||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
|
||||
"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA=="
|
||||
"version": "4.17.21",
|
||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
|
||||
},
|
||||
"lodash.assignin": {
|
||||
"version": "4.2.0",
|
||||
@@ -16374,14 +16377,6 @@
|
||||
"yargs-parser": "^20.2.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"hosted-git-info": {
|
||||
"version": "3.0.8",
|
||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz",
|
||||
"integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==",
|
||||
"requires": {
|
||||
"lru-cache": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"normalize-package-data": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz",
|
||||
@@ -17538,6 +17533,14 @@
|
||||
"is-builtin-module": "^1.0.0",
|
||||
"semver": "2 || 3 || 4 || 5",
|
||||
"validate-npm-package-license": "^3.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"hosted-git-info": {
|
||||
"version": "2.8.9",
|
||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
|
||||
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"normalize-path": {
|
||||
@@ -19123,6 +19126,11 @@
|
||||
"type-fest": "^0.6.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"hosted-git-info": {
|
||||
"version": "2.8.9",
|
||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
|
||||
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw=="
|
||||
},
|
||||
"normalize-package-data": {
|
||||
"version": "2.5.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
"js-yaml": "^3.14.0",
|
||||
"linkinator": "^2.13.6",
|
||||
"liquidjs": "^9.22.1",
|
||||
"lodash": "^4.17.20",
|
||||
"lodash": "^4.17.21",
|
||||
"lunr": "^2.3.9",
|
||||
"lunr-languages": "^1.4.0",
|
||||
"mdast-util-from-markdown": "^0.8.4",
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
.sidebar {
|
||||
width: 260px;
|
||||
background-color: var(--color-auto-blue-9);
|
||||
position: sticky;
|
||||
top: 0;
|
||||
padding-bottom: $spacer-5;
|
||||
@@ -13,10 +12,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-background-color {
|
||||
background-color: var(--color-auto-blue-9);
|
||||
}
|
||||
|
||||
.sidebar-products > li {
|
||||
margin: 4px 0;
|
||||
}
|
||||
@@ -24,35 +19,22 @@
|
||||
.sidebar-products a,
|
||||
.sidebar-products .arrow {
|
||||
text-decoration: none;
|
||||
color: var(--color-auto-white);
|
||||
display: block;
|
||||
line-height: 1.4;
|
||||
|
||||
&:hover {
|
||||
color: var(--color-auto-blue-3);
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-category,
|
||||
.sidebar-product {
|
||||
> a,
|
||||
summary a {
|
||||
color: var(--color-auto-blue-2);
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-product,
|
||||
.sidebar-category,
|
||||
.sidebar-maptopic,
|
||||
.sidebar-article {
|
||||
&.is-current-page > a {
|
||||
color: var(--color-auto-blue-3);
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-category.active {
|
||||
background-color: var(--color-auto-blue-8);
|
||||
background-color: rgba(#959da5, 0.1); // --color-auto-gray-4
|
||||
// We can't do rgba(var(--color-auto-gray-4, 0.1) quite yet
|
||||
// as the browsers are still working on supporting that combination
|
||||
}
|
||||
|
||||
.sidebar-maptopic {
|
||||
@@ -64,14 +46,14 @@
|
||||
position: absolute;
|
||||
left: $spacer-4;
|
||||
height: 100%;
|
||||
border-left: 1px solid var(--color-auto-blue-7);
|
||||
border-left: 1px solid var(--color-text-primary);
|
||||
width: 1px;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
&.active {
|
||||
&::before {
|
||||
border-left: 3px solid var(--color-auto-blue-7);
|
||||
border-left: 3px solid var(--color-text-primary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||