1
0
mirror of synced 2026-01-04 09:06:46 -05:00
Files
docs/content
hubwriter 79285d5e92 [23 Feb]: Codespaces prebuilds- [Public Beta] (#25066)
* Draft - add copy from Google doc

* Add images

* More WiP

* test (#25121)

* Update actions-scheduled-workflow-example.md

The editor when changing a CRON time says the most frequent is 5 minutes. Either this section is incorrect or the editor pop over..

* Fix "labels" type

* Add apps permissions for code scanning org endpoint. (#24859)

* cope with possible translation drift (#24842)

* cope with possible translation drift

* fix test

* don't shallow clone

* fix unit tests

* update code comments

* more code comment corrections

* more code comment

* feedbacked

* Add 💅

* Remove yzhang.markdown-all-in-one extension

The markdown-all-in-one extension prevents Alfred expansions happening correctly.

* Revert Add apps permissions for code scanning org endpoint (#25023)

* Add security overview to github-security-features.md

* updating ghcr_token github_token

* archived asset redirects (#25025)

* updating ghec_token to github_token

* set 'manul-purge' surrogate key on assets/cb- URLs (#25028)

* Member privileges edit for forking help doc (#24934)

* calm down Backfill logging (#25031)

* [Feb. 2, 2022] Updates for settings nav redesign (#24604)

* Replace accessibility-tab.png with octicon

* Update and version appearance-tab references

* Replace codespaces-tab.png with octicon

* Replace product name with reusable

* Version reusable using developer-settings.png

* Version reusable using notifcations_menu.png

* Replace org-settings-pages.png with octicon

* Version reusable using repos-tab.png

* Version reusable using saved-replies-tab.png

* Version reusable with settings-applications.png

* Version reusable with settings-sidebar-account-security.png

* version reusable with settings-sidebar-account-settings.png

* Replace settings-sidebar-billing-plans.png with octicon

* Replace settings-sidebar-blocked-users.png with octicon

* Version settings-sidebar-deploy-keys.png

* Version reusable with settings-sidebar-emails.png

* Replace settings-sidebar-interaction-limits.png with octicon

* Replace settings-sidebar-organizations.png with octicon

* Version use of settings-sidebar-repositories.png

* Version reusable with settings-seidebar-security-analysis.png

* Version reusable with settings-sidebar-ssh-keys.png

* Version reusable with settings-sidebar-team-settings.png

* Replace settings-sidebar-third-party-access.png with octicon

* Version reusable with settings-user-orgs.png

* Replace user-settings-pages.png with octicon

* Update pages octicon

* Add explicit versions to elsif tags

* Rewording for consistency

* Improve versioning for future GHAE

* Add missing space

Co-authored-by: Felicity Chapman <felicitymay@github.com>

Co-authored-by: Felicity Chapman <felicitymay@github.com>

* update search indexes

* New translation batch for es (#25035)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/fix-translation-errors.js

* Run script/i18n/lint-translation-files.js --check parsing

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=es

* run script/i18n/reset-known-broken-translation-files.js

* Check in es CSV report

* Remove duplicated word (#24974)

* Fix when we show the 'All Enterprise Releases' link (#25002)

* Enterprise versions start with 'enterprise-server'

* Show only if all versions are ghes versions

* Show link if there's any ghes versioning

* Depend on the path for the tool switcher (#25018)

* Azure: use shared env setter, fix comment workflow (#25044)

* update azure deployments to use shared env getter, fix content changes table

* update search indexes

* update search indexes

* Update workflow-syntax-for-github-actions.md

* New translation batch for pt (#25050)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/fix-translation-errors.js

* Run script/i18n/lint-translation-files.js --check parsing

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=pt

* run script/i18n/reset-known-broken-translation-files.js

* update search indexes

* The missing full stop was added.

* update search indexes

* update search indexes

* New translation batch for pt (#25057)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/fix-translation-errors.js

* Run script/i18n/lint-translation-files.js --check parsing

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=pt

* run script/i18n/reset-known-broken-translation-files.js

* New translation batch for es (#25058)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/fix-translation-errors.js

* Run script/i18n/lint-translation-files.js --check parsing

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=es

* run script/i18n/reset-known-broken-translation-files.js

* update search indexes

* update search indexes

* Update OpenAPI  Descriptions (#25047)

* update search indexes

* Enterprise bug fixes: week of Jan 31, 2022 (#25043)

* delete the workflow linter (#25075)

* an empty 'product', 'permissions', or 'learningTracks' gets stuck (#25070)

* and empty 'this.product' gets stuck

* add test to prove change

* Update OpenAPI  Descriptions (#25071)

* Update OpenAPI  Descriptions (#25076)

* Update OpenAPI  Descriptions

* Add decorated OpenAPI schema files

Co-authored-by: github-openapi-bot <github-openapi-bot@users.noreply.github.com>

* basic tests of the search API (#25069)

* basic tests of the search API

* lfs

* Revert "Revert Add apps permissions for code scanning org endpoint (#25023)" (#25026)

* update website-scraper to update transitive nth-check dep (#25080)

* update search indexes

* New translation batch for es (#25088)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/fix-translation-errors.js

* Run script/i18n/lint-translation-files.js --check parsing

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=es

* run script/i18n/reset-known-broken-translation-files.js

* Update code-scanning-alert.png (#25072)

* use manual surrogate key for nextjs static assets (#25096)

* use manual surrogate key for nextjs static assets

* refactor

* update search indexes

* Update differences-between-clustering-and-high-availability-ha.md (#25107)

* Update OpenAPI  Descriptions (#25104)

* Add versioning for GHAE 3.3 (#24936)

* Update content/code-security/getting-started/github-security-features.md

* update search indexes

* [Actions] `push` event does not have Activity types (#15124)

* 📝 Clarify usage of single quotes in string datatype for literals (#14895)

* Fix value of GITHUB_REF for release events (#14876)

* New translation batch for pt (#25084)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/fix-translation-errors.js

* Run script/i18n/lint-translation-files.js --check parsing

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=pt

* run script/i18n/reset-known-broken-translation-files.js

Co-authored-by: Mike Surowiec <mikesurowiec@users.noreply.github.com>

* New translation batch for ja (#25093)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/lint-translation-files.js --check parsing

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=ja

* run script/i18n/reset-known-broken-translation-files.js

* Check in ja CSV report

Co-authored-by: Mike Surowiec <mikesurowiec@users.noreply.github.com>

* New translation batch for cn (#25090)

* Add crowdin translations

* Run script/i18n/homogenize-frontmatter.js

* Run script/i18n/lint-translation-files.js --check parsing

* Run script/i18n/lint-translation-files.js --check rendering

* run script/i18n/reset-files-with-broken-liquid-tags.js --language=cn

* run script/i18n/reset-known-broken-translation-files.js

* Check in cn CSV report

Co-authored-by: Mike Surowiec <mikesurowiec@users.noreply.github.com>

* Create github-debian.sh

* Update Dockerfile

* Update procedures for personal account recovery with two-factor authentication (#25040)

* delete old deploy.js script (#24862)

Co-authored-by: Mark Battistella <markbattistella@users.noreply.github.com>
Co-authored-by: Emily Grace Seville <emilyseville7cf@gmail.com>
Co-authored-by: Octomerger Bot <63058869+Octomerger@users.noreply.github.com>
Co-authored-by: Anders Starcke Henriksen <starcke@github.com>
Co-authored-by: Peter Bengtsson <mail@peterbe.com>
Co-authored-by: Laura Coursen <lecoursen@github.com>
Co-authored-by: lucie-docs <40564413+lucie-docs@users.noreply.github.com>
Co-authored-by: Josh Johanning <joshjohanning@github.com>
Co-authored-by: Tahlia G <84726379+tahlialouisa@users.noreply.github.com>
Co-authored-by: Ethan Palm <56270045+ethanpalm@users.noreply.github.com>
Co-authored-by: Felicity Chapman <felicitymay@github.com>
Co-authored-by: GitHub Actions <action@github.com>
Co-authored-by: docubot <67483024+docubot@users.noreply.github.com>
Co-authored-by: Simon Giesemann <kwacky1@github.com>
Co-authored-by: Robert Sese <rsese@github.com>
Co-authored-by: Mike Surowiec <mikesurowiec@users.noreply.github.com>
Co-authored-by: Albin PK <56157868+albinpk@users.noreply.github.com>
Co-authored-by: Dasun Tharanga <dasuntharangaflash@gmail.com>
Co-authored-by: github-openapi-bot <69533958+github-openapi-bot@users.noreply.github.com>
Co-authored-by: Ramya Parimi <33761166+ramyaparimi@users.noreply.github.com>
Co-authored-by: github-openapi-bot <github-openapi-bot@users.noreply.github.com>
Co-authored-by: Matt Pollard <mattpollard@users.noreply.github.com>
Co-authored-by: Dorothy Mitchell <dorothymitchell@github.com>
Co-authored-by: Andy J <mumfy@github.com>
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com>
Co-authored-by: Marko Kaznovac <kaznovac@users.noreply.github.com>
Co-authored-by: Anil Seervi <61609033+AnilSeervi@users.noreply.github.com>
Co-authored-by: Johanan Idicula <johanan@forcepush.tech>

* Add more screenshots

* complete items on plan

* Revert changes to files I didn't change

* Minor tweaks

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Remove detail about building prebuilds by rerunning a workflow

After deleting a prebuild configuration anyone who can access the workflow history can recreate the prebuilds by rerunning the previous workflow run - unless you go through manually deleting all of those entries from the workflow history. Removed this information as per review comment.

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Update content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md

* Update data/reusables/codespaces/billing-for-prebuilds.md

* Update data/reusables/codespaces/billing-for-prebuilds.md

* Restructure info into separate articles

* Update content/codespaces/prebuilding-your-codespaces/about-codespaces-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Move prerequisites section

* Move billing info

* Update content/codespaces/prebuilding-your-codespaces/configuring-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/configuring-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/configuring-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Update data/reusables/codespaces/billing-for-prebuilds.md

* Update data/reusables/codespaces/billing-for-prebuilds.md

Co-authored-by: Laura Coursen <lecoursen@github.com>

* Move deletion points, as per review comment

* Update link

* Add links to new information

* Make review comment changes

* Update content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Update content/codespaces/prebuilding-your-codespaces/testing-dev-container-changes.md

* Update content/codespaces/prebuilding-your-codespaces/testing-dev-container-changes.md

Co-authored-by: Jackie Jiménez <jaclynj@github.com>

* Optimize images

Co-authored-by: Mark Battistella <markbattistella@users.noreply.github.com>
Co-authored-by: Emily Grace Seville <emilyseville7cf@gmail.com>
Co-authored-by: Octomerger Bot <63058869+Octomerger@users.noreply.github.com>
Co-authored-by: Anders Starcke Henriksen <starcke@github.com>
Co-authored-by: Peter Bengtsson <mail@peterbe.com>
Co-authored-by: Laura Coursen <lecoursen@github.com>
Co-authored-by: lucie-docs <40564413+lucie-docs@users.noreply.github.com>
Co-authored-by: Josh Johanning <joshjohanning@github.com>
Co-authored-by: Tahlia G <84726379+tahlialouisa@users.noreply.github.com>
Co-authored-by: Ethan Palm <56270045+ethanpalm@users.noreply.github.com>
Co-authored-by: Felicity Chapman <felicitymay@github.com>
Co-authored-by: GitHub Actions <action@github.com>
Co-authored-by: docubot <67483024+docubot@users.noreply.github.com>
Co-authored-by: Simon Giesemann <kwacky1@github.com>
Co-authored-by: Robert Sese <rsese@github.com>
Co-authored-by: Mike Surowiec <mikesurowiec@users.noreply.github.com>
Co-authored-by: Albin PK <56157868+albinpk@users.noreply.github.com>
Co-authored-by: Dasun Tharanga <dasuntharangaflash@gmail.com>
Co-authored-by: github-openapi-bot <69533958+github-openapi-bot@users.noreply.github.com>
Co-authored-by: Ramya Parimi <33761166+ramyaparimi@users.noreply.github.com>
Co-authored-by: github-openapi-bot <github-openapi-bot@users.noreply.github.com>
Co-authored-by: Matt Pollard <mattpollard@users.noreply.github.com>
Co-authored-by: Dorothy Mitchell <dorothymitchell@github.com>
Co-authored-by: Andy J <mumfy@github.com>
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com>
Co-authored-by: Marko Kaznovac <kaznovac@users.noreply.github.com>
Co-authored-by: Anil Seervi <61609033+AnilSeervi@users.noreply.github.com>
Co-authored-by: Johanan Idicula <johanan@forcepush.tech>
Co-authored-by: Jackie Jiménez <jaclynj@github.com>
Co-authored-by: github-actions <github-actions@github.com>
2022-02-23 17:52:53 +00:00
..

Content

The /content directory is where all the site's (English) Markdown content lives!

See the markup reference guide for more information about supported Markdown features.

See the contributing docs for general information about working with the docs.

Frontmatter

YAML Frontmatter is an authoring convention popularized by Jekyll that provides a way to add metadata to pages. It is a block of key-value content that lives at the top of every Markdown file.

The following frontmatter values have special meanings and requirements for this site. There's also a schema that's used by the test suite to validate every page's frontmatter. See lib/frontmatter.js.

versions

  • Purpose: Indicates the versions to which a page applies. See Versioning for more info.
  • Type: Object. Allowable keys map to product names and can be found in the versions object in lib/frontmatter.js.
  • This frontmatter value is currently required for all pages.
  • The * is used to denote all releases for the version.

Example that applies to GitHub.com and recent versions of GitHub Enterprise Server:

title: About your personal dashboard
versions:
  fpt: '*'
  ghes: '>=2.20'

Example that applies to all supported versions of GitHub Enterprise Server: (but not GitHub.com):

title: Downloading your license
versions:
  ghes: '*'

You can also version a page for a range of releases. This would version the page for GitHub.com, and GitHub Enterprise Server versions 2.22 and 3.0 only:

versions:
  fpt: '*'
  ghes: '>=2.22 <3.1'

redirect_from

  • Purpose: List URLs that should redirect to this page.
  • Type: Array
  • Optional

Example:

title: Getting started with GitHub Desktop
redirect_from:
  - /articles/first-launch/
  - /articles/error-github-enterprise-version-is-too-old/
  - /articles/getting-started-with-github-for-windows/

See contributing/redirects for more info.

title

  • Purpose: Set a human-friendly title for use in the rendered page's <title> tag and an h1 element at the top of the page.
  • Type: String
  • Optional. If omitted, the page <title> will still be set, albeit with a generic value like GitHub.com or GitHub Enterprise.

shortTitle

  • Purpose: An abbreviated variant of the page title for use in breadcrumbs and navigation elements.
  • Type: String
  • Optional. If omitted, title will be used.
Article type Maximum character length
articles 31
categories 27
map topics 30

Example:

title: Contributing to projects with GitHub Desktop
shortTitle: Contributing to projects

intro

  • Purpose: Sets the intro for the page. This string will render after the title.
  • Type: String
  • Optional.

permissions

  • Purpose: Sets the permission statement for the article. This string will render after the intro.
  • Type: String
  • Optional.

product

  • Purpose: Sets the product callout for the article. This string will render after the intro and permissions statement.
  • Type: String
  • Optional.

layout

  • Purpose: Render the proper page layout.
  • Type: String that matches the name of the layout. For a layout named components/landing, the value would be product-landing.
  • Optional. If omitted, DefaultLayout is used.

children

  • Purpose: Lists the relative links that belong to the product/category/map topic. See Index pages for more info.
  • Type: Array. Default is false.
  • Required on index.md pages.

childGroups

  • Purpose: Renders children into groups on the homepage. See Homepage for more info.
  • Type: Array. Default is false.
  • Require on the homepage index.md.
  • Purpose: Renders the linked articles' titles and intros on product landing pages and the homepage.
  • Type: Object.
  • Optional.

The list of popular links are the links displayed on the landing page under the title "Popular." Alternately, you can customize the title "Popular" by setting the featuredLinks.popularHeading property to a new string.

Example:

featuredLinks:
  gettingStarted:
    - /path/to/page
  guides:
    - /guides/example
  popular:
    - /path/to/popular/article1
    - /path/to/popular/article2
  popularHeading: An alternate heading to Popular

showMiniToc

  • Purpose: Indicates whether an article should show a mini TOC above the rest of the content. See Autogenerated mini TOCs for more info.
  • Type: Boolean. Default is true on articles, and false on map topics and index.md pages.
  • Optional.

miniTocMaxHeadingLevel

  • Purpose: Indicates the maximum heading level to include in an article's mini TOC. See Autogenerated mini TOCs for more info.
  • Type: Number. Default is 2. Minimum is 2. Maximum is 3.
  • Optional.

allowTitleToDifferFromFilename

  • Purpose: Indicates whether a page is allowed to have a title that differs from its filename. For example, content/rest/reference/orgs.md has a title of Organizations instead of Orgs. Pages with this frontmatter set to true will not be flagged in tests or updated by script/reconcile-ids-with-filenames.js.
  • Type: Boolean. Default is false.
  • Optional.

changelog

  • Purpose: Render a list of items pulled from GitHub Changelog on product landing pages (ex: components/landing). The one exception is Education, which pulls from https://github.blog/category/community/education.
  • Type: Object, properties:
    • label -- must be present and corresponds to the labels used in the GitHub Changelog
    • prefix -- optional string that starts each changelog title that should be omitted in the docs feed. For example, with the prefix GitHub Actions: specified, changelog titles like GitHub Actions: Some Title Here will render as Some Title Here in the docs feed).
  • Optional.

defaultPlatform

  • Purpose: Override the initial platform selection for a page. If this frontmatter is omitted, then the platform-specific content matching the reader's operating system is shown by default. This behavior can be changed for individual pages, for which a manual selection is more reasonable. For example, most GitHub Actions runners use Linux and their operating system is independent of the reader's operating system.
  • Type: String, one of: mac, windows, linux.
  • Optional.

Example:

defaultPlatform: linux

defaultTool

  • Purpose: Override the initial tool selection for a page, where tool refers to the application the reader is using to work with GitHub (such as GitHub.com's web UI, the GitHub CLI, or GitHub Desktop) or the GitHub APIs (such as cURL or the GitHub CLI). For more information about the tool selector, see Markup reference for GitHub Docs. If this frontmatter is omitted, then the tool-specific content matching the GitHub web UI is shown by default. If a user has indicated a tool preference (by clicking on a tool tab), then the user's preference will be applied instead of the default value.
  • Type: String, one of: webui, cli, desktop, curl, codespaces, vscode, importer_cli, graphql.
  • Optional.
defaultTool: cli

learningTracks

  • Purpose: Render a list of learning tracks on a product's sub-landing page.
  • type: String. This should reference learning tracks' names defined in data/learning-tracks/*.yml.
  • Optional

*Note: the featured track is set by a specific property in the learning tracks YAML. See that README for details.

includeGuides

  • Purpose: Render a list of articles, filterable by type and topics. Only applicable when used with layout: product-guides.
  • Type: Array
  • Optional.

Example:

includeGuides:
  - /actions/guides/about-continuous-integration
  - /actions/guides/setting-up-continuous-integration-using-workflow-templates
  - /actions/guides/building-and-testing-nodejs
  - /actions/guides/building-and-testing-powershell

type

  • Purpose: Indicate the type of article.
  • Type: String, one of the overview, quick_start, tutorial, how_to, reference.
  • Optional.

topics

  • Purpose: Indicate the topics covered by the article. The topics are used to filter guides on some landing pages. For example, the guides at the bottom of this page can be filtered by topics and the topics are listed under the guide intro. Topics are also added to all search records that get created for each page. The search records contain a topics property that is used to filter search results by topics. For more information, see the Search contributing guide. Refer to the content models for more details around adding topics. A full list of existing topics is located in the allowed topics file. If topics in article frontmatter and the allow-topics list become out of sync, the topics CI test will fail.
  • Type: Array of Strings
  • Optional: Topics are preferred for each article, but, there may be cases where existing articles don't yet have topics or a adding a topic to a new article may not add value.

contributor

  • Purpose: Indicate an article is contributed and maintained by a third-party organization, typically a GitHub Technology Partner.
  • Type: Object. Properties are name and URL.
  • Optional.

communityRedirect

  • Purpose: Set a custom link and link name for Ask the GitHub community link in the footer.
  • Type: Object. Properties are name and href.
  • Optional.

effectiveDate

  • For GitHub staff only: Set an effective date for Terms of Service articles so that engineering teams can automatically re-prompt users to confirm the terms
  • Type: string YEAR-MONTH-DAY e.g. 2021-10-04 is October 4th, 2021
  • Optional.

Example:

contributor:
  name: ACME, inc.
  URL: https://acme.example.com/

Escaping single quotes

If you see two single quotes in a row ('') in YML frontmatter where you might expect to see one ('), this is the YML-preferred way to escape a single quote. From the YAML spec:

In single quoted leaves, a single quote character needs to be escaped. This is done by repeating the character.

As an alternative, you can change the single quotes surrounding the frontmatter field to double quotes and leave interior single quotes unescaped.

Autogenerated mini TOCs

Every article on the help site displays an autogenerated "In this article" section (aka mini TOC) at the top of the page that includes links to all H2s in the article by default.

  • To make the mini TOC include additional (or fewer) heading levels, you can add miniTocMaxHeadingLevel frontmatter to specify the maximum heading level. For example: miniTocMaxHeadingLevel: 3
  • To disable the mini TOC for a specific article, you can add this frontmatter: showMiniToc: false

Mini TOCs do not appear on product landing pages, category landing pages, or map topic pages.

Make sure not to add hardcoded "In this article" sections in the Markdown source or else the page will display duplicate mini TOCs.

Versioning

A content file can have two types of versioning:

  • versions frontmatter (required)
  • Liquid statements in content (optional)
    • Conditionally render content depending on the current version being viewed. See contributing/liquid-helpers for more info. Note Liquid conditionals can also appear in data and include files.

Note: As of early 2021, the free-pro-team@latest version is not included URLs. A helper function called lib/remove-fpt-from-path.js removes the version from URLs.

Filenames

When adding a new article, make sure the filename is a kebab-cased version of the title you use in the article's title frontmatter. This can get tricky when a title has punctuation (such as "GitHub's Billing Plans"). A test will flag any discrepancies between title and filename. To override this requirement for a given article, you can add allowTitleToDifferFromFilename frontmatter.

Whitespace control

When using Liquid conditionals in lists or tables, you can use whitespace control characters to prevent the addition of newlines that would break the list or table rendering.

Just add a hyphen on either the left, right, or both sides to indicate that there should be no newline on that side. For example, this statement removes a newline on the left side:

{%- ifversion fpt %}

Local links must start with a product ID (like /actions or /admin), and image paths must start with /assets. The links to Markdown pages undergo some transformations on the server side to match the current page's language and version. The handling for these transformations lives in lib/render-content/plugins/rewrite-local-links.

For example, if you include the following link in a content file:

/github/writing-on-github/creating-a-saved-reply

When viewed on GitHub.com docs, the link gets rendered with the language code:

/en/github/writing-on-github/creating-a-saved-reply

and when viewed on GitHub Enterprise Server docs, the version is included as well:

/en/enterprise-server@2.20/github/writing-on-github/creating-a-saved-reply

There are transformations for image paths in GitHub Enterprise Server (versions 2.20-3.0) only. Once those versions are deprecation, there will no longer be any transformations for image paths. For more information, see /assets/images/enterprise/legacy-format/README.md.

Preventing transformations

Sometimes you want to link to a Dotcom-only article in Enterprise content and you don't want the link to be Enterprise-ified. To prevent the transformation, write the link using HTML and add a class of dotcom-only. For example:

<a href="/github/site-policy/github-terms-of-service" class="dotcom-only">GitHub's Terms of Service</a>

Sometimes the canonical home of content moves outside the docs site. None of the links included in lib/redirects/external-sites.json get rewritten. See contributing/redirects.md for more info about this type of redirect.

Index pages

Index pages are the Table of Contents files for the docs site. Every product, category, and map topic subdirectory has an index.md that serves as the landing page. Each index.md must contain a children frontmatter property with a list of relative links to the child pages of the product, category, or map topic.

Important note: The site only knows about paths included in children frontmatter. If a directory or article exists but is not included in children, its path will 404.

Homepage

The homepage is the main Table of Contents file for the docs site. The homepage must have a complete list of children, like every Index page but must also specify the childGroups frontmatter property that will be highlighted in the main content area.

childGroups is an array of mappings containing a name for the group, an optional icon for the group, and an array of children. The children in the array must be present in the children frontmatter property.

Creating new product guides pages

To create a product guides page (e.g. Actions' Guide page), create or modify an existing markdown file with these specific frontmatter values:

  1. Use the product guides page template by referencing it layout: product-guides
  2. (optional) Include the learning tracks in learningTracks
  3. (optional) Define which articles to include with includeGuides.

If using learning tracks, they need to be defined in data/learning-tracks/*.yml. If using includeGuides, make sure each of the articles in this list has topics and type in its frontmatter.