1
0
mirror of synced 2025-12-22 03:16:52 -05:00
Files
docs/content/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account.md
Amy Burns d68f6c1791 Adding more developer focused content for Codespaces docs (#19823)
* updating arch for new developer focused content

* remove about codespaces from child list

* Devcontainer updates

* rearranging for new getting started content

* reorganizing and renaming getting started

* Add VS to tool switcher

* Actually adding correct key for vscode

* Adding vscode as a switcher value

* Adding switcher to quickstart

* Updates to quickstart

* adding first draft of creating your codespace

* taking out additional line and linking to customizing your codespace docs

* Update new codespace img

* Updating devcontainer.json for docs

* fixing changes and adding more ideas for deep dive

* adding a few more changes to the deep dive

* suggestings from jake and expanding the deep dive

* re-writing some content

* adding information about a shallow clone

* add more information about dev containers

* adding feedback

* Apply suggestions from code review

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

* adding a note box to committing section

* adding correct link for default container

* improving deep dive based on feedback

* making some edits, adding diagrams and images, and making it seem less like a wall of text

* addinig new image

* updating port forwarding diagram

* removing duplicated redirects

* updating overview with feedback from Matt and a more active voice

* updating quickstart based on feedback

* updating deep dive based on feedback

* remove updates for switcher

* Clarify that dotfiles are opt-in

Per https://github.com/github/codespaces/issues/3223

* fixing header size

* moving codespace higher up the list

* updating based on feedback from Martin and Meg

Co-authored-by: Allison Weins <3174849+2percentsilk@users.noreply.github.com>
Co-authored-by: Felicity Chapman <felicitymay@github.com>
Co-authored-by: Jake Shorty <jshorty@github.com>
Co-authored-by: James M. Greene <JamesMGreene@github.com>
2021-07-19 17:10:18 +00:00

76 lines
5.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: Personalizing Codespaces for your account
intro: 'You can personalize {% data variables.product.prodname_codespaces %} by using a `dotfiles` repository on {% data variables.product.product_name %} or by using Settings Sync.'
permissions: 'Anyone can personalize {% data variables.product.prodname_codespaces %} for their user account.'
redirect_from:
- /github/developing-online-with-github-codespaces/personalizing-github-codespaces-for-your-account
- /github/developing-online-with-codespaces/personalizing-codespaces-for-your-account
- /codespaces/setting-up-your-codespace/personalizing-codespaces-for-your-account
versions:
fpt: '*'
type: how_to
topics:
- Codespaces
- Set up
- Fundamentals
shortTitle: Personalize your account
---
{% data reusables.codespaces.release-stage %}
## About personalizing {% data variables.product.prodname_codespaces %}
When using any development environment, customizing the settings and tools to your preferences and workflows is an important step. {% data variables.product.prodname_codespaces %} allows for two main ways of personalizing your codespaces.
- [Settings Sync](#settings-sync) - You can use and share {% data variables.product.prodname_vscode %} settings between {% data variables.product.prodname_codespaces %} and other instances of {% data variables.product.prodname_vscode %}.
- [Dotfiles](#dotfiles) You can use a public `dotfiles` repository to specify scripts, shell preferences, and other configurations.
{% data variables.product.prodname_codespaces %} personalization applies to any codespace you create.
Project maintainers can also define a default configuration that applies to every codespace for a repository, created by anyone. For more information, see "[Configuring {% data variables.product.prodname_codespaces %} for your project](/github/developing-online-with-codespaces/configuring-codespaces-for-your-project)."
## Settings Sync
Settings Sync allows you to share configurations such as settings, keyboard shortcuts, snippets, extensions, and UI state across machines and instances of {% data variables.product.prodname_vscode %}.
Settings Sync is on by default. To configure any settings, in the bottom-left corner of the Activity Bar, select {% octicon "gear" aria-label="The gear icon" %} and click **Settings Sync is on**. From the dialog, you can choose to configure, show settings and data, or turn off Settings Sync.
![Setting Sync option in manage menu](/assets/images/help/codespaces/codespaces-manage-settings-sync.png)
For more information, see the [Settings Sync guide](https://code.visualstudio.com/docs/editor/settings-sync) in the {% data variables.product.prodname_vscode %} documentation.
## Dotfiles
Dotfiles are files and folders on Unix-like systems starting with `.` that control the configuration of applications and shells on your system. You can store and manage your dotfiles in a repository on {% data variables.product.prodname_dotcom %}. For advice and tutorials about what to include in your `dotfiles` repository, see [GitHub does dotfiles](https://dotfiles.github.io/).
If your user account on {% data variables.product.prodname_dotcom %} owns a public repository named `dotfiles`, {% data variables.product.prodname_dotcom %} can automatically use this repository to personalize your codespace environment, once enabled from your [personal Codespaces settings](https://github.com/settings/codespaces). Private `dotfiles` repositories are not currently supported.
Your `dotfiles` repository might include your shell aliases and preferences, any tools you want to install, or any other codespace personalization you want to make.
When you create a new codespace, {% data variables.product.prodname_dotcom %} clones your `dotfiles` repository to the codespace environment, and looks for one of the following files to set up the environment.
* _install.sh_
* _install_
* _bootstrap.sh_
* _bootstrap_
* _script/bootstrap_
* _setup.sh_
* _setup_
* _script/setup_
If none of these files are found, then any files or folders in `dotfiles` starting with `.` are symlinked to the codespace's `~` or `$HOME` directory.
Any changes to your `dotfiles` repository will apply only to each new codespace, and do not affect any existing codespace.
{% note %}
**Note:** Currently, {% data variables.product.prodname_codespaces %} does not support personalizing the _User_ settings for the {% data variables.product.prodname_vscode %} editor with your `dotfiles` repository. You can set default _Workspace_ and _Remote [Codespaces]_ settings for a specific project in the project's repository. For more information, see "[Configuring {% data variables.product.prodname_codespaces %} for your project](/github/developing-online-with-codespaces/configuring-codespaces-for-your-project#creating-a-custom-codespace-configuration)."
{% endnote %}
You can also configure settings for your user account to add encrypted secrets, enable GPG verification, and allow your 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)."
## Further reading
* "[Creating a new repository](/github/creating-cloning-and-archiving-repositories/creating-a-new-repository)"