1
0
mirror of synced 2025-12-22 19:34:15 -05:00

Move Getting started category to top-level doc set (#20008)

* Move category to top-level doc set

* Move doc set to the top and update short title

* Undo package-lock changes

* updated hardcoded refs in tests

* Update test

* Fix hardcoded link in test

Co-authored-by: Sarah Schneider <sarahs@github.com>
This commit is contained in:
Emily Gould
2021-06-18 12:13:04 -05:00
committed by GitHub
parent 5991ffb1af
commit 1e5372ac79
63 changed files with 94 additions and 35 deletions

View File

@@ -1,52 +0,0 @@
---
title: Finding ways to contribute to open source on GitHub
intro: 'You can find ways to contribute to open source projects on {% data variables.product.product_name %} that are relevant to you.'
redirect_from:
- /articles/where-can-i-find-open-source-projects-to-work-on/
- /articles/finding-interesting-projects-on-github/
- /articles/about-official-github-mirrors/
- /articles/about-github-mirrors/
- /articles/finding-open-source-projects-on-github
- /github/getting-started-with-github/finding-open-source-projects-on-github
- /github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github
versions:
free-pro-team: '*'
topics:
- Open Source
---
## Discovering relevant projects
If there's a particular topic that interests you, visit `github.com/topics/<topic>`. For example, if you are interested in machine learning, you can find relevant projects and good first issues by visiting https://github.com/topics/machine-learning. You can browse popular topics by visiting [Topics](https://github.com/topics). You can also search for repositories that match a topic you're interested in. For more information, see "[Searching for repositories](/articles/searching-for-repositories#search-by-topic)."
If you've been active on {% data variables.product.product_name %}, you can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in [Explore](https://github.com/explore). You can also sign up for the Explore newsletter to receive emails about opportunities to contribute to {% data variables.product.product_name %} based on your interests. To sign up, see [Explore email newsletter](https://github.com/explore/subscribe).
Keep up with recent activity from repositories you watch and people you follow in the "All activity" section of your personal dashboard. For more information, see "[About your personal dashboard](/articles/about-your-personal-dashboard)."
{% data reusables.support.ask-and-answer-forum %}
## Finding good first issues
If you already know what project you want to work on, you can find beginner-friendly issues in that repository by visiting `github.com/<owner>/<repository>/contribute`. For an example, you can find ways to make your first contribution to `electron/electron` at https://github.com/electron/electron/contribute.
## Opening an issue
If you encounter a bug in an open source project, check if the bug has already been reported. If the bug has not been reported, you can open an issue to report the bug according to the project's contribution guidelines.
## Validating an issue or pull request
There are a variety of ways that you can contribute to open source projects.
### Reproducing a reported bug
You can contribute to an open source project by validating an issue or adding additional context to an existing issue.
### Testing a pull request
You can contribute to an open source project by merging a pull request into your local copy of the project and testing the changes. Add the outcome of your testing in a comment on the pull request.
### Updating issues
You can contribute to an open source project by adding additional information to existing issues.
## Further reading
- "[Classifying your repository with topics](/articles/classifying-your-repository-with-topics)"
- "[About your organization dashboard](/articles/about-your-organization-dashboard)"

View File

@@ -1,25 +0,0 @@
---
title: Following people
intro: 'You can follow people on {% data variables.product.product_name %} to receive notifications about their activity{% if currentVersion == "free-pro-team@latest" %} and discover projects in their communities{% endif %}.'
redirect_from:
- /articles/following-people
- /github/getting-started-with-github/following-people
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Profile
---
When you follow people, you'll see their public activity in the activity view of your news feed.{% if currentVersion == "free-pro-team@latest" %} If someone you follow stars a public repository, {% data variables.product.product_name %} may recommend the repository to you in the discovery view of your news feed.{% endif %} To follow someone, visit their profile page and click **Follow** under their profile image.
![Follow user button](/assets/images/help/profile/follow-user-button.png)
To stop following someone, visit their profile page and click **Unfollow** under their profile image.
{% if currentVersion == "free-pro-team@latest" %}
## Further reading
- "[Saving repositories with stars](/articles/saving-repositories-with-stars/)"
- "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)"
{% endif %}

View File

@@ -1,19 +0,0 @@
---
title: Exploring projects on GitHub
intro: 'Discover interesting projects on {% data variables.product.product_name %} and contribute to open source by collaborating with other people.'
redirect_from:
- /categories/stars/
- /categories/87/articles/
- /categories/exploring-projects-on-github/
- /articles/exploring-projects-on-github
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Projects
children:
- /finding-ways-to-contribute-to-open-source-on-github
- /saving-repositories-with-stars
- /following-people
---

View File

@@ -1,64 +0,0 @@
---
title: Saving repositories with stars
intro: 'You can star repositories and topics to keep track of projects you find interesting{% if currentVersion == "free-pro-team@latest" %} and discover related content in your news feed{% endif %}.'
redirect_from:
- /articles/stars/
- /articles/about-stars/
- /articles/browsing-friends-stars/
- /articles/managing-your-stars/
- /articles/saving-repositories-with-stars
- /github/getting-started-with-github/saving-repositories-with-stars
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Repositories
---
You can search, sort, and filter your starred repositories and topics on your {% data variables.explore.your_stars_page %}.
## About stars
Starring makes it easy to find a repository or topic again later. You can see all the repositories and topics you have starred by going to your {% data variables.explore.your_stars_page %}.
{% if currentVersion == "free-pro-team@latest" %}
You can star repositories and topics to discover similar projects on {% data variables.product.product_name %}. When you star repositories or topics, {% data variables.product.product_name %} may recommend related content in the discovery view of your news feed. For more information, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)".
{% endif %}
Starring a repository also shows appreciation to the repository maintainer for their work. Many of {% data variables.product.prodname_dotcom %}'s repository rankings depend on the number of stars a repository has. In addition, [Explore](https://github.com/explore) shows popular repositories based on the number of stars they have.
## Starring a repository
Starring a repository is a simple two-step process.
{% data reusables.repositories.navigate-to-repo %}
1. In the top-right corner of the page, click **Star**.
![Starring a repository](/assets/images/help/stars/starring-a-repository.png)
1. Optionally, to unstar a previously starred repository, click **Unstar**.
![Untarring a repository](/assets/images/help/stars/unstarring-a-repository.png)
## Searching stars
You can use the search bar on your {% data variables.explore.your_stars_page %} to quickly find repositories and topics you've starred.
1. Go to your {% data variables.explore.your_stars_page %}.
1. Use the search bar to find your starred repositories or topics by their name.
![Searching through stars](/assets/images/help/stars/stars_search_bar.png)
The search bar only searches based on the name of a repository or topic, and not on any other qualifiers (such as the size of the repository or when it was last updated).
## Sorting and filtering stars
You can use sorting or filtering to customize how you see starred repositories and topics on your stars page.
1. Go to your {% data variables.explore.your_stars_page %}.
1. To sort stars, select the **Sort** drop-down menu, then select **Recently starred**, **Recently active**, or **Most stars**.
![Sorting stars](/assets/images/help/stars/stars_sort_menu.png)
1. To filter your list of stars based on their language, click on the desired language under **Filter by languages**.
![Filter stars by language](/assets/images/help/stars/stars_filter_language.png)
1. To filter your list of stars based on repository or topic, click on the desired option.
![Filter stars by topic](/assets/images/help/stars/stars_filter_topic.png)
## Further reading
- "[Classifying your repository with topics](/articles/classifying-your-repository-with-topics)"

View File

@@ -1,96 +0,0 @@
---
title: About remote repositories
redirect_from:
- /articles/working-when-github-goes-down/
- /articles/sharing-repositories-without-github/
- /articles/about-remote-repositories
- /articles/which-url-should-i-use/
- /articles/which-remote-url-should-i-use
- /github/using-git/which-remote-url-should-i-use
- /github/using-git/about-remote-repositories
- /github/getting-started-with-github/about-remote-repositories
intro: 'GitHub''s collaborative approach to development depends on publishing commits from your local repository to {% data variables.product.product_name %} for other people to view, fetch, and update.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## About remote repositories
A remote URL is Git's fancy way of saying "the place where your code is stored." That URL could be your repository on GitHub, or another user's fork, or even on a completely different server.
You can only push to two types of URL addresses:
* An HTTPS URL like `https://{% data variables.command_line.backticks %}/user/repo.git`
* An SSH URL, like `git@{% data variables.command_line.backticks %}:user/repo.git`
Git associates a remote URL with a name, and your default remote is usually called `origin`.
## Creating remote repositories
You can use the `git remote add` command to match a remote URL with a name.
For example, you'd type the following in the command line:
```shell
git remote add origin <em> &lt;REMOTE_URL> </em>
```
This associates the name `origin` with the `REMOTE_URL`.
You can use the command `git remote set-url` to [change a remote's URL](/github/getting-started-with-github/managing-remote-repositories).
## Choosing a URL for your remote repository
There are several ways to clone repositories available on {% data variables.product.product_location %}.
When you view a repository while signed in to your account, the URLs you can use to clone the project onto your computer are available below the repository details.
For information on setting or changing your remote URL, see "[Managing remote repositories](/github/getting-started-with-github/managing-remote-repositories)."
## Cloning with HTTPS URLs
The `https://` clone URLs are available on all repositories, regardless of visibility. `https://` clone URLs work even if you are behind a firewall or proxy.
When you `git clone`, `git fetch`, `git pull`, or `git push` to a remote repository using HTTPS URLs on the command line, Git will ask for your {% data variables.product.product_name %} username and password. {% data reusables.user_settings.password-authentication-deprecation %}
{% data reusables.command_line.provide-an-access-token %}
{% tip %}
**Tips**:
- You can use a credential helper so Git will remember your {% data variables.product.prodname_dotcom %} credentials every time it talks to {% data variables.product.prodname_dotcom %}. For more information, see "[Caching your {% data variables.product.prodname_dotcom %} credentials in Git](/github/getting-started-with-github/caching-your-github-credentials-in-git)."
- To clone a repository without authenticating to {% data variables.product.product_name %} on the command line, you can use {% data variables.product.prodname_desktop %} to clone instead. For more information, see "[Cloning a repository from {% data variables.product.prodname_dotcom %} to {% data variables.product.prodname_dotcom %} Desktop](/desktop/contributing-to-projects/cloning-a-repository-from-github-to-github-desktop)."
{% endtip %}
{% if currentVersion == "free-pro-team@latest" %}If you'd rather use SSH but cannot connect over port 22, you might be able to use SSH over the HTTPS port. For more information, see "[Using SSH over the HTTPS port](/github/authenticating-to-github/using-ssh-over-the-https-port)."{% endif %}
## Cloning with SSH URLs
SSH URLs provide access to a Git repository via SSH, a secure protocol. To use these URLs, you must generate an SSH keypair on your computer and add the **public** key to your {% data variables.product.product_name %} account. For more information, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/github/authenticating-to-github/connecting-to-github-with-ssh)."
When you `git clone`, `git fetch`, `git pull`, or `git push` to a remote repository using SSH URLs, you'll be prompted for a password and must provide your SSH key passphrase. For more information, see "[Working with SSH key passphrases](/github/authenticating-to-github/working-with-ssh-key-passphrases)."
{% if currentVersion == "free-pro-team@latest" %}If you are accessing an organization that uses SAML single sign-on (SSO), you must authorize your SSH key to access the organization before you authenticate. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)" and "[Authorizing an SSH key for use with SAML single sign-on](/github/authenticating-to-github/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %}
{% tip %}
**Tip**: You can use an SSH URL to clone a repository to your computer, or as a secure way of deploying your code to production servers. You can also use SSH agent forwarding with your deploy script to avoid managing keys on the server. For more information, see "[Using SSH Agent Forwarding](/developers/overview/using-ssh-agent-forwarding)."
{% endtip %}
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.19" or currentVersion == "github-ae@latest" %}
## Cloning with {% data variables.product.prodname_cli %}
You can also install {% data variables.product.prodname_cli %} to use {% data variables.product.product_name %} workflows in your terminal. For more information, the [{% data variables.product.prodname_cli %}](https://cli.github.com/manual/) documentation.
{% endif %}
{% if currentVersion != "github-ae@latest" %}
## Cloning with Subversion
You can also use a [Subversion](https://subversion.apache.org/) client to access any repository on {% data variables.product.prodname_dotcom %}. Subversion offers a different feature set than Git. For more information, see "[What are the differences between Subversion and Git?](/github/importing-your-projects-to-github/what-are-the-differences-between-subversion-and-git)"
You can also access repositories on {% data variables.product.prodname_dotcom %} from Subversion clients. For more information, see "[Support for Subversion clients](/github/importing-your-projects-to-github/support-for-subversion-clients)."
{% endif %}

View File

@@ -1,123 +0,0 @@
---
title: Associating text editors with Git
intro: Use a text editor to open and edit your files with Git.
redirect_from:
- /textmate/
- /articles/using-textmate-as-your-default-editor/
- /articles/using-sublime-text-2-as-your-default-editor/
- /articles/associating-text-editors-with-git
- /github/using-git/associating-text-editors-with-git
- /github/getting-started-with-github/associating-text-editors-with-git
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
{% mac %}
## Using Atom as your editor
1. Install [Atom](https://atom.io/). For more information, see "[Installing Atom](https://flight-manual.atom.io/getting-started/sections/installing-atom/)" in the Atom documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "atom --wait"
```
## Using Visual Studio Code as your editor
1. Install [Visual Studio Code](https://code.visualstudio.com/) (VS Code). For more information, see "[Setting up Visual Studio Code](https://code.visualstudio.com/Docs/setup/setup-overview)" in the VS Code documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "code --wait"
```
## Using Sublime Text as your editor
1. Install [Sublime Text](https://www.sublimetext.com/). For more information, see "[Installation](https://docs.sublimetext.io/guide/getting-started/installation.html)" in the Sublime Text documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "subl -n -w"
```
## Using TextMate as your editor
1. Install [TextMate](https://macromates.com/).
2. Install TextMate's `mate` shell utility. For more information, see "[mate and rmate](https://macromates.com/blog/2011/mate-and-rmate/)" in the TextMate documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
4. Type this command:
```shell
$ git config --global core.editor "mate -w"
```
{% endmac %}
{% windows %}
## Using Atom as your editor
1. Install [Atom](https://atom.io/). For more information, see "[Installing Atom](https://flight-manual.atom.io/getting-started/sections/installing-atom/)" in the Atom documentation.
3. Type this command:
```shell
$ git config --global core.editor "atom --wait"
```
## Using Visual Studio Code as your editor
1. Install [Visual Studio Code](https://code.visualstudio.com/) (VS Code). For more information, see "[Setting up Visual Studio Code](https://code.visualstudio.com/Docs/setup/setup-overview)" in the VS Code documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "code --wait"
```
## Using Sublime Text as your editor
1. Install [Sublime Text](https://www.sublimetext.com/). For more information, see "[Installation](https://docs.sublimetext.io/guide/getting-started/installation.html)" in the Sublime Text documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "'C:/Program Files (x86)/sublime text 3/subl.exe' -w"
```
## Using Notepad++ as your editor
1. Install Notepad++ from https://notepad-plus-plus.org/. For more information, see "[Getting started](https://npp-user-manual.org/docs/getting-started/)" in the Notepad++ documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
```
{% endwindows %}
{% linux %}
## Using Atom as your editor
1. Install [Atom](https://atom.io/). For more information, see "[Installing Atom](https://flight-manual.atom.io/getting-started/sections/installing-atom/)" in the Atom documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "atom --wait"
```
## Using Visual Studio Code as your editor
1. Install [Visual Studio Code](https://code.visualstudio.com/) (VS Code). For more information, see "[Setting up Visual Studio Code](https://code.visualstudio.com/Docs/setup/setup-overview)" in the VS Code documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "code --wait"
```
## Using Sublime Text as your editor
1. Install [Sublime Text](https://www.sublimetext.com/). For more information, see "[Installation](https://docs.sublimetext.io/guide/getting-started/installation.html)" in the Sublime Text documentation.
{% data reusables.command_line.open_the_multi_os_terminal %}
3. Type this command:
```shell
$ git config --global core.editor "subl -n -w"
```
{% endlinux %}

View File

@@ -1,105 +0,0 @@
---
title: Caching your GitHub credentials in Git
redirect_from:
- /firewalls-and-proxies/
- /articles/caching-your-github-password-in-git
- /github/using-git/caching-your-github-password-in-git
- /github/using-git/caching-your-github-credentials-in-git
- /github/getting-started-with-github/caching-your-github-credentials-in-git
intro: 'If you''re [cloning {% data variables.product.product_name %} repositories using HTTPS](/github/getting-started-with-github/about-remote-repositories), you can use a credential helper to tell Git to remember your credentials.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
If you clone {% data variables.product.product_name %} repositories using SSH, then you authenticate using an SSH key instead of using other credentials. For information about setting up an SSH connection, see "[Generating an SSH Key](/articles/generating-an-ssh-key)."
{% mac %}
{% tip %}
**Tips:**
- You need Git **1.7.10** or newer to use the osxkeychain credential helper.
- If you installed Git using [Homebrew](http://brew.sh/), the `osxkeychain helper` will already be installed.
- If you're running Mac OS X 10.7 and above and you installed Git through Apple's Xcode Command Line Tools, then `osxkeychain helper` is automatically included in your Git installation.
{% endtip %}
Install Git and the `osxkeychain helper` and tell Git to use it.
1. Find out if Git and the `osxkeychain helper` are already installed:
```shell
$ git credential-osxkeychain
# Test for the cred helper
> Usage: git credential-osxkeychain &lt;get|store|erase>
```
2. If the `osxkeychain helper` isn't installed and you're running OS X version 10.9 or above, your computer will prompt you to download it as a part of the Xcode Command Line Tools:
```shell
$ git credential-osxkeychain
> xcode-select: note: no developer tools were found at '/Applications/Xcode.app',
> requesting install. Choose an option in the dialog to download the command line developer tools.
```
Alternatively, you can install Git and the `osxkeychain helper` by using [Homebrew](http://brew.sh/):
```shell
$ brew install git
```
4. Tell Git to use `osxkeychain helper` using the global `credential.helper` config:
```shell
$ git config --global credential.helper osxkeychain
# Set git to use the osxkeychain credential helper
```
The next time you clone an HTTPS URL that requires authentication, Git will prompt you for your username and password. {% data reusables.user_settings.password-authentication-deprecation %}
Once you've authenticated successfully, your credentials are stored in the macOS keychain and will be used every time you clone an HTTPS URL. You won't be required to type your credentials in to Git again unless you change your credentials.
{% endmac %}
{% windows %}
{% tip %}
**Tip:** You need Git **1.7.10** or newer to use the credential helper.
{% endtip %}
You can also install a native Git shell, such as [Git for Windows](https://git-for-windows.github.io/). With Git for Windows, running the following in the command line will store your credentials:
```shell
$ git config --global credential.helper wincred
```
{% endwindows %}
{% linux %}
{% tip %}
**Tip:** You need Git **1.7.10** or newer to use the credential helper.
{% endtip %}
Turn on the credential helper so that Git will save your password in memory for some time. By default, Git will cache your password for 15 minutes.
1. In Terminal, enter the following:
```shell
$ git config --global credential.helper cache
# Set git to use the credential memory cache
```
2. To change the default password cache timeout, enter the following:
```shell
$ git config --global credential.helper 'cache --timeout=3600'
# Set the cache to timeout after 1 hour (setting is in seconds)
```
For more options for storing your credentials on Linux, see [Credential Storage](https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage) in Pro Git.
{% endlinux %}
## Further reading
- "[Updating credentials from the OSX Keychain](/articles/updating-credentials-from-the-osx-keychain/)"
- "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)"

View File

@@ -1,131 +0,0 @@
---
title: Configuring Git to handle line endings
intro: 'To avoid problems in your diffs, you can configure Git to properly handle line endings.'
redirect_from:
- /dealing-with-lineendings/
- /line-endings/
- /articles/dealing-with-line-endings/
- /articles/configuring-git-to-handle-line-endings
- /github/using-git/configuring-git-to-handle-line-endings
- /github/getting-started-with-github/configuring-git-to-handle-line-endings
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
Every time you press <kbd>return</kbd> on your keyboard you insert an invisible character called a line ending. Different operating systems handle line endings differently.
When you're collaborating on projects with Git and {% data variables.product.product_name %}, Git might produce unexpected results if, for example, you're working on a Windows machine, and your collaborator has made a change in macOS.
You can configure Git to handle line endings automatically so you can collaborate effectively with people who use different operating systems.
## Global settings for line endings
The `git config core.autocrlf` command is used to change how Git handles line endings. It takes a single argument.
{% mac %}
On macOS, you simply pass `input` to the configuration. For example:
```shell
$ git config --global core.autocrlf input
# Configure Git to ensure line endings in files you checkout are correct for macOS
```
{% endmac %}
{% windows %}
On Windows, you simply pass `true` to the configuration. For example:
```shell
$ git config --global core.autocrlf true
# Configure Git to ensure line endings in files you checkout are correct for Windows.
# For compatibility, line endings are converted to Unix style when you commit files.
```
{% endwindows %}
{% linux %}
On Linux, you simply pass `input` to the configuration. For example:
```shell
$ git config --global core.autocrlf input
# Configure Git to ensure line endings in files you checkout are correct for Linux
```
{% endlinux %}
## Per-repository settings
Optionally, you can configure a *.gitattributes* file to manage how Git reads line endings in a specific repository. When you commit this file to a repository, it overrides the `core.autocrlf` setting for all repository contributors. This ensures consistent behavior for all users, regardless of their Git settings and environment.
The *.gitattributes* file must be created in the root of the repository and committed like any other file.
A *.gitattributes* file looks like a table with two columns:
* On the left is the file name for Git to match.
* On the right is the line ending configuration that Git should use for those files.
### Example
Here's an example *.gitattributes* file. You can use it as a template for your repositories:
```
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.c text
*.h text
# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf
# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
```
You'll notice that files are matched—`*.c`, `*.sln`, `*.png`—, separated by a space, then given a setting—`text`, `text eol=crlf`, `binary`. We'll go over some possible settings below.
- `text=auto` Git will handle the files in whatever way it thinks is best. This is a good default option.
- `text eol=crlf` Git will always convert line endings to `CRLF` on checkout. You should use this for files that must keep `CRLF` endings, even on OSX or Linux.
- `text eol=lf` Git will always convert line endings to `LF` on checkout. You should use this for files that must keep LF endings, even on Windows.
- `binary` Git will understand that the files specified are not text, and it should not try to change them. The `binary` setting is also an alias for `-text -diff`.
## Refreshing a repository after changing line endings
When you set the `core.autocrlf` option or commit a *.gitattributes* file, you may find that Git reports changes to files that you have not modified. Git has changed line endings to match your new configuration.
To ensure that all the line endings in your repository match your new configuration, backup your files with Git, delete all files in your repository (except the `.git` directory), then restore the files all at once.
1. Save your current files in Git, so that none of your work is lost.
```shell
$ git add . -u
$ git commit -m "Saving files before refreshing line endings"
```
2. Add all your changed files back and normalize the line endings.
```shell
$ git add --renormalize .
```
3. Show the rewritten, normalized files.
```shell
$ git status
```
4. Commit the changes to your repository.
```shell
$ git commit -m "Normalize all the line endings"
```
## Further reading
- [Customizing Git - Git Attributes](https://git-scm.com/book/en/Customizing-Git-Git-Attributes) in the Pro Git book
- [git-config](https://git-scm.com/docs/git-config) in the man pages for Git
- [Getting Started - First-Time Git Setup](https://git-scm.com/book/en/Getting-Started-First-Time-Git-Setup) in the Pro Git book
- [Mind the End of Your Line](http://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/) by [Tim Clem](https://github.com/tclem)

View File

@@ -1,14 +0,0 @@
---
title: Git workflows
intro: '{% data variables.product.prodname_dotcom %} flow is a lightweight, branch-based workflow that supports teams and projects that deploy regularly.'
redirect_from:
- /articles/what-is-a-good-git-workflow/
- /articles/git-workflows
- /github/using-git/git-workflows
- /github/getting-started-with-github/git-workflows
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
You can adopt the {% data variables.product.prodname_dotcom %} flow method to standardize how your team functions and collaborates on {% data variables.product.prodname_dotcom %}. For more information, see "[{% data variables.product.prodname_dotcom %} flow](/github/getting-started-with-github/github-flow)."

View File

@@ -1,62 +0,0 @@
---
title: Ignoring files
redirect_from:
- /git-ignore/
- /ignore-files/
- /articles/ignoring-files
- /github/using-git/ignoring-files
- /github/getting-started-with-github/ignoring-files
intro: 'You can configure Git to ignore files you don''t want to check in to {% data variables.product.product_name %}.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## Configuring ignored files for a single repository
You can create a *.gitignore* file in your repository's root directory to tell Git which files and directories to ignore when you make a commit.
To share the ignore rules with other users who clone the repository, commit the *.gitignore* file in to your repository.
GitHub maintains an official list of recommended *.gitignore* files for many popular operating systems, environments, and languages in the `github/gitignore` public repository. You can also use gitignore.io to create a *.gitignore* file for your operating system, programming language, or IDE. For more information, see "[github/gitignore](https://github.com/github/gitignore)" and the "[gitignore.io](https://www.gitignore.io/)" site.
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Navigate to the location of your Git repository.
3. Create a *.gitignore* file for your repository.
```shell
$ touch .gitignore
```
For an example *.gitignore* file, see "[Some common .gitignore configurations](https://gist.github.com/octocat/9257657)" in the Octocat repository.
If you want to ignore a file that is already checked in, you must untrack the file before you add a rule to ignore it. From your terminal, untrack the file.
```shell
$ git rm --cached <em>FILENAME</em>
```
## Configuring ignored files for all repositories on your computer
You can also create a global *.gitignore* file to define a list of rules for ignoring files in every Git repository on your computer. For example, you might create the file at *~/.gitignore_global* and add some rules to it.
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Configure Git to use the exclude file *~/.gitignore_global* for all Git repositories.
```shell
$ git config --global core.excludesfile ~/.gitignore_global
```
## Excluding local files without creating a *.gitignore* file
If you don't want to create a *.gitignore* file to share with others, you can create rules that are not committed with the repository. You can use this technique for locally-generated files that you don't expect other users to generate, such as files created by your editor.
Use your favorite text editor to open the file called *.git/info/exclude* within the root of your Git repository. Any rule you add here will not be checked in, and will only ignore files for your local repository.
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Navigate to the location of your Git repository.
3. Using your favorite text editor, open the file *.git/info/exclude*.
## Further Reading
* [Ignoring files](https://git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository#_ignoring) in the Pro Git book
* [.gitignore](https://git-scm.com/docs/gitignore) in the man pages for Git
* [A collection of useful *.gitignore* templates](https://github.com/github/gitignore) in the github/gitignore repository
* [gitignore.io](https://www.gitignore.io/) site

View File

@@ -1,24 +0,0 @@
---
title: Getting started with Git
intro: 'Set up Git, a distributed version control system, to manage your {% data variables.product.product_name %} repositories from your computer.'
redirect_from:
- /articles/getting-started-with-git-and-github
- /github/using-git/getting-started-with-git-and-github
- /github/using-git/learning-about-git
- /articles/learning-about-git
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
children:
- /setting-your-username-in-git
- /caching-your-github-credentials-in-git
- /why-is-git-always-asking-for-my-password
- /updating-credentials-from-the-macos-keychain
- /git-workflows
- /about-remote-repositories
- /managing-remote-repositories
- /associating-text-editors-with-git
- /configuring-git-to-handle-line-endings
- /ignoring-files
---

View File

@@ -1,234 +0,0 @@
---
title: Managing remote repositories
intro: 'Learn to work with your local repositories on your computer and remote repositories hosted on {% data variables.product.product_name %}.'
redirect_from:
- /categories/18/articles/
- /remotes/
- /categories/managing-remotes/
- /articles/managing-remote-repositories
- /articles/adding-a-remote
- /github/using-git/adding-a-remote
- /articles/changing-a-remote-s-url
- /articles/changing-a-remotes-url
- /github/using-git/changing-a-remotes-url
- /articles/renaming-a-remote
- /github/using-git/renaming-a-remote
- /articles/removing-a-remote
- /github/using-git/removing-a-remote
- /github/using-git/managing-remote-repositories
- /github/getting-started-with-github/managing-remote-repositories
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## Adding a remote repository
To add a new remote, use the `git remote add` command on the terminal, in the directory your repository is stored at.
The `git remote add` command takes two arguments:
* A remote name, for example, `origin`
* A remote URL, for example, `https://{% data variables.command_line.backticks %}/user/repo.git`
For example:
```shell
$ git remote add origin https://{% data variables.command_line.codeblock %}/<em>user</em>/<em>repo</em>.git
# Set a new remote
$ git remote -v
# Verify new remote
> origin https://{% data variables.command_line.codeblock %}/<em>user</em>/<em>repo</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>user</em>/<em>repo</em>.git (push)
```
For more information on which URL to use, see "[About remote repositories](/github/getting-started-with-github/about-remote-repositories)."
### Troubleshooting: Remote origin already exists
This error means you've tried to add a remote with a name that already exists in your local repository.
```shell
$ git remote add origin https://{% data variables.command_line.codeblock %}/octocat/Spoon-Knife.git
> fatal: remote origin already exists.
```
To fix this, you can:
* Use a different name for the new remote.
* Rename the existing remote repository before you add the new remote. For more information, see "[Renaming a remote repository](#renaming-a-remote-repository)" below.
* Delete the existing remote repository before you add the new remote. For more information, see "[Removing a remote repository](#removing-a-remote-repository)" below.
## Changing a remote repository's URL
The `git remote set-url` command changes an existing remote repository URL.
{% tip %}
**Tip:** For information on the difference between HTTPS and SSH URLs, see "[About remote repositories](/github/getting-started-with-github/about-remote-repositories)."
{% endtip %}
The `git remote set-url` command takes two arguments:
* An existing remote name. For example, `origin` or `upstream` are two common choices.
* A new URL for the remote. For example:
* If you're updating to use HTTPS, your URL might look like:
```shell
https://{% data variables.command_line.backticks %}/<em>USERNAME</em>/<em>REPOSITORY</em>.git
```
* If you're updating to use SSH, your URL might look like:
```shell
git@{% data variables.command_line.codeblock %}:<em>USERNAME</em>/<em>REPOSITORY</em>.git
```
### Switching remote URLs from SSH to HTTPS
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Change the current working directory to your local project.
3. List your existing remotes in order to get the name of the remote you want to change.
```shell
$ git remote -v
> origin git@{% data variables.command_line.codeblock %}:<em>USERNAME/REPOSITORY</em>.git (fetch)
> origin git@{% data variables.command_line.codeblock %}:<em>USERNAME/REPOSITORY</em>.git (push)
```
4. Change your remote's URL from SSH to HTTPS with the `git remote set-url` command.
```shell
$ git remote set-url origin https://{% data variables.command_line.codeblock %}/<em>USERNAME</em>/<em>REPOSITORY</em>.git
```
5. Verify that the remote URL has changed.
```shell
$ git remote -v
# Verify new remote URL
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/REPOSITORY</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/REPOSITORY</em>.git (push)
```
The next time you `git fetch`, `git pull`, or `git push` to the remote repository, you'll be asked for your GitHub username and password. {% data reusables.user_settings.password-authentication-deprecation %}
You can [use a credential helper](/github/getting-started-with-github/caching-your-github-credentials-in-git) so Git will remember your GitHub username and personal access token every time it talks to GitHub.
### Switching remote URLs from HTTPS to SSH
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Change the current working directory to your local project.
3. List your existing remotes in order to get the name of the remote you want to change.
```shell
$ git remote -v
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/REPOSITORY</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/REPOSITORY</em>.git (push)
```
4. Change your remote's URL from HTTPS to SSH with the `git remote set-url` command.
```shell
$ git remote set-url origin git@{% data variables.command_line.codeblock %}:<em>USERNAME</em>/<em>REPOSITORY</em>.git
```
5. Verify that the remote URL has changed.
```shell
$ git remote -v
# Verify new remote URL
> origin git@{% data variables.command_line.codeblock %}:<em>USERNAME/REPOSITORY</em>.git (fetch)
> origin git@{% data variables.command_line.codeblock %}:<em>USERNAME/REPOSITORY</em>.git (push)
```
### Troubleshooting: No such remote '[name]'
This error means that the remote you tried to change doesn't exist:
```shell
$ git remote set-url sofake https://{% data variables.command_line.codeblock %}/octocat/Spoon-Knife
> fatal: No such remote 'sofake'
```
Check that you've correctly typed the remote name.
## Renaming a remote repository
Use the `git remote rename` command to rename an existing remote.
The `git remote rename` command takes two arguments:
* An existing remote name, for example, `origin`
* A new name for the remote, for example, `destination`
## Example
These examples assume you're [cloning using HTTPS](/github/getting-started-with-github/about-remote-repositories/#cloning-with-https-urls), which is recommended.
```shell
$ git remote -v
# View existing remotes
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER</em>/<em>REPOSITORY</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER</em>/<em>REPOSITORY</em>.git (push)
$ git remote rename origin destination
# Change remote name from 'origin' to 'destination'
$ git remote -v
# Verify remote's new name
> destination https://{% data variables.command_line.codeblock %}/<em>OWNER</em>/<em>REPOSITORY</em>.git (fetch)
> destination https://{% data variables.command_line.codeblock %}/<em>OWNER</em>/<em>REPOSITORY</em>.git (push)
```
### Troubleshooting: Could not rename config section 'remote.[old name]' to 'remote.[new name]'
This error means that the remote you tried the old remote name you typed doesn't exist.
You can check which remotes currently exist with the `git remote -v` command:
```shell
$ git remote -v
# View existing remotes
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER</em>/<em>REPOSITORY</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER</em>/<em>REPOSITORY</em>.git (push)
```
### Troubleshooting: Remote [new name] already exists
This error means that the remote name you want to use already exists. To solve this, either use a different remote name, or rename the original remote.
## Removing a remote repository
Use the `git remote rm` command to remove a remote URL from your repository.
The `git remote rm` command takes one argument:
* A remote name, for example, `destination`
## Example
These examples assume you're [cloning using HTTPS](/github/getting-started-with-github/about-remote-repositories/#cloning-with-https-urls), which is recommended.
```shell
$ git remote -v
# View current remotes
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER/REPOSITORY</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER/REPOSITORY</em>.git (push)
> destination https://{% data variables.command_line.codeblock %}/<em>FORKER/REPOSITORY</em>.git (fetch)
> destination https://{% data variables.command_line.codeblock %}/<em>FORKER/REPOSITORY</em>.git (push)
$ git remote rm destination
# Remove remote
$ git remote -v
# Verify it's gone
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER/REPOSITORY</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>OWNER/REPOSITORY</em>.git (push)
```
{% warning %}
**Note**: `git remote rm` does not delete the remote repository from the server. It simply
removes the remote and its references from your local repository.
{% endwarning %}
### Troubleshooting: Could not remove config section 'remote.[name]'
This error means that the remote you tried to delete doesn't exist:
```shell
$ git remote rm sofake
> error: Could not remove config section 'remote.sofake'
```
Check that you've correctly typed the remote name.
## Further reading
- "[Working with Remotes" from the _Pro Git_ book](https://git-scm.com/book/en/Git-Basics-Working-with-Remotes)

View File

@@ -1,52 +0,0 @@
---
title: Setting your username in Git
intro: 'Git uses a username to associate commits with an identity. The Git username is not the same as your {% data variables.product.product_name %} username.'
redirect_from:
- /articles/setting-your-username-in-git
- /github/using-git/setting-your-username-in-git
- /github/getting-started-with-github/setting-your-username-in-git
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
You can change the name that is associated with your Git commits using the `git config` command. The new name you set will be visible in any future commits you push to {% data variables.product.product_name %} from the command line. If you'd like to keep your real name private, you can use any text as your Git username.
Changing the name associated with your Git commits using `git config` will only affect future commits and will not change the name used for past commits.
## Setting your Git username for *every* repository on your computer
{% data reusables.command_line.open_the_multi_os_terminal %}
2. {% data reusables.user_settings.set_your_git_username %}
```shell
$ git config --global user.name "<em>Mona Lisa</em>"
```
3. {% data reusables.user_settings.confirm_git_username_correct %}
```shell
$ git config --global user.name
> Mona Lisa
```
## Setting your Git username for a single repository
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Change the current working directory to the local repository where you want to configure the name that is associated with your Git commits.
3. {% data reusables.user_settings.set_your_git_username %}
```shell
$ git config user.name "<em>Mona Lisa</em>"
```
3. {% data reusables.user_settings.confirm_git_username_correct %}
```shell
$ git config user.name
> Mona Lisa
```
## Further reading
- "[Setting your commit email address](/articles/setting-your-commit-email-address)"
- ["Git Configuration" from the _Pro Git_ book](https://git-scm.com/book/en/Customizing-Git-Git-Configuration)

View File

@@ -1,39 +0,0 @@
---
title: Updating credentials from the macOS Keychain
intro: 'You''ll need to update your saved credentials in the `git-credential-osxkeychain` helper if you change your{% if currentVersion != "github-ae@latest" %} username, password, or{% endif %} personal access token on {% data variables.product.product_name %}.'
redirect_from:
- /articles/updating-credentials-from-the-osx-keychain
- /github/using-git/updating-credentials-from-the-osx-keychain
- /github/using-git/updating-credentials-from-the-macos-keychain
- /github/getting-started-with-github/updating-credentials-from-the-macos-keychain
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
{% data reusables.user_settings.password-authentication-deprecation %}
## Updating your credentials via Keychain Access
1. Click on the Spotlight icon (magnifying glass) on the right side of the menu bar. Type `Keychain access` then press the Enter key to launch the app.
![Spotlight Search bar](/assets/images/help/setup/keychain-access.png)
2. In Keychain Access, search for **{% data variables.command_line.backticks %}**.
3. Find the "internet password" entry for `{% data variables.command_line.backticks %}`.
4. Edit or delete the entry accordingly.
## Deleting your credentials via the command line
Through the command line, you can use the credential helper directly to erase the keychain entry.
```shell
$ git credential-osxkeychain erase
host={% data variables.command_line.codeblock %}
protocol=https
> <em>[Press Return]</em>
```
If it's successful, nothing will print out. To test that it works, try and clone a private repository from {% data variables.product.product_location %}. If you are prompted for a password, the keychain entry was deleted.
## Further reading
- "[Caching your {% data variables.product.prodname_dotcom %} credentials in Git](/github/getting-started-with-github/caching-your-github-credentials-in-git/)"

View File

@@ -1,23 +0,0 @@
---
title: Why is Git always asking for my password?
intro: 'If Git prompts you for a username and password every time you try to interact with GitHub, you''re probably using the HTTPS clone URL for your repository.'
redirect_from:
- /articles/why-is-git-always-asking-for-my-password
- /github/using-git/why-is-git-always-asking-for-my-password
- /github/getting-started-with-github/why-is-git-always-asking-for-my-password
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
Using an HTTPS remote URL has some advantages compared with using SSH. It's easier to set up than SSH, and usually works through strict firewalls and proxies. However, it also prompts you to enter your {% data variables.product.product_name %} credentials every time you pull or push a repository.
{% data reusables.user_settings.password-authentication-deprecation %}
You can avoid being prompted for your password by configuring Git to [cache your credentials](/github/getting-started-with-github/caching-your-github-credentials-in-git) for you. Once you've configured credential caching, Git automatically uses your cached personal access token when you pull or push a repository using HTTPS.
## Further reading
- "[About remote repositories](/github/getting-started-with-github/about-remote-repositories)."
- "[About authentication to {% data variables.product.prodname_dotcom %}](/github/authenticating-to-github/about-authentication-to-github)"
- "[Adding your SSH key to the ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#adding-your-ssh-key-to-the-ssh-agent)"

View File

@@ -1,54 +0,0 @@
---
title: Getting started with GitHub
shortTitle: Getting started
intro: 'Learn how to start building, shipping, and maintaining software with {% data variables.product.prodname_dotcom %}. Explore our products, sign up for an account, and connect with the world''s largest development community.'
redirect_from:
- /categories/54/articles/
- /categories/bootcamp/
- /categories/32/articles/
- /categories/2/articles/
- /categories/organizations/
- /categories/about-github/
- /categories/53/articles/
- /categories/setup/
- /categories/getting-started-with-github
- /categories/19/articles/
- /categories/using-git
- /github/using-git
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
layout: product-landing
introLinks:
quickstart: /github/getting-started-with-github/quickstart
featuredLinks:
guides:
- /github/getting-started-with-github/githubs-products
- /github/getting-started-with-github/create-a-repo
- /github/getting-started-with-github/signing-up-for-a-new-github-account
popular:
- /github/getting-started-with-github/set-up-git
- /github/getting-started-with-github/github-glossary
- /github/getting-started-with-github/fork-a-repo
- /github/getting-started-with-github/keyboard-shortcuts
- /github/getting-started-with-github/saving-repositories-with-stars
guideCards:
- /github/getting-started-with-github/types-of-github-accounts
- /github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github
- /github/getting-started-with-github/troubleshooting-connectivity-problems
topics:
- Pull requests
- Issues
- Notifications
- Accounts
children:
- /quickstart
- /learning-about-github
- /signing-up-for-github
- /using-github
- /exploring-projects-on-github
- /getting-started-with-git
- /using-git
---

View File

@@ -1,71 +0,0 @@
---
title: About GitHub Advanced Security
intro: '{% data variables.product.prodname_dotcom %} makes extra security features available to customers under an {% data variables.product.prodname_advanced_security %} license.{% if currentVersion == "free-pro-team@latest" %} These features are also enabled for public repositories on {% data variables.product.prodname_dotcom_the_website %}.{% endif %}'
product: '{% data reusables.gated-features.ghas %}'
versions:
free-pro-team: '*'
enterprise-server: '>=3.0'
github-ae: '*'
topics:
- Security
redirect_from:
- /github/getting-started-with-github/about-github-advanced-security
---
## About {% data variables.product.prodname_GH_advanced_security %}
{% data variables.product.prodname_dotcom %} has many features that help you improve and maintain the quality of your code. Some of these are included in all plans{% if currentVersion != "github-ae@latest" %}, such as dependency graph and {% data variables.product.prodname_dependabot_alerts %}{% endif %}. Other security features require a license for {% data variables.product.prodname_GH_advanced_security %} to run on repositories apart from public repositories on {% data variables.product.prodname_dotcom_the_website %}.
{% if currentVersion == "free-pro-team@latest" %}For more information, see "[About licensing for {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-licensing-for-github-advanced-security/about-licensing-for-github-advanced-security)."{% elsif currentVersion ver_gt "enterprise-server@2.22" %}For information about purchasing a license for {% data variables.product.prodname_GH_advanced_security %}, contact {% data variables.contact.contact_enterprise_sales %}.{% elsif currentVersion == "github-ae@latest" %}There is no charge for {% data variables.product.prodname_GH_advanced_security %} on {% data variables.product.prodname_ghe_managed %} during the beta release.{% endif %}
## About {% data variables.product.prodname_advanced_security %} features
A {% data variables.product.prodname_GH_advanced_security %} license provides the following additional features:
- **{% data variables.product.prodname_code_scanning_capc %}** - Search for potential security vulnerabilities and coding errors in your code. For more information, see "[About {% data variables.product.prodname_code_scanning %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning)."
- **{% data variables.product.prodname_secret_scanning_caps %}** - Detect secrets, for example keys and tokens, that have been checked into the repository. For more information, see "[About {% data variables.product.prodname_secret_scanning %}](/github/administering-a-repository/about-secret-scanning)."
{% if currentVersion == "free-pro-team@latest" %}
- **Dependency review** - Show the full impact of changes to dependencies and see details of any vulnerable versions before you merge a pull request. For more information, see "[About dependency review](/code-security/supply-chain-security/about-dependency-review)."
{% endif %}
For information about {% data variables.product.prodname_advanced_security %} features that are in development, see "[{% data variables.product.prodname_dotcom %} public roadmap](https://github.com/github/roadmap)." For an overview of all security features, see "[{% data variables.product.prodname_dotcom %} security features](/code-security/getting-started/github-security-features)."
{% if currentVersion ver_gt "enterprise-server@2.22" or currentVersion == "github-ae@latest" %}
## Enabling {% data variables.product.prodname_advanced_security %} features on {% data variables.product.product_name %}
{% if currentVersion ver_gt "enterprise-server@2.22" %}
The site administrator must enable {% data variables.product.prodname_advanced_security %} for {% data variables.product.product_location %} before you can use these features. For more information, see "[Configuring Advanced Security features](/admin/configuration/configuring-advanced-security-features)."
{% endif %}
Once your system is set up, you can enable and disable these features at the organization or repository level. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)" and "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)."
{% endif %}
{% if currentVersion != "github-ae@latest" %}
## Enabling {% data variables.product.prodname_advanced_security %} features on {% data variables.product.prodname_dotcom_the_website %}
For public repositories on {% data variables.product.prodname_dotcom_the_website %}, these features are permanently on and can only be disabled if you change the visibility of the project so that the code is no longer public.
For other repositories, once you have a license for your enterprise account, you can enable and disable these features at the organization or repository level. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %}For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)" and "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)."{% endif %}
{% endif %}
{% if currentVersion == "free-pro-team@latest" %}
If you have an enterprise account, license use for the entire enterprise is shown on your enterprise license page. For more information, see "[Viewing your {% data variables.product.prodname_GH_advanced_security %} usage](/billing/managing-licensing-for-github-advanced-security/viewing-your-github-advanced-security-usage)."
{% endif %}
{% if currentVersion == "free-pro-team@latest" %}
## Further reading
- "[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise-account)"
{% elsif currentVersion ver_gt "enterprise-server@3.0" or currentVersion == "github-ae@next" %}
## Further reading
- "[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise](/admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise)"
{% endif %}

View File

@@ -1,42 +0,0 @@
---
title: Access permissions on GitHub
redirect_from:
- /articles/needs-to-be-written-what-can-the-different-types-of-org-team-permissions-do/
- /articles/what-are-the-different-types-of-team-permissions/
- /articles/what-are-the-different-access-permissions/
- /articles/access-permissions-on-github
- /github/getting-started-with-github/access-permissions-on-github
intro: 'While you can grant read/write access to collaborators on a personal repository, members of an organization can have more granular access permissions for the organization''s repositories.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Permissions
- Accounts
---
## Personal user accounts
A repository owned by a user account has two permission levels: the *repository owner* and *collaborators*. For more information, see "[Permission levels for a user account repository](/articles/permission-levels-for-a-user-account-repository)."
## Organization accounts
Organization members can have *owner*{% if currentVersion == "free-pro-team@latest" %}, *billing manager*,{% endif %} or *member* roles. Owners have complete administrative access to your organization{% if currentVersion == "free-pro-team@latest" %}, while billing managers can manage billing settings{% endif %}. Member is the default role for everyone else. You can manage access permissions for multiple members at a time with teams. For more information, see:
- "[Permission levels for an organization](/articles/permission-levels-for-an-organization)"
- "[Project board permissions for an organization](/articles/project-board-permissions-for-an-organization)"
- "[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization)"
- "[About teams](/articles/about-teams)"
{% if currentVersion == "free-pro-team@latest" %}
## Enterprise accounts
*Enterprise owners* have ultimate power over the enterprise account and can take every action in the enterprise account. *Billing managers* can manage your enterprise account's billing settings. Members and outside collaborators of organizations owned by your enterprise account are automatically members of the enterprise account, although they have no access to the enterprise account itself or its settings. For more information, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise)."
{% data reusables.gated-features.enterprise-accounts %}
{% endif %}
## Further reading
- "[Types of {% data variables.product.prodname_dotcom %} accounts](/articles/types-of-github-accounts)"

View File

@@ -1,93 +0,0 @@
---
title: FAQ about changes to GitHubs plans
intro: 'As of April 14, 2020, GitHub announced that all of the core GitHub features are now free for everyone.'
versions:
free-pro-team: '*'
topics:
- GitHub
redirect_from:
- /github/getting-started-with-github/faq-about-changes-to-githubs-plans
---
## What plans and pricing changes did GitHub announce on April 14?
GitHub announced the following plans and pricing changes:
- GitHub Free for organizations is immediately available and includes private repositories for unlimited users
- All organizations previously using Team for Open Source now have GitHub Free
- GitHub Free for individual developers now includes unlimited collaborators
- Organizations and individuals using GitHub Free will receive GitHub Community Support
- GitHub Pro will now include 2GB of Packages storage and 10GB of data transfer
- GitHub Pro now has a reduced monthly price of $4
- GitHub Team now has a reduced monthly price of $4 per user
- GitHub Team no longer has a required five-seat minimum
- GitHub Team includes 3,000 Actions minutes per month for private repositories
## How can I upgrade my plan?
To upgrade your user account's plan, see "[Upgrading your personal account's subscription](/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription#upgrading-your-personal-accounts-subscription)." To upgrade your organization's plan, see "[Upgrading your organization's subscription](/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription#upgrading-your-organizations-subscription)."
## How can I downgrade my plan?
To downgrade your user account's plan, see "[Downgrading your user account's subscription](/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription#downgrading-your-user-accounts-subscription)." To downgrade your organization's plan, see "[Downgrading your organization's subscription](/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription#downgrading-your-organizations-subscription)."
## If I downgrade from GitHub Team or a Legacy plan to GitHub Free, what features will I lose?
- Required reviewers in private repositories
- Protected branches in private repositories
- Code owners in private repositories
- GitHub Pages in private repositories
- Wikis in private repositories
- Multiple assignees for issues and pull requests in private repositories
- Multiple pull request reviewers in private repositories
- Draft pull requests in private repositories
- Autolinked references in private repositories
- Standard support
## How can I create a GitHub Free or GitHub Team organization?
If you have a GitHub account, create a new organization on our [team plan page](https://github.com/organizations/plan). If you dont have a GitHub account, you can [create one on our homepage](https://github.com/) and youll be prompted to create an organization during the sign-up process.
## How can I compare which features are in each plan?
You can see pricing and a full list of features for each product at <{% data variables.product.pricing_url %}>.
## How long will GitHub Free allow unlimited collaborators?
Forever! This change is permanent.
## I already paid for the yearly Pro or Team plan, do I get a refund for the price difference?
Customers who are currently paying annually for Pro and Team plans and signed up before April 14 will receive a refund for a prorated amount through the end of their annual billing term. For example, if you are two months into your subscription that is billed annually, you will receive a refund for the price difference for the remaining ten months. These refunds will be processed in approximately 30 days. Once your refund is processed, a notification will be sent to the billing email.
## What is the difference between GitHub Free for individual developers and GitHub Free for organizations?
For details on the differences for each GitHub Free product, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)."
## How can I get more Actions minutes if I need more than allocated in the GitHub Team plan?
Most small teams use fewer than 3,000 Actions minutes/month, but some teams might use more. If your team needs additional minutes for private repositories, you can increase your spending limit for GitHub Actions. Actions minutes and Packages storage are still free for your public repositories. For more information, see "[Managing your spending limit for GitHub Actions](/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions)."
## How do the seat limit changes affect me?
Now that {% data variables.product.prodname_team %} has no minimum seat requirement, if you are using fewer than five seats in your organization, you can remove paid seats to reduce your bill. For more information, see "[Downgrading your {% data variables.product.prodname_dotcom %} subscription](/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription#removing-paid-seats-from-your-organization)."
## Is anything changing for teams on the GitHub Team for Open Source plan?
If your organization account currently uses the GitHub Team for Open Source plan, youve been automatically moved to GitHub Free, which includes private repositories with unlimited collaborators, 2,000 Actions minutes for private repositories, and GitHub Community Support. Actions minutes and Packages storage are still free for your public repositories.
## What is GitHub Community Support?
GitHub Community Support includes support through our [Community Forum](https://github.community/), where you can browse solutions from the GitHub community, ask new questions, and share ideas. GitHub Community Support is staffed by Support Engineers on the GitHub Team, who moderate the Community Forum along with our most active community members. If you need to report spam, report abuse, or have issues with account access, you can send a message to our Support Team on https://support.github.com/.
## How does this change affect education benefits?
Students and teachers will continue to receive all of the benefits they get today. GitHub will continue to offer GitHub Pro as part of its [Student Developer Pack](https://education.github.com/pack) benefits to all students. Additionally, teachers will continue to have access to GitHub Team as part of the [Teacher Toolbox](https://education.github.com/toolbox).
## How does this affect me if I currently pay by invoice?
If youre currently an invoice customer, email your sales representative for additional details. If youre not sure who your sales representative is, contact your billing manager or account owner.
## How will this impact users and organizations in regions where U.S. government sanctions are applied?
Due to U.S. trade controls law restrictions, GitHub is unable to provide private repository services and paid services to accounts in U.S. sanctioned regions. GitHub has preserved, however, access to free public repository services. Please read about [GitHub and Trade Controls](/github/site-policy/github-and-trade-controls) for more information.
GitHub will continue advocating with U.S. regulators for the greatest possible access to free code collaboration services to developers in sanctioned regions, including free private repositories. We believe that offering those free services supports U.S. foreign policy of encouraging the free flow of information and free speech in those regions.

View File

@@ -1,40 +0,0 @@
---
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
redirect_from:
- /github/getting-started-with-github/github-language-support
---
<!-- 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.

View File

@@ -1,103 +0,0 @@
---
title: GitHub's products
intro: 'An overview of {% data variables.product.prodname_dotcom %}''s products and pricing plans.'
redirect_from:
- /articles/github-s-products
- /articles/githubs-products
- /github/getting-started-with-github/githubs-products
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Accounts
- CLI
- Mobile
- Desktop
- 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
With {% data variables.product.prodname_free_team %} for user accounts, you can work with unlimited collaborators on unlimited public repositories with a full feature set, and on unlimited private repositories with a limited feature set.
With {% data variables.product.prodname_free_user %}, your user account includes:
- {% data variables.product.prodname_gcf %}
- {% data variables.product.prodname_dependabot_alerts %}
- Two-factor authentication enforcement
- 2,000 {% data variables.product.prodname_actions %} minutes
- 500MB {% data variables.product.prodname_registry %} storage
## {% data variables.product.prodname_pro %}
In addition to the features available with {% data variables.product.prodname_free_user %} for user accounts, {% data variables.product.prodname_pro %} includes:
- {% data variables.contact.github_support %} via email
- 3,000 {% data variables.product.prodname_actions %} minutes
- 2GB {% data variables.product.prodname_registry %} storage
- Advanced tools and insights in private repositories:
- Required pull request reviewers
- Multiple pull request reviewers
- Auto-linked references
- {% data variables.product.prodname_pages %}
- Wikis
- Protected branches
- Code owners
- Repository insights graphs: Pulse, contributors, traffic, commits, code frequency, network, and forks
## {% data variables.product.prodname_free_team %} for organizations
With {% data variables.product.prodname_free_team %} for organizations, you can work with unlimited collaborators on unlimited public repositories with a full feature set, or unlimited private repositories with a limited feature set.
In addition to the features available with {% data variables.product.prodname_free_user %} for user accounts, {% data variables.product.prodname_free_team %} for organizations includes:
- {% data variables.product.prodname_gcf %}
- Team discussions
- Team access controls for managing groups
- 2,000 {% data variables.product.prodname_actions %} minutes
- 500MB {% data variables.product.prodname_registry %} storage
## {% data variables.product.prodname_team %}
In addition to the features available with {% data variables.product.prodname_free_team %} for organizations, {% data variables.product.prodname_team %} includes:
- {% data variables.contact.github_support %} via email
- 3,000 {% data variables.product.prodname_actions %} minutes
- 2GB {% data variables.product.prodname_registry %} storage
- Advanced tools and insights in private repositories:
- Required pull request reviewers
- Multiple pull request reviewers
- {% data variables.product.prodname_pages %}
- Wikis
- Protected branches
- Code owners
- Repository insights graphs: Pulse, contributors, traffic, commits, code frequency, network, and forks
- Draft pull requests
- Team pull request reviewers
- Scheduled reminders
{% data reusables.github-actions.actions-billing %}
## {% data variables.product.prodname_enterprise %}
{% data variables.product.prodname_enterprise %} includes two deployment options: cloud-hosted and self-hosted.
In addition to the features available with {% data variables.product.prodname_team %}, {% data variables.product.prodname_enterprise %} includes:
- {% data variables.contact.enterprise_support %}
- Additional security, compliance, and deployment controls
- Authentication with SAML single sign-on
- Access provisioning with SAML or SCIM
- {% data variables.product.prodname_github_connect %}{% if currentVersion == "free-pro-team@latest" or currentVersion == "github-ae@latest" or currentVersion ver_gt "enterprise-server@2.22" %}
- The option to purchase {% data variables.product.prodname_GH_advanced_security %}. For more information, see "[About {% data variables.product.prodname_GH_advanced_security %}](/github/getting-started-with-github/about-github-advanced-security)."{% endif %}
{% data variables.product.prodname_ghe_cloud %} also includes:
- {% data variables.contact.enterprise_support %}. For more information, see "<a href="/articles/github-enterprise-cloud-support" class="dotcom-only">{% data variables.product.prodname_ghe_cloud %} support</a>" and "<a href="/articles/github-enterprise-cloud-addendum" class="dotcom-only">{% data variables.product.prodname_ghe_cloud %} Addendum</a>."
- 50,000 {% data variables.product.prodname_actions %} minutes
- 50GB {% data variables.product.prodname_registry %} storage
- Access control for {% data variables.product.prodname_pages %} sites. For more information, see <a href="/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site" class="dotcom-only">Changing the visibility of your {% data variables.product.prodname_pages %} site</a>"
- A service level agreement for 99.9% monthly uptime
- The option to centrally manage policy and billing for multiple {% data variables.product.prodname_dotcom_the_website %} organizations with an enterprise account. For more information, see "<a href="/articles/about-enterprise-accounts" class="dotcom-only">About enterprise accounts</a>."
You can set up a trial to evaluate {% data variables.product.prodname_ghe_cloud %}. For more information, see "<a href="/articles/setting-up-a-trial-of-github-enterprise-cloud" class="dotcom-only">Setting up a trial of {% data variables.product.prodname_ghe_cloud %}</a>."
For more information about hosting your own instance of [{% data variables.product.prodname_ghe_server %}](https://enterprise.github.com), contact {% data variables.contact.contact_enterprise_sales %}. {% data reusables.enterprise_installation.request-a-trial %}

View File

@@ -1,23 +0,0 @@
---
title: Learning about GitHub
intro: 'Learn how you can use {% data variables.product.company_short %} products to improve your software management process and collaborate with other people.'
redirect_from:
- /articles/learning-about-github
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Accounts
- CLI
- Mobile
- Desktop
- Security
children:
- /githubs-products
- /github-language-support
- /about-github-advanced-security
- /types-of-github-accounts
- /access-permissions-on-github
- /faq-about-changes-to-githubs-plans
---

View File

@@ -1,83 +0,0 @@
---
title: Types of GitHub accounts
intro: 'Your user account is your identity on {% data variables.product.product_location %}. Your user account can be a member of any number of organizations.{% if currentVersion == "free-pro-team@latest" %} Organizations can belong to enterprise accounts.{% endif %}'
redirect_from:
- /manage-multiple-clients/
- /managing-clients/
- /articles/what-s-the-difference-between-user-and-organization-accounts/
- /articles/differences-between-user-and-organization-accounts/
- /articles/types-of-github-accounts
- /github/getting-started-with-github/types-of-github-accounts
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Accounts
- CLI
- Mobile
- Desktop
- Security
---
{% if currentVersion == "free-pro-team@latest" %}
For a full list of features for each {% data variables.product.product_name %} product, see "[{% data variables.product.prodname_dotcom %}'s products](/github/getting-started-with-github/githubs-products)."
{% endif %}
## Personal user accounts
Every person who uses {% data variables.product.product_location %} has their own user account, which includes:
{% if currentVersion == "free-pro-team@latest" %}
- Unlimited public and private repositories with {% data variables.product.prodname_free_user %}
- Unlimited collaborators with {% data variables.product.prodname_free_user %}
- Additional features for private repositories with {% data variables.product.prodname_pro %}
- Ability to [invite repository collaborators](/articles/inviting-collaborators-to-a-personal-repository)
{% else %}
- Unlimited repositories and [collaborators](/articles/permission-levels-for-a-user-account-repository)
- Ability to [add unlimited repository collaborators](/articles/inviting-collaborators-to-a-personal-repository)
{% endif %}
{% if currentVersion == "free-pro-team@latest" %}
{% tip %}
**Tips**:
- You can use one account for multiple purposes, such as for personal use and business use. We do not recommend creating more than one account. For more information, see "[Merging multiple user accounts](/articles/merging-multiple-user-accounts)."
- User accounts are intended for humans, but you can give one to a robot, such as a continuous integration bot, if necessary.
{% endtip %}
{% else %}
{% tip %}
**Tip**: User accounts are intended for humans, but you can give one to a robot, such as a continuous integration bot, if necessary.
{% endtip %}
{% endif %}
## Organization accounts
Organizations are shared accounts where groups of people can collaborate across many projects at once. Owners and administrators can manage member access to the organization's data and projects with sophisticated security and administrative features.
{% data reusables.organizations.organizations_include %}
{% if currentVersion == "free-pro-team@latest" %}
## Enterprise accounts
With enterprise accounts, you can centrally manage policy and billing for multiple {% data variables.product.prodname_dotcom_the_website %} organizations. {% data reusables.gated-features.enterprise-accounts %}
{% endif %}
## Further reading
{% if currentVersion == "free-pro-team@latest" %}- "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/articles/signing-up-for-a-new-github-account)"
- "[{% data variables.product.prodname_dotcom %}'s products](/articles/githubs-products)"{% endif %}
- "[Creating a new organization account](/articles/creating-a-new-organization-account)"

View File

@@ -1,79 +0,0 @@
---
title: Be social
redirect_from:
- /be-social/
- /articles/be-social
- /github/getting-started-with-github/be-social
intro: 'You can interact with people, repositories, and organizations on {% data variables.product.prodname_dotcom %}. See what others are working on and who they''re connecting with from your personal dashboard.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Profile
- Pull requests
- Issues
- Notifications
- Accounts
---
To learn about accessing your personal dashboard, see "[About your personal dashboard](/articles/about-your-personal-dashboard)."
## Following people
When you follow someone on {% data variables.product.product_location %}, you'll get notifications on your personal dashboard about their activity. For more information, see "[About your personal dashboard](/articles/about-your-personal-dashboard)."
Click **Follow** on a person's profile page to follow them.
![Follow user button](/assets/images/help/profile/follow-user-button.png)
## Watching a repository
You can watch a repository to receive notifications for new pull requests and issues. When the owner updates the repository, you'll see the changes in your personal dashboard. For more information see {% if currentVersion == "free-pro-team@latest" or currentVersion == "github-ae@latest" or currentVersion ver_gt "enterprise-server@2.20" %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions){% else %}"[Watching and unwatching repositories](/github/receiving-notifications-about-activity-on-github/watching-and-unwatching-repositories){% endif %}."
Click **Watch** at the top of a repository to watch it.
![Watch repository button](/assets/images/help/repository/repo-actions-watch.png)
## Joining the conversation
{% data reusables.support.ask-and-answer-forum %}
## Communicating on {% data variables.product.product_name %}
{% data variables.product.product_name %} provides built-in collaborative communication tools, such as issues and pull requests, allowing you to interact closely with your community when building great software. For an overview of these tools, and information about the specificity of each, see "[Quickstart for communicating on {% data variables.product.prodname_dotcom %}](/github/collaborating-with-issues-and-pull-requests/quickstart-for-communicating-on-github)."
## Doing even more
### Creating pull requests
You may want to contribute to another person's project, whether to add features or to fix bugs. After making changes, let the original author know by sending a pull request. For more information, see "[About pull requests](/articles/about-pull-requests)."
![Pull request button](/assets/images/help/repository/repo-actions-pullrequest.png)
### Using issues
When collaborating on a repository, use issues to track ideas, enhancements, tasks, or bugs. For more information, see '[About issues](/articles/about-issues/)."
![Issues button](/assets/images/help/repository/repo-tabs-issues.png)
### Participating in organizations
Organizations are shared accounts where businesses and open-source projects can collaborate across many projects at once. Owners and administrators can establish teams with special permissions, have a public organization profile, and keep track of activity within the organization. For more information, see "[About organizations](/articles/about-organizations/)."
![Switch account context dropdown](/assets/images/help/overview/dashboard-contextswitcher.png)
### Exploring other projects on {% data variables.product.prodname_dotcom %}
Discover interesting projects using {% data variables.explore.explore_github %}, [Explore repositories](https://github.com/explore), and the {% data variables.explore.trending_page %}. Star interesting projects and come back to them later. Visit your {% data variables.explore.your_stars_page %} to see all your starred projects. For more information, see "[About your personal dashboard](/articles/about-your-personal-dashboard/)."
## Celebrate
You're now connected to the {% data variables.product.product_name %} community. What do you want to do next?
![Star a project](/assets/images/help/stars/star-a-project.png)
- "[Set up Git](/articles/set-up-git)"
- "[Create a repository](/articles/create-a-repo)"
- "[Fork a repository](/articles/fork-a-repo)"
- **Be social**
- {% data reusables.support.connect-in-the-forum-bootcamp %}

View File

@@ -1,154 +0,0 @@
---
title: Communicating on GitHub
intro: 'You can discuss specific projects and changes, as well as broader ideas or team goals, using different types of discussions on {% data variables.product.product_name %}.'
miniTocMaxHeadingLevel: 3
redirect_from:
- /github/collaborating-with-issues-and-pull-requests/getting-started/quickstart-for-communicating-on-github
- /articles/about-discussions-in-issues-and-pull-requests/
- /github/collaborating-with-issues-and-pull-requests/about-conversations-on-github
- /github/collaborating-with-issues-and-pull-requests/quickstart-for-communicating-on-github
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Pull requests
- Issues
- Discussions
- Fundamentals
---
## Introduction
{% data variables.product.product_name %} provides built-in collaborative communication tools allowing you to interact closely with your community. This quickstart guide will show you how to pick the right tool for your needs.
{% if currentVersion == "free-pro-team@latest" %}
You can create and participate in issues, pull requests, {% data variables.product.prodname_discussions %}, and team discussions, depending on the type of conversation you'd like to have.
{% endif %}
{% if currentVersion ver_gt "enterprise-server@2.20" or currentVersion == "github-ae@latest" %}
You can create and participate in issues, pull requests and team discussions, depending on the type of conversation you'd like to have.
{% endif %}
### Issues
- are useful for discussing specific details of a project such as bug reports, planned improvements and feedback.
- are specific to a repository, and usually have a clear owner.
- are often referred to as {% data variables.product.prodname_dotcom %}'s bug-tracking system.
### Pull requests
- allow you to propose specific changes.
- allow you comment directly on proposed changes suggested by others.
- are specific to a repository.
{% if currentVersion == "free-pro-team@latest" %}
### {% data variables.product.prodname_discussions %}
- are like a forum, and are best used for open-form ideas and discussions where collaboration is important.
- may span many repositories.
- provide a collaborative experience outside the codebase, allowing the brainstorming of ideas, and the creation of a community knowledge base.
- often dont have a clear owner.
- often do not result in an actionable task.
{% endif %}
### Team discussions
- can be started on your team's page for conversations that span across projects and don't belong in a specific issue or pull request. Instead of opening an issue in a repository to discuss an idea, you can include the entire team by having a conversation in a team discussion.
- allow you to hold discussions with your team about planning, analysis, design, user research and general project decision making in one place.{% if currentVersion ver_gt "enterprise-server@2.20" or currentVersion == "github-ae@latest" %}
- provide a collaborative experience outside the codebase, allowing the brainstorming of ideas.
- often dont have a clear owner.
- often do not result in an actionable task.{% endif %}
## Which discussion tool should I use?
### Scenarios for issues
- I want to keep track of tasks, enhancements and bugs.
- I want to file a bug report.
- I want to share feedback about a specific feature.
- I want to ask a question about files in the repository.
#### Issue example
This example illustrates how a {% data variables.product.prodname_dotcom %} user created an issue in our documentation open source repository to make us aware of a bug, and discuss a fix.
![Example of issue](/assets/images/help/issues/issue-example.png)
- A user noticed that the blue color of the banner at the top of the page in the Chinese version of the {% data variables.product.prodname_dotcom %} Docs makes the text in the banner unreadable.
- The user created an issue in the repository, stating the problem and suggesting a fix (which is, use a different background color for the banner).
- A discussion ensues, and eventually, a consensus will be reached about the fix to apply.
- A contributor can then create a pull request with the fix.
### Scenarios for pull requests
- I want to fix a typo in a repository.
- I want to make changes to a repository.
- I want to make changes to fix an issue.
- I want to comment on changes suggested by others.
#### Pull request example
This example illustrates how a {% data variables.product.prodname_dotcom %} user created a pull request in our documentation open source repository to fix a typo.
In the **Conversation** tab of the pull request, the author explain why they created the pull request.
![Example of pull request - Conversation tab](/assets/images/help/pull_requests/pr-conversation-example.png)
The **Files changed** tab of the pull request shows the implemented fix.
![Example of pull request - Files changed tab](/assets/images/help/pull_requests/pr-files-changed-example.png)
- This contributor notices a typo in the repository.
- The user creates a pull request with the fix.
- A repository maintainer reviews the pull request, comments on it, and merges it.
{% if currentVersion == "free-pro-team@latest" %}
### Scenarios for {% data variables.product.prodname_discussions %}
- I have a question that's not necessarily related to specific files in the repository.
- I want to share news with my collaborators, or my team.
- I want to start or participate in an open-ended conversation.
- I want to make an announcement to my community.
#### {% data variables.product.prodname_discussions %} example
This example shows the {% data variables.product.prodname_discussions %} welcome post for the {% data variables.product.prodname_dotcom %} Docs open source repository, and illustrates how the team wants to collaborate with their community.
![Example of {% data variables.product.prodname_discussions %}](/assets/images/help/discussions/github-discussions-example.png)
This community maintainer started a discussion to welcome the community, and to ask members to introduce themselves. This post fosters an inviting atmosphere for visitors and contributors. The post also clarifies that the team's happy to help with contributions to the repository.
{% endif %}
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.20" or currentVersion == "github-ae@latest" %}
### Scenarios for team discussions
- I have a question that's not necessarily related to specific files in the repository.
- I want to share news with my collaborators, or my team.
- I want to start or participate in an open-ended conversation.
- I want to make an announcement to my team.
{% if currentVersion == "free-pro-team@latest" %}
As you can see, team discussions are very similar to {% data variables.product.prodname_discussions %}. For {% data variables.product.prodname_dotcom_the_website %}, we recommend using {% data variables.product.prodname_discussions %} as the starting point for conversations. You can use {% data variables.product.prodname_discussions %} to collaborate with any community on {% data variables.product.prodname_dotcom %}. If you are part of an organization, and would like to initiate conversations within your organization or team within that organization, you should use team discussions.
{% endif %}
#### Team discussion example
This example shows a team post for the `octo-team` team.
![Example of team discussion](/assets/images/help/projects/team-discussions-example.png)
The `octocat` team member posted a team discussion, informing the team of various things:
- A team member called Mona started remote game events.
- There is a blog post describing how the teams uses {% data variables.product.prodname_actions %} to produce their docs.
- Material about the April All Hands is now available for all team members to view.
{% endif %}
## Next steps
These examples showed you how to decide which is the best tool for your conversations on {% data variables.product.product_name %}. But this is only the beginning; there is so much more you can do to tailor these tools to your needs.
For issues, for example, you can tag issues with labels for quicker searching and create issue templates to help contributors open meaningful issues. For more information, see "[About issues](/github/managing-your-work-on-github/about-issues#working-with-issues)" and "[About issue and pull request templates](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates)."
For pull requests, you can create draft pull requests if your proposed changes are still a work in progress. Draft pull requests cannot be merged until they're marked as ready for review. For more information, see "[About pull requests](/github/collaborating-with-issues-and-pull-requests/about-pull-requests#draft-pull-requests)."
{% if currentVersion == "free-pro-team@latest" %}
For {% data variables.product.prodname_discussions %}, you can set up a code of conduct and pin discussions that contain important information for your community. For more information, see "[About discussions](/discussions/collaborating-with-your-community-using-discussions/about-discussions)."
{% endif %}
For team discussions, you can edit or delete discussions on a team's page, and you can configure notifications for team discussions. For more information, see "[About team discussions](/organizations/collaborating-with-your-team/about-team-discussions)."

View File

@@ -1,88 +0,0 @@
---
title: Create a repo
redirect_from:
- /create-a-repo/
- /articles/create-a-repo
- /github/getting-started-with-github/create-a-repo
intro: 'To put your project up on {% data variables.product.product_location %}, you''ll need to create a repository for it to live in.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Pull requests
- Issues
- Notifications
- Accounts
---
## Create a repository
{% if currentVersion == "free-pro-team@latest" %}
You can store a variety of projects in {% data variables.product.product_name %} repositories, including open source projects. With [open source projects](http://opensource.org/about), you can share code to make better, more reliable software. You can use repositories to collaborate with others and track your work. For more information, see "[About repositories](/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-repositories)."
{% elsif enterpriseServerVersions contains currentVersion or currentVersion == "github-ae@latest" %}
You can store a variety of projects in {% data variables.product.product_name %} repositories, including innersource projects. With innersource, you can share code to make better, more reliable software. For more information on innersource, see {% data variables.product.company_short %}'s white paper "[An introduction to innersource](https://resources.github.com/whitepapers/introduction-to-innersource/)."
{% endif %}
{% if currentVersion == "free-pro-team@latest" %}
{% note %}
**Note:** You can create public repositories for an open source project. When creating your public repository, make sure to include a [license file](https://choosealicense.com/) that determines how you want your project to be shared with others. {% data reusables.open-source.open-source-guide-repositories %} {% data reusables.open-source.open-source-learning-lab %}
{% endnote %}
{% endif %}
{% data reusables.repositories.create_new %}
2. Type a short, memorable name for your repository. For example, "hello-world".
![Field for entering a repository name](/assets/images/help/repository/create-repository-name.png)
3. Optionally, add a description of your repository. For example, "My first repository on {% data variables.product.product_name %}."
![Field for entering a repository description](/assets/images/help/repository/create-repository-desc.png)
{% data reusables.repositories.choose-repo-visibility %}
{% data reusables.repositories.initialize-with-readme %}
{% data reusables.repositories.create-repo %}
Congratulations! You've successfully created your first repository, and initialized it with a *README* file.
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.19" or currentVersion == "github-ae@latest" %}
{% tip %}
**Tip**: You can also create repositories using the {% data variables.product.prodname_cli %}. For more information, see "[`gh repo create`](https://cli.github.com/manual/gh_repo_create)" in the {% data variables.product.prodname_cli %} documentation.
{% endtip %}
{% endif %}
## Commit your first change
A *[commit](/articles/github-glossary#commit)* is like a snapshot of all the files in your project at a particular point in time.
When you created your new repository, you initialized it with a *README* file. *README* files are a great place to describe your project in more detail, or add some documentation such as how to install or use your project. The contents of your *README* file are automatically shown on the front page of your repository.
Let's commit a change to the *README* file.
1. In your repository's list of files, click ***README.md***.
![README file in file list](/assets/images/help/repository/create-commit-open-readme.png)
2. Above the file's content, click {% octicon "pencil" aria-label="The edit icon" %}.
3. On the **Edit file** tab, type some information about yourself.
![New content in file](/assets/images/help/repository/edit-readme-light.png)
{% data reusables.files.preview_change %}
5. Review the changes you made to the file. You'll see the new content in green.
![File preview view](/assets/images/help/repository/create-commit-review.png)
{% data reusables.files.write_commit_message %}
{% data reusables.files.choose_commit_branch %}
{% data reusables.files.propose_file_change %}
## Celebrate
Congratulations! You have now created a repository, including a *README* file, and created your first commit on {% data variables.product.product_location %}. What do you want to do next?
- "[Set up Git](/articles/set-up-git)"
- **Create a repository**
- "[Clone a repository](/github/creating-cloning-and-archiving-repositories/cloning-a-repository)"
- "[Fork a repository](/articles/fork-a-repo)"
- "[Be social](/articles/be-social)"
- {% data reusables.support.connect-in-the-forum-bootcamp %}

View File

@@ -1,156 +0,0 @@
---
title: Fork a repo
redirect_from:
- /fork-a-repo/
- /forking/
- /articles/fork-a-repo
- /github/getting-started-with-github/fork-a-repo
intro: A fork is a copy of a repository. Forking a repository allows you to freely experiment with changes without affecting the original project.
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Pull requests
- Issues
- Notifications
- Accounts
---
## About forks
Most commonly, forks are used to either propose changes to someone else's project or to use someone else's project as a starting point for your own idea. You can fork a repository to create a copy of the repository and make changes without affecting the upstream repository. For more information, see "[Working with forks](/github/collaborating-with-issues-and-pull-requests/working-with-forks)."
### Propose changes to someone else's project
For example, you can use forks to propose changes related to fixing a bug. Rather than logging an issue for a bug you've found, you can:
- Fork the repository.
- Make the fix.
- Submit a pull request to the project owner.
### Use someone else's project as a starting point for your own idea.
Open source software is based on the idea that by sharing code, we can make better, more reliable software. For more information, see the "[About the Open Source Initiative](http://opensource.org/about)" on the Open Source Initiative.
For more information about applying open source principles to your organization's development work on {% data variables.product.product_location %}, see {% data variables.product.prodname_dotcom %}'s white paper "[An introduction to innersource](https://resources.github.com/whitepapers/introduction-to-innersource/)."
{% if currentVersion == "free-pro-team@latest" or enterpriseServerVersions contains currentVersion %}
When creating your public repository from a fork of someone's project, make sure to include a license file that determines how you want your project to be shared with others. For more information, see "[Choose an open source license](https://choosealicense.com/)" at choosealicense.com.
{% data reusables.open-source.open-source-guide-repositories %} {% data reusables.open-source.open-source-learning-lab %}
{% endif %}
{% note %}
**Note**: {% data reusables.repositories.desktop-fork %}
{% endnote %}
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.19" or currentVersion == "github-ae@latest" %}
{% tip %}
**Tip**: You can also fork a repository using the {% data variables.product.prodname_cli %}. For more information, see "[`gh repo fork`](https://cli.github.com/manual/gh_repo_fork)" in the {% data variables.product.prodname_cli %} documentation.
{% endtip %}
{% endif %}
## Fork an example repository
Forking a repository is a simple two-step process. We've created a repository for you to practice with.
1. On {% data variables.product.product_location %}, navigate to the [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository.
2. In the top-right corner of the page, click **Fork**.
![Fork button](/assets/images/help/repository/fork_button.jpg)
## Keep your fork synced
You might fork a project to propose changes to the upstream, or original, repository. In this case, it's good practice to regularly sync your fork with the upstream repository. To do this, you'll need to use Git on the command line. You can practice setting the upstream repository using the same [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository you just forked.
### Step 1: Set up Git
If you haven't yet, you should first [set up Git](/articles/set-up-git). Don't forget to [set up authentication to {% data variables.product.product_location %} from Git](/articles/set-up-git#next-steps-authenticating-with-github-from-git) as well.
### Step 2: Create a local clone of your fork
Right now, you have a fork of the Spoon-Knife repository, but you don't have the files in that repository on your computer. Let's create a clone of your fork locally on your computer.
1. On {% data variables.product.product_name %}, navigate to **your fork** of the Spoon-Knife repository.
{% data reusables.repositories.copy-clone-url %}
{% data reusables.command_line.open_the_multi_os_terminal %}
{% data reusables.command_line.change-current-directory-clone %}
4. Type `git clone`, and then paste the URL you copied earlier. It will look like this, with your {% data variables.product.product_name %} username instead of `YOUR-USERNAME`:
```shell
$ git clone https://{% data variables.command_line.codeblock %}/<em>YOUR-USERNAME</em>/Spoon-Knife
```
5. Press **Enter**. Your local clone will be created.
```shell
$ git clone https://{% data variables.command_line.codeblock %}/<em>YOUR-USERNAME</em>/Spoon-Knife
> Cloning into `Spoon-Knife`...
> remote: Counting objects: 10, done.
> remote: Compressing objects: 100% (8/8), done.
> remove: Total 10 (delta 1), reused 10 (delta 1)
> Unpacking objects: 100% (10/10), done.
```
Now, you have a local copy of your fork of the Spoon-Knife repository.
### Step 3: Configure Git to sync your fork with the original Spoon-Knife repository
When you fork a project in order to propose changes to the original repository, you can configure Git to pull changes from the original, or upstream, repository into the local clone of your fork.
1. On {% data variables.product.product_name %}, navigate to the [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository.
{% data reusables.repositories.copy-clone-url %}
{% data reusables.command_line.open_the_multi_os_terminal %}
4. Change directories to the location of the fork you cloned in [Step 2: Create a local clone of your fork](#step-2-create-a-local-clone-of-your-fork).
- To go to your home directory, type just `cd` with no other text.
- To list the files and folders in your current directory, type `ls`.
- To go into one of your listed directories, type `cd your_listed_directory`.
- To go up one directory, type `cd ..`.
5. Type `git remote -v` and press **Enter**. You'll see the current configured remote repository for your fork.
```shell
$ git remote -v
> origin https://{% data variables.command_line.codeblock %}/<em>YOUR_USERNAME</em>/<em>YOUR_FORK</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>YOUR_USERNAME</em>/<em>YOUR_FORK</em>.git (push)
```
6. Type `git remote add upstream`, and then paste the URL you copied in Step 2 and press **Enter**. It will look like this:
```shell
$ git remote add upstream https://{% data variables.command_line.codeblock %}/octocat/Spoon-Knife.git
```
7. To verify the new upstream repository you've specified for your fork, type `git remote -v` again. You should see the URL for your fork as `origin`, and the URL for the original repository as `upstream`.
```shell
$ git remote -v
> origin https://{% data variables.command_line.codeblock %}/<em>YOUR_USERNAME</em>/<em>YOUR_FORK</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>YOUR_USERNAME</em>/<em>YOUR_FORK</em>.git (push)
> upstream https://{% data variables.command_line.codeblock %}/<em>ORIGINAL_OWNER</em>/<em>ORIGINAL_REPOSITORY</em>.git (fetch)
> upstream https://{% data variables.command_line.codeblock %}/<em>ORIGINAL_OWNER</em>/<em>ORIGINAL_REPOSITORY</em>.git (push)
```
Now, you can keep your fork synced with the upstream repository with a few Git commands. For more information, see "[Syncing a fork](/articles/syncing-a-fork)."
### Next steps
You can make any changes to a fork, including:
- **Creating branches:** [*Branches*](/articles/creating-and-deleting-branches-within-your-repository/) allow you to build new features or test out ideas without putting your main project at risk.
- **Opening pull requests:** If you are hoping to contribute back to the original repository, you can send a request to the original author to pull your fork into their repository by submitting a [pull request](/articles/about-pull-requests).
## Find another repository to fork
Fork a repository to start contributing to a project. {% data reusables.repositories.you-can-fork %}
{% if currentVersion == "free-pro-team@latest" %}You can browse [Explore](https://github.com/explore) to find projects and start contributing to open source repositories. For more information, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)."
{% endif %}
## Celebrate
You have now forked a repository, practiced cloning your fork, and configured an upstream repository. What do you want to do next?
- "[Set up Git](/articles/set-up-git)"
- "[Create a repository](/articles/create-a-repo)"
- **Fork a repository**
- "[Be social](/articles/be-social)"
- {% data reusables.support.connect-in-the-forum-bootcamp %}

View File

@@ -1,60 +0,0 @@
---
title: Git and GitHub learning resources
redirect_from:
- /articles/good-resources-for-learning-git-and-github/
- /articles/what-are-other-good-resources-for-learning-git-and-github/
- /articles/git-and-github-learning-resources
- /github/getting-started-with-github/git-and-github-learning-resources
intro: 'There are a lot of helpful Git and {% data variables.product.product_name %} resources on the web. This is a short list of our favorites!'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
authors:
- GitHub
---
## Using Git
Familiarize yourself with Git by visiting the [official Git project site](https://git-scm.com) and reading the [ProGit book](http://git-scm.com/book). You can review the [Git command list](https://git-scm.com/docs) or [Git command lookup reference](http://gitref.org) while using the [Try Git](https://try.github.com) simulator.
## Using {% data variables.product.product_name %}
{% if currentVersion == "free-pro-team@latest" %}
{% data variables.product.prodname_learning %} offers free interactive courses that are built into {% data variables.product.prodname_dotcom %} with instant automated feedback and help. Learn to open your first pull request, make your first open source contribution, create a {% data variables.product.prodname_pages %} site, and more. For more information about course offerings, see [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}).
{% endif %}
Become better acquainted with {% data variables.product.product_name %} through our [getting started](/categories/getting-started-with-github/) articles. See our [{% data variables.product.prodname_dotcom %} flow](https://guides.github.com/introduction/flow) for a process introduction. Refer to our [overview guides](https://guides.github.com) to walk through basic concepts.
{% data reusables.support.ask-and-answer-forum %}
### Branches, forks, and pull requests
Learn about [Git branching](http://learngitbranching.js.org/) using an interactive tool. Read about [forks](/articles/about-forks) and [pull requests](/articles/using-pull-requests) as well as [how we use pull requests](https://github.com/blog/1124-how-we-use-pull-requests-to-build-github) at {% data variables.product.prodname_dotcom %}. Access references about using {% data variables.product.prodname_dotcom %} from the [command line](https://cli.github.com/).
### Tune in
Our {% data variables.product.prodname_dotcom %} [YouTube Training and Guides channel](https://youtube.com/githubguides) offers tutorials about [pull requests](https://www.youtube.com/watch?v=d5wpJ5VimSU&list=PLg7s6cbtAD15G8lNyoaYDuKZSKyJrgwB-&index=19), [forking](https://www.youtube.com/watch?v=5oJHRbqEofs), [rebase](https://www.youtube.com/watch?v=SxzjZtJwOgo&list=PLg7s6cbtAD15G8lNyoaYDuKZSKyJrgwB-&index=22), and [reset](https://www.youtube.com/watch?v=BKPjPMVB81g) functions. Each topic is covered in 5 minutes or less.
## Training
### Free courses
{% data variables.product.product_name %} offers a series of interactive, [on-demand training courses](https://lab.github.com/) including [Introduction to {% data variables.product.prodname_dotcom %}](https://lab.github.com/githubtraining/introduction-to-github); courses on programming languages and tools such as HTML, Python, and NodeJS; and courses on {% data variables.product.product_name %} specific tools such as {% data variables.product.prodname_actions %}.
### {% data variables.product.prodname_dotcom %}'s web-based educational programs
{% data variables.product.prodname_dotcom %} offers live [trainings](https://services.github.com/#upcoming-events) with a hands-on, project-based approach for those who love the command line and those who don't.
### Training for your company
{% data variables.product.prodname_dotcom %} offers [in-person classes](https://services.github.com/#offerings) taught by our highly-experienced educators. [Contact us](https://services.github.com/#contact) to ask your training-related questions.
## Extras
An interactive [online Git course](http://www.codeschool.com/courses/git-real) from [Code School](http://codeschool.com) has seven levels with dozens of exercises in a fun game format. Feel free to adapt our [.gitignore templates](https://github.com/github/gitignore) to meet your needs.
Extend your {% data variables.product.prodname_dotcom %} reach through {% if currentVersion == "free-pro-team@latest" %}[integrations](/articles/about-integrations){% else %}integrations{% endif %}, or by installing [{% data variables.product.prodname_desktop %}](https://desktop.github.com) and the robust [Atom](https://atom.io) text editor.
Learn how to launch and grow your open source project with the [Open Source Guides](https://opensource.guide/).

View File

@@ -1,14 +0,0 @@
---
title: Git cheatsheet
redirect_from:
- /articles/git-cheatsheet
- /github/getting-started-with-github/git-cheatsheet
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
intro: This Git cheat sheet is a time saver when you forget a command or don't want to use help in the CLI.
---
Learning all available Git commands at once can be a daunting task. You can use "[Git Cheat Sheets](https://training.github.com/)" for a quick reference to frequently used commands. The "Using Git" cheat sheet is available in several languages.
In addition, take a look at our [Git and GitHub learning resources](/articles/git-and-github-learning-resources/) page that links to guides, videos and more.

View File

@@ -1,99 +0,0 @@
---
title: GitHub flow
intro: 'Follow {% data variables.product.prodname_dotcom %} flow to collaborate on projects.'
redirect_from:
- /articles/creating-and-editing-files-in-your-repository/
- /articles/github-flow-in-the-browser/
- /articles/github-flow
- /github/collaborating-with-issues-and-pull-requests/github-flow
- /github/getting-started-with-github/github-flow
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Pull requests
- Fundamentals
miniTocMaxHeadingLevel: 3
---
## Introduction
{% data variables.product.prodname_dotcom %} flow is a lightweight, branch-based workflow. The {% data variables.product.prodname_dotcom %} flow is useful for everyone, not just developers. For example, here at {% data variables.product.prodname_dotcom %}, we use {% data variables.product.prodname_dotcom %} flow for our [site policy](https://github.com/github/site-policy), [documentation](https://github.com/github/docs), and [roadmap](https://github.com/github/roadmap).
## Prerequisites
To follow {% data variables.product.prodname_dotcom %} flow, you will need {% data variables.product.prodname_dotcom %} account and a repository. For information on how to create an account, see "[Signing up for {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/signing-up-for-github)." For information on how to create a repository, see "[Create a repo](/github/getting-started-with-github/create-a-repo)."{% if currentVersion == "free-pro-team@latest" %} For information on how to find an existing repository to contribute to, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)."{% endif %}
## Following {% data variables.product.prodname_dotcom %} flow
{% tip %}
{% if currentVersion == "free-pro-team@latest" %}
**Tip:** You can complete all steps of {% data variables.product.prodname_dotcom %} flow through {% data variables.product.prodname_dotcom %} web interface, command line and [{% data variables.product.prodname_cli %}](https://cli.github.com), or [{% data variables.product.prodname_desktop %}](/desktop).
{% else %}
**Tip:** You can complete all steps of {% data variables.product.prodname_dotcom %} flow through {% data variables.product.prodname_dotcom %} web interface or through the command line and [{% data variables.product.prodname_cli %}](https://cli.github.com).
{% endif %}
{% endtip %}
### Create a branch
Create a branch in your repository. A short, descriptive branch name enables your collaborators to see ongoing work at a glance. For example, `increase-test-timeout` or `add-code-of-conduct`. For more information, see "[Creating and deleting branches within your repository](/github/collaborating-with-issues-and-pull-requests/creating-and-deleting-branches-within-your-repository)."
By creating a branch, you create a space to work without affecting the default branch. Additionally, you give collaborators a chance to review your work.
### Make changes
On your branch, make any desired changes to the repository. For more information, see "[Creating new files](/articles/creating-new-files)," "[Editing files](/articles/editing-files)," "[Renaming a file](/articles/renaming-a-file)," "[Moving a file to a new location](/articles/moving-a-file-to-a-new-location)," or "[Deleting files in a repository](/github/managing-files-in-a-repository/deleting-files-in-a-repository)."
Your branch is a safe place to make changes. If you make a mistake, you can revert your changes or push additional changes to fix the mistake. Your changes will not end up on the default branch until you merge your branch.
Commit and push your changes to your branch. Give each commit a descriptive message to help you and future contributors understand what changes the commit contains. For example, `fix typo` or `increase rate limit`.
Ideally, each commit contains an isolated, complete change. This makes it easy to revert your changes if you decide to take a different approach. For example, if you want to rename a variable and add some tests, put the variable rename in one commit and the tests in another commit. Later, if you want to keep the tests but revert the variable rename, you can revert the specific commit that contained the variable rename. If you put the variable rename and tests in the same commit or spread the variable rename across multiple commits, you would spend more effort reverting your changes.
By committing and pushing your changes, you back up your work to remote storage. This means that you can access your work from any device. It also means that your collaborators can see your work, answer questions, and make suggestions or contributions.
Continue to make, commit, and push changes to your branch until you are ready to ask for feedback.
{% tip %}
**Tip:** Make a separate branch for each set of unrelated changes. This makes it easier for reviewers to give feedback. It also makes it easier for you and future collaborators to understand the changes and to revert or build on them. Additionally, if there is a delay in one set of changes, your other changes aren't also delayed.
{% endtip %}
### Create a pull request
Create a pull request to ask collaborators for feedback on your changes. Pull request review is so valuable that some repositories require an approving review before pull requests can be merged. If you want early feedback or advice before you complete your changes, you can mark your pull request as a draft. For more information, see "[Creating a pull request](/articles/creating-a-pull-request)."
When you create a pull request, include a summary of the changes and what problem they solve. You can include images, links, and tables to help convey this information. If your pull request addresses an issue, link the issue so that issue stakeholders are aware of the pull request and vice versa. If you link with a keyword, the issue will close automatically when the pull request merges. For more information, see "[Basic writing and formatting syntax](/github/writing-on-github/basic-writing-and-formatting-syntax)" and "[Linking a pull request to an issue](/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue)."
![pull request body](/assets/images/help/pull_requests/pull-request-body.png)
In addition to filling out the body of the pull request, you can add comments to specific lines of the pull request to explicitly point something out to the reviewers.
![pull request comment](/assets/images/help/pull_requests/pull-request-comment.png)
Your repository may be configured to automatically request a review from specific teams or users when a pull request is created. You can also manually @mention or request a review from specific people or teams.
If your repository has checks configured to run on pull requests, you will see any checks that failed on your pull request. This helps you catch errors before merging your branch. For more information, see "[About status checks](/github/collaborating-with-issues-and-pull-requests/about-status-checks)."
### Address review comments
Reviewers should leave questions, comments, and suggestions. Reviewers can comment on the whole pull request or add comments to specific lines. You and reviewers can insert images or code suggestions to clarify comments. For more information, see "[Reviewing changes in pull requests](/github/collaborating-with-issues-and-pull-requests/reviewing-changes-in-pull-requests)."
You can continue to commit and push changes in response to the reviews. Your pull request will update automatically.
### Merge your pull request
Once your pull request is approved, merge your pull request. This will automatically merge your branch so that your changes appear on the default branch. {% data variables.product.prodname_dotcom %} retains the history of comments and commits in the pull request to help future contributors understand your changes. For more information, see "[Merging a pull request](/articles/merging-a-pull-request)."
{% data variables.product.prodname_dotcom %} will tell you if your pull request has conflicts that must be resolved before merging. For more information, see "[Addressing merge conflicts](/github/collaborating-with-issues-and-pull-requests/addressing-merge-conflicts)."
Branch protection settings may block merging if your pull request does not meet certain requirements. For example, you need a certain number of approving reviews or an approving review from a specific team. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches)."
### Delete your branch
After you merge your pull request, delete your branch. This indicates that the work on the branch is complete and prevents you or others from accidentally using old branches. For more information, see "[Deleting and restoring branches in a pull request](/github/administering-a-repository/deleting-and-restoring-branches-in-a-pull-request)."
Don't worry about losing information. Your pull request and commit history will not be deleted. You can always restore your deleted branch or revert your pull request if needed.

View File

@@ -1,24 +0,0 @@
---
title: GitHub glossary
intro: 'This glossary introduces common Git and {% data variables.product.prodname_dotcom %} terminology.'
redirect_from:
- /articles/github-glossary
- /github/getting-started-with-github/github-glossary
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
{% for term in site.data.glossaries.external %}
### {% data glossaries.external[forloop.index0].term %}
{% data glossaries.external[forloop.index0].description %}
---
{% endfor %}
---
## Further reading
- [The Official Git Glossary](https://www.kernel.org/pub/software/scm/git/docs/gitglossary.html)
- [Git Reference](http://gitref.org/)
- [Git SCM](https://git-scm.com/doc)

View File

@@ -1,23 +0,0 @@
---
title: Quickstart
intro: 'Get started using {% data variables.product.product_name %} to manage Git repositories and collaborate with others.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Pull requests
- Issues
- Notifications
- Accounts
children:
- /set-up-git
- /create-a-repo
- /fork-a-repo
- /github-flow
- /be-social
- /communicating-on-github
- /github-glossary
- /git-cheatsheet
- /git-and-github-learning-resources
---

View File

@@ -1,64 +0,0 @@
---
title: Set up Git
redirect_from:
- /git-installation-redirect/
- /linux-git-installation/
- /linux-set-up-git/
- /mac-git-installation/
- /mac-set-up-git/
- /set-up-git-redirect/
- /win-git-installation/
- /win-set-up-git/
- /articles/set-up-git
- /github/getting-started-with-github/set-up-git
intro: 'At the heart of {% data variables.product.product_name %} is an open source version control system (VCS) called Git. Git is responsible for everything {% data variables.product.product_name %}-related that happens locally on your computer.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Pull requests
- Issues
- Notifications
- Accounts
---
## Using Git
To use Git on the command line, you'll need to download, install, and configure Git on your computer. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.19" or currentVersion == "github-ae@latest" %} You can also install {% data variables.product.prodname_cli %} to use {% data variables.product.product_name %} from the command line. For more information on {% data variables.product.prodname_cli %}, see the [{% data variables.product.prodname_cli %}](https://cli.github.com/manual/) documentation.{% endif %}
If you want to work with Git locally, but don't want to use the command line, you can instead download and install the [{% data variables.product.prodname_desktop %}]({% data variables.product.desktop_link %}) client. For more information, see "[Installing and configuring {% data variables.product.prodname_desktop %}](/desktop/installing-and-configuring-github-desktop/)."
If you don't need to work with files locally, {% data variables.product.product_name %} lets you complete many Git-related actions directly in the browser, including:
- [Creating a repository](/articles/create-a-repo)
- [Forking a repository](/articles/fork-a-repo)
- [Managing files](/articles/managing-files-on-github/)
- [Being social](/articles/be-social)
## Setting up Git
1. [Download and install the latest version of Git](https://git-scm.com/downloads).
2. [Set your username in Git](/github/getting-started-with-github/setting-your-username-in-git).
3. [Set your commit email address in Git](/articles/setting-your-commit-email-address).
## Next steps: Authenticating with {% data variables.product.prodname_dotcom %} from Git
When you connect to a {% data variables.product.product_name %} repository from Git, you'll need to authenticate with {% data variables.product.product_name %} using either HTTPS or SSH.
### Connecting over HTTPS (recommended)
If you [clone with HTTPS](/github/getting-started-with-github/about-remote-repositories/#cloning-with-https-urls), you can [cache your {% data variables.product.prodname_dotcom %} credentials in Git](/github/getting-started-with-github/caching-your-github-credentials-in-git) using a credential helper.
### Connecting over SSH
If you [clone with SSH](/github/getting-started-with-github/about-remote-repositories/#cloning-with-ssh-urls), you must [generate SSH keys](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) on each computer you use to push or pull from {% data variables.product.product_name %}.
## Celebrate
Congratulations, you now have Git and {% data variables.product.product_name %} all set up! What do you want to do next?
- **Set up Git**
- "[Create a repository](/articles/create-a-repo)"
- "[Fork a repository](/articles/fork-a-repo)"
- "[Be social](/articles/be-social)"
- {% data reusables.support.connect-in-the-forum-bootcamp %}

View File

@@ -1,17 +0,0 @@
---
title: Signing up for GitHub
intro: 'Start using {% data variables.product.prodname_dotcom %} for yourself or your team.'
redirect_from:
- /articles/signing-up-for-github
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Accounts
children:
- /signing-up-for-a-new-github-account
- /verifying-your-email-address
- /setting-up-a-trial-of-github-enterprise-cloud
- /setting-up-a-trial-of-github-enterprise-server
---

View File

@@ -1,69 +0,0 @@
---
title: Setting up a trial of GitHub Enterprise Cloud
intro: 'You can try {% data variables.product.prodname_ghe_cloud %} for free.'
redirect_from:
- /articles/setting-up-a-trial-of-github-enterprise-cloud
- /github/getting-started-with-github/setting-up-a-trial-of-github-enterprise-cloud
versions:
free-pro-team: '*'
enterprise-server: '*'
topics:
- Accounts
---
## About trials of {% data variables.product.prodname_ghe_cloud %}
You can set up a 14-day trial to evaluate {% data variables.product.prodname_ghe_cloud %} on a new organization account. You do not need to provide a payment method during the trial unless you add {% data variables.product.prodname_marketplace %} apps to your organization that require a payment method. For more information, see "<a href="/articles/about-billing-for-github-marketplace/" class="dotcom-only">About billing for {% data variables.product.prodname_marketplace %}</a>."
Your trial includes 50 seats. If you need more seats to evaluate {% data variables.product.prodname_ghe_cloud %}, contact {% data variables.contact.contact_enterprise_sales %}. At the end of the trial, you can choose a different number of seats.
Trials are also available for {% data variables.product.prodname_ghe_server %}. For more information, see "[Setting up a trial of {% data variables.product.prodname_ghe_server %}](/articles/setting-up-a-trial-of-github-enterprise-server)."
{% data reusables.products.which-product-to-use %}
## Setting up your trial of {% data variables.product.prodname_ghe_cloud %}
Before you can start your trial of {% data variables.product.prodname_ghe_cloud %}, you must have an existing user account or create a new user account. For more information, see "<a href="/articles/signing-up-for-a-new-github-account" class="dotcom-only">Signing up for a new {% data variables.product.prodname_dotcom %} account</a>."
{% data reusables.user_settings.access_settings %}
{% data reusables.user_settings.organizations %}
{% data reusables.organizations.new-organization %}
4. Under "Enterprise", click **Start your 14-day free trial**.
![Button to start your trial](/assets/images/help/organizations/start-trial-button.png)
5. Type your company name.
![Company name field](/assets/images/help/organizations/company-name-field.png)
{% data reusables.organizations.organization-name %}
7. Under "Full name", type your full name.
![Full name field](/assets/images/help/organizations/full-name-field.png)
8. Under "Work email", type the email address you use for work.
![Work email field](/assets/images/help/organizations/work-email-field.png)
8. Use the **Industry** drop-down menu, and select the industry your company is in.
![Industry drop-down menu](/assets/images/help/organizations/industry-drop-down.png)
9. Use the **Number of employees** drop-down menu, and select the number of employees at your company.
![Number of employees drop-down menu](/assets/images/help/organizations/employees-drop-down.png)
10. Review the <a href="/articles/github-enterprise-cloud-evaluation-agreement" class="dotcom-only">Evaluation License Agreement</a>, then click **Next**.
## Exploring {% data variables.product.prodname_ghe_cloud %}
After setting up your trial, you can explore {% data variables.product.prodname_ghe_cloud %} by following the [Enterprise Onboarding Guide](https://resources.github.com/enterprise-onboarding/).
{% data reusables.products.product-roadmap %}
## Finishing your trial
You can buy {% data variables.product.prodname_enterprise %} or downgrade to {% data variables.product.prodname_team %} at any time during your trial.
If you don't purchase {% data variables.product.prodname_enterprise %} or {% data variables.product.prodname_team %} before your trial ends, your organization will be downgraded to {% data variables.product.prodname_free_team %} and lose access to any advanced tooling and features that are only included with paid products, including {% data variables.product.prodname_pages %} sites published from those private repositories. If you don't plan to upgrade, to avoid losing access to advanced features, make the repositories public before your trial ends. For more information, see "[Setting repository visibility](/articles/setting-repository-visibility)."
Downgrading to {% data variables.product.prodname_free_team %} for organizations also disables any SAML settings configured during the trial period. Once you purchase {% data variables.product.prodname_enterprise %} or {% data variables.product.prodname_team %}, your SAML settings will be enabled again for users in your organization to authenticate.
{% data reusables.profile.access_org %}
{% data reusables.profile.org_settings %}
{% data reusables.organizations.billing_plans %}
5. Under "{% data variables.product.prodname_ghe_cloud %} Free Trial", click **Buy Enterprise** or **Downgrade to Team**.
![Buy Enterprise and Downgrade to Team buttons](/assets/images/help/organizations/finish-trial-buttons.png)
6. Follow the prompts to enter your payment method, then click **Submit**.
## Further reading
- "[Setting up a trial of {% data variables.product.prodname_ghe_server %}](/articles/setting-up-a-trial-of-github-enterprise-server)"

View File

@@ -1,63 +0,0 @@
---
title: Setting up a trial of GitHub Enterprise Server
intro: 'You can try {% data variables.product.prodname_ghe_server %} for free.'
redirect_from:
- /articles/requesting-a-trial-of-github-enterprise/
- /articles/setting-up-a-trial-of-github-enterprise-server
- /github/getting-started-with-github/setting-up-a-trial-of-github-enterprise-server
versions:
free-pro-team: '*'
enterprise-server: '*'
topics:
- Accounts
---
## About trials of {% data variables.product.prodname_ghe_server %}
You can request a 45-day trial to evaluate {% data variables.product.prodname_ghe_server %}. Your trial will be installed as a virtual appliance, with options for on-premises or cloud deployment. For a list of supported visualization platforms, see "[Setting up a GitHub Enterprise Server instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)."
{% if currentVersion ver_gt "enterprise-server@2.21" %}{% data variables.product.prodname_dependabot %}{% else %}Security{% endif %} alerts and {% data variables.product.prodname_github_connect %} are not currently available in trials of {% data variables.product.prodname_ghe_server %}. For a demonstration of these features, contact {% data variables.contact.contact_enterprise_sales %}. For more information about these features, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)" and "[Connecting {% data variables.product.prodname_ghe_server %} to {% data variables.product.prodname_dotcom_the_website %}](/enterprise/admin/installation/connecting-github-enterprise-server-to-github-enterprise-cloud)."
Trials are also available for {% data variables.product.prodname_ghe_cloud %}. For more information, see "[Setting up a trial of {% data variables.product.prodname_ghe_cloud %}](/articles/setting-up-a-trial-of-github-enterprise-cloud)."
{% data reusables.products.which-product-to-use %}
## Setting up your trial of {% data variables.product.prodname_ghe_server %}
{% data variables.product.prodname_ghe_server %} is installed as a virtual appliance. Determine the best person in your organization to set up a virtual machine, and ask that person to submit a [trial request](https://enterprise.github.com/trial). You can begin your trial immediately after submitting a request.
To set up an account for the {% data variables.product.prodname_enterprise %} Web portal, click the link in the email you received after submitting your trial request, and follow the prompts. Then, download your license file. For more information, see "[Managing your {% data variables.product.prodname_enterprise %} license](/enterprise/admin/installation/managing-your-github-enterprise-license)."
To install {% data variables.product.prodname_ghe_server %}, download the necessary components and upload your license file. For more information, see the instructions for your chosen visualization platform in "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)."
## Next steps
To get the most out of your trial, follow these steps:
1. [Create an organization](/enterprise/admin/user-management/creating-organizations).
2. To learn the basics of using {% data variables.product.prodname_dotcom %}, see:
- [Quick start guide to {% data variables.product.prodname_dotcom %}](https://resources.github.com/webcasts/Quick-start-guide-to-GitHub/) webcast
- [Understanding the {% data variables.product.prodname_dotcom %} flow](https://guides.github.com/introduction/flow/) in {% data variables.product.prodname_dotcom %} Guides
- [Hello World](https://guides.github.com/activities/hello-world/) in {% data variables.product.prodname_dotcom %} Guides
3. To configure your instance to meet your organization's needs, see "[Configuring your enterprise](/enterprise/admin/configuration/configuring-your-enterprise)."
4. To integrate {% data variables.product.prodname_ghe_server %} with your identity provider, see "[Using SAML](/enterprise/admin/user-management/using-saml)" and "[Using LDAP](/enterprise/admin/authentication/using-ldap)."
5. Invite an unlimited number of people to join your trial.
- Add users to your {% data variables.product.prodname_ghe_server %} instance using built-in authentication or your configured identity provider. For more information, see "[Using built in authentication](/enterprise/admin/user-management/using-built-in-authentication)."
- To invite people to become account administrators, visit the [{% data variables.product.prodname_enterprise %} Web portal](https://enterprise.github.com/login).
{% note %}
**Note:** People you invite to become account administrators will receive an email with a link to accept your invitation.
{% endnote %}
{% data reusables.products.product-roadmap %}
## Finishing your trial
You can upgrade to full licenses in the [{% data variables.product.prodname_enterprise %} Web portal](https://enterprise.github.com/login) at any time during the trial period.
If you haven't upgraded by the last day of your trial, you'll receive an email notifying you that your trial had ended. If you need more time to evaluate {% data variables.product.prodname_enterprise %}, contact {% data variables.contact.contact_enterprise_sales %} to request an extension.
## Further reading
- "[Setting up a trial of {% data variables.product.prodname_ghe_cloud %}](/articles/setting-up-a-trial-of-github-enterprise-cloud)"

View File

@@ -1,24 +0,0 @@
---
title: Signing up for a new GitHub account
shortTitle: Sign up for a new GitHub account
intro: '{% data variables.product.product_name %} offers user accounts for individuals and organizations for teams of people working together.'
redirect_from:
- /articles/signing-up-for-a-new-github-account
- /github/getting-started-with-github/signing-up-for-a-new-github-account
versions:
free-pro-team: '*'
topics:
- Accounts
---
For more information about account types and products, see "[Types of {% data variables.product.prodname_dotcom %} accounts](/articles/types-of-github-accounts)" and "[{% data variables.product.product_name %}'s products](/articles/github-s-products)."
{% data reusables.accounts.create-account %}
1. Follow the prompts to create your personal account or organization.
## Next steps
- "[Verify your email address](/articles/verifying-your-email-address)"
- "[Configure two-factor authentication](/articles/configuring-two-factor-authentication)"
- "[Add a bio to your profile](/articles/adding-a-bio-to-your-profile)"
- "[Create an organization](/articles/creating-a-new-organization-from-scratch)"
- [ {% data variables.product.prodname_roadmap %} ]( {% data variables.product.prodname_roadmap_link %} ) in the `github/roadmap` repository

View File

@@ -1,68 +0,0 @@
---
title: Verifying your email address
intro: 'Verifying your primary email address ensures strengthened security, allows {% data variables.product.prodname_dotcom %} staff to better assist you if you forget your password, and gives you access to more features on {% data variables.product.prodname_dotcom %}.'
redirect_from:
- /articles/troubleshooting-email-verification/
- /articles/setting-up-email-verification/
- /articles/verifying-your-email-address
- /github/getting-started-with-github/verifying-your-email-address
versions:
free-pro-team: '*'
topics:
- Accounts
---
## About email verification
You can verify your email address after signing up for a new account, or when you add a new email address. If an email address is undeliverable or bouncing, it will be unverified.
If you do not verify your email address, you will not be able to:
- Create or fork repositories
- Create issues or pull requests
- Comment on issues, pull requests, or commits
- Authorize {% data variables.product.prodname_oauth_app %} applications
- Generate personal access tokens
- Receive email notifications
- Star repositories
- Create or update project boards, including adding cards
- Create or update gists
- Create or use {% data variables.product.prodname_actions %}
- Sponsor developers with {% data variables.product.prodname_sponsors %}
{% warning %}
**Warnings**:
- {% data reusables.user_settings.no-verification-disposable-emails %}
- {% data reusables.user_settings.verify-org-approved-email-domain %}
{% endwarning %}
## Verifying your email address
{% data reusables.user_settings.access_settings %}
{% data reusables.user_settings.emails %}
1. Under your email address, click **Resend verification email**.
![Resend verification email link](/assets/images/help/settings/email-verify-button.png)
4. {% data variables.product.prodname_dotcom %} will send you an email with a link in it. After you click that link, you'll be taken to your {% data variables.product.prodname_dotcom %} dashboard and see a confirmation banner.
![Banner confirming that your email was verified](/assets/images/help/settings/email-verification-confirmation-banner.png)
## Troubleshooting email verification
### Unable to send verification email
{% data reusables.user_settings.no-verification-disposable-emails %}
### Error page after clicking verification link
The verification link expires after 24 hours. If you don't verify your email within 24 hours, you can request another email verification link. For more information, see "[Verifying your email address](/articles/verifying-your-email-address)."
If you click on the link in the confirmation email within 24 hours and you are directed to an error page, you should ensure that you're signed into the correct {% data variables.product.prodname_dotcom %} account.
1. {% data variables.product.signout_link %} of your personal {% data variables.product.prodname_dotcom %} account.
2. Quit and restart your browser.
3. {% data variables.product.signin_link %} to your personal {% data variables.product.prodname_dotcom %} account.
4. Click on the verification link in the email we sent you.
## Further reading
- "[Changing your primary email address](/articles/changing-your-primary-email-address)"

View File

@@ -1,109 +0,0 @@
---
title: About Git rebase
redirect_from:
- /rebase/
- articles/interactive-rebase/
- /articles/about-git-rebase
- /github/using-git/about-git-rebase
- /github/getting-started-with-github/about-git-rebase
intro: 'The `git rebase` command allows you to easily change a series of commits, modifying the history of your repository. You can reorder, edit, or squash commits together.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
Typically, you would use `git rebase` to:
* Edit previous commit messages
* Combine multiple commits into one
* Delete or revert commits that are no longer necessary
{% warning %}
**Warning**: Because changing your commit history can make things difficult for everyone else using the repository, it's considered bad practice to rebase commits when you've already pushed to a repository. To learn how to safely rebase on {% data variables.product.product_location %}, see "[About pull request merges](/articles/about-pull-request-merges)."
{% endwarning %}
## Rebasing commits against a branch
To rebase all the commits between another branch and the current branch state, you can enter the following command in your shell (either the command prompt for Windows, or the terminal for Mac and Linux):
```shell
$ git rebase --interactive <em>other_branch_name</em>
```
## Rebasing commits against a point in time
To rebase the last few commits in your current branch, you can enter the following command in your shell:
```shell
$ git rebase --interactive HEAD~7
```
## Commands available while rebasing
There are six commands available while rebasing:
<dl>
<dt><code>pick</code></dt>
<dd><code>pick</code> simply means that the commit is included. Rearranging the order of the <code>pick</code> commands changes the order of the commits when the rebase is underway. If you choose not to include a commit, you should delete the entire line. </dd>
<dt><code>reword</code></dt>
<dd>The <code>reword</code> command is similar to <code>pick</code>, but after you use it, the rebase process will pause and give you a chance to alter the commit message. Any changes made by the commit are not affected. </dd>
<dt><code>edit</code></dt>
<dd>If you choose to <code>edit</code> a commit, you'll be given the chance to amend the commit, meaning that you can add or change the commit entirely. You can also make more commits before you continue the rebase. This allows you to split a large commit into smaller ones, or, remove erroneous changes made in a commit. </dd>
<dt><code>squash</code></dt>
<dd>This command lets you combine two or more commits into a single commit. A commit is squashed into the commit above it. Git gives you the chance to write a new commit message describing both changes.</dd>
<dt><code>fixup</code></dt>
<dd>This is similar to <code>squash</code>, but the commit to be merged has its message discarded. The commit is simply merged into the commit above it, and the earlier commit's message is used to describe both changes.</dd>
<dt><code>exec</code></dt>
<dd>This lets you run arbitrary shell commands against a commit.</dd>
</dl>
## An example of using `git rebase`
No matter which command you use, Git will launch [your default text editor](/github/getting-started-with-github/associating-text-editors-with-git) and open a file that details the commits in the range you've chosen. That file looks something like this:
```
pick 1fc6c95 Patch A
pick 6b2481b Patch B
pick dd1475d something I want to split
pick c619268 A fix for Patch B
pick fa39187 something to add to patch A
pick 4ca2acc i cant' typ goods
pick 7b36971 something to move before patch B
# Rebase 41a72e6..7b36971 onto 41a72e6
#
# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
#
# If you remove a line here THAT COMMIT WILL BE LOST.
# However, if you remove everything, the rebase will be aborted.
#
```
Breaking this information, from top to bottom, we see that:
- Seven commits are listed, which indicates that there were seven changes between our starting point and our current branch state.
- The commits you chose to rebase are sorted in the order of the oldest changes (at the top) to the newest changes (at the bottom).
- Each line lists a command (by default, `pick`), the commit SHA, and the commit message. The entire `git rebase` procedure centers around your manipulation of these three columns. The changes you make are *rebased* onto your repository.
- After the commits, Git tells you the range of commits we're working with (`41a72e6..7b36971`).
- Finally, Git gives some help by telling you the commands that are available to you when rebasing commits.
## Further reading
- "[Using Git rebase](/articles/using-git-rebase)"
- [The "Git Branching" chapter from the _Pro Git_ book](https://git-scm.com/book/en/Git-Branching-Rebasing)
- [The "Interactive Rebasing" chapter from the _Pro Git_ book](https://git-scm.com/book/en/Git-Tools-Rewriting-History#_changing_multiple)
- "[Squashing commits with rebase](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html)"
- "[Syncing your branch](/desktop/contributing-to-projects/syncing-your-branch)" in the {% data variables.product.prodname_desktop %} documentation

View File

@@ -1,112 +0,0 @@
---
title: About Git subtree merges
redirect_from:
- /articles/working-with-subtree-merge/
- /subtree-merge/
- /articles/about-git-subtree-merges
- /github/using-git/about-git-subtree-merges
- /github/getting-started-with-github/about-git-subtree-merges
intro: 'If you need to manage multiple projects within a single repository, you can use a *subtree merge* to handle all the references.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## About subtree merges
Typically, a subtree merge is used to contain a repository within a repository. The "subrepository" is stored in a folder of the main repository.
The best way to explain subtree merges is to show by example. We will:
- Make an empty repository called `test` that represents our project
- Merge another repository into it as a subtree called `Spoon-Knife`.
- The `test` project will use that subproject as if it were part of the same repository.
- Fetch updates from `Spoon-Knife` into our `test` project.
## Setting up the empty repository for a subtree merge
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Create a new directory and navigate to it.
```shell
$ mkdir test
$ cd test
```
3. Initialize a new Git repository.
```shell
$ git init
> Initialized empty Git repository in /Users/octocat/tmp/test/.git/
```
4. Create and commit a new file.
```shell
$ touch .gitignore
$ git add .gitignore
$ git commit -m "initial commit"
> [main (root-commit) 3146c2a] initial commit
> 0 files changed, 0 insertions(+), 0 deletions(-)
> create mode 100644 .gitignore
```
## Adding a new repository as a subtree
1. Add a new remote URL pointing to the separate project that we're interested in.
```shell
$ git remote add -f spoon-knife git@github.com:octocat/Spoon-Knife.git
> Updating spoon-knife
> warning: no common commits
> remote: Counting objects: 1732, done.
> remote: Compressing objects: 100% (750/750), done.
> remote: Total 1732 (delta 1086), reused 1558 (delta 967)
> Receiving objects: 100% (1732/1732), 528.19 KiB | 621 KiB/s, done.
> Resolving deltas: 100% (1086/1086), done.
> From git://github.com/octocat/Spoon-Knife
> * [new branch] main -> Spoon-Knife/main
```
2. Merge the `Spoon-Knife` project into the local Git project. This doesn't change any of your files locally, but it does prepare Git for the next step.
If you're using Git 2.9 or above:
```shell
$ git merge -s ours --no-commit --allow-unrelated-histories spoon-knife/main
> Automatic merge went well; stopped before committing as requested
```
If you're using Git 2.8 or below:
```shell
$ git merge -s ours --no-commit spoon-knife/main
> Automatic merge went well; stopped before committing as requested
```
3. Create a new directory called **spoon-knife**, and copy the Git history of the `Spoon-Knife` project into it.
```shell
$ git read-tree --prefix=spoon-knife/ -u spoon-knife/main
```
4. Commit the changes to keep them safe.
```shell
$ git commit -m "Subtree merged in spoon-knife"
> [main fe0ca25] Subtree merged in spoon-knife
```
Although we've only added one subproject, any number of subprojects can be incorporated into a Git repository.
{% tip %}
**Tip**: If you create a fresh clone of the repository in the future, the remotes you've added will not be created for you. You will have to add them again using [the `git remote add` command](/github/getting-started-with-github/managing-remote-repositories).
{% endtip %}
## Synchronizing with updates and changes
When a subproject is added, it is not automatically kept in sync with the upstream changes. You will need to update the subproject with the following command:
```shell
$ git pull -s subtree <em>remotename</em> <em>branchname</em>
```
For the example above, this would be:
```shell
$ git pull -s subtree spoon-knife main
```
## Further reading
- [The "Advanced Merging" chapter from the _Pro Git_ book](https://git-scm.com/book/en/v2/Git-Tools-Advanced-Merging)
- "[How to use the subtree merge strategy](https://www.kernel.org/pub/software/scm/git/docs/howto/using-merge-subtree.html)"

View File

@@ -1,39 +0,0 @@
---
title: Dealing with non-fast-forward errors
intro: 'Sometimes, Git can''t make your change to a remote repository without losing commits. When this happens, your push is refused.'
redirect_from:
- /articles/dealing-with-non-fast-forward-errors
- /github/using-git/dealing-with-non-fast-forward-errors
- /github/getting-started-with-github/dealing-with-non-fast-forward-errors
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
If another person has pushed to the same branch as you, Git won't be able to push your changes:
```shell
$ git push origin main
> To https://{% data variables.command_line.codeblock %}/<em>USERNAME</em>/<em>REPOSITORY</em>.git
> ! [rejected] main -> main (non-fast-forward)
> error: failed to push some refs to 'https://{% data variables.command_line.codeblock %}/<em>USERNAME</em>/<em>REPOSITORY</em>.git'
> To prevent you from losing history, non-fast-forward updates were rejected
> Merge the remote changes (e.g. 'git pull') before pushing again. See the
> 'Note about fast-forwards' section of 'git push --help' for details.
```
You can fix this by [fetching and merging](/github/getting-started-with-github/getting-changes-from-a-remote-repository) the changes made on the remote branch with the changes that you have made locally:
```shell
$ git fetch origin
# Fetches updates made to an online repository
$ git merge origin <em>YOUR_BRANCH_NAME</em>
# Merges updates made online with your local work
```
Or, you can simply use `git pull` to perform both commands at once:
```shell
$ git pull origin <em>YOUR_BRANCH_NAME</em>
# Grabs online updates and merges them with your local work
```

View File

@@ -1,84 +0,0 @@
---
title: Getting changes from a remote repository
intro: You can use common Git commands to access remote repositories.
redirect_from:
- /articles/fetching-a-remote/
- /articles/getting-changes-from-a-remote-repository
- /github/using-git/getting-changes-from-a-remote-repository
- /github/getting-started-with-github/getting-changes-from-a-remote-repository
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## Options for getting changes
These commands are very useful when interacting with [a remote repository](/github/getting-started-with-github/about-remote-repositories). `clone` and `fetch` download remote code from a repository's remote URL to your local computer, `merge` is used to merge different people's work together with yours, and `pull` is a combination of `fetch` and `merge`.
## Cloning a repository
To grab a complete copy of another user's repository, use `git clone` like this:
```shell
$ git clone https://{% data variables.command_line.codeblock %}/<em>USERNAME</em>/<em>REPOSITORY</em>.git
# Clones a repository to your computer
```
You can choose from [several different URLs](/github/getting-started-with-github/about-remote-repositories) when cloning a repository. While logged in to {% data variables.product.prodname_dotcom %}, these URLs are available below the repository details:
![Remote URL list](/assets/images/help/repository/remotes-url.png)
When you run `git clone`, the following actions occur:
- A new folder called `repo` is made
- It is initialized as a Git repository
- A remote named `origin` is created, pointing to the URL you cloned from
- All of the repository's files and commits are downloaded there
- The default branch is checked out
For every branch `foo` in the remote repository, a corresponding remote-tracking branch
`refs/remotes/origin/foo` is created in your local repository. You can usually abbreviate
such remote-tracking branch names to `origin/foo`.
## Fetching changes from a remote repository
Use `git fetch` to retrieve new work done by other people. Fetching from a repository grabs all the new remote-tracking branches and tags *without* merging those changes into your own branches.
If you already have a local repository with a remote URL set up for the desired project, you can grab all the new information by using `git fetch *remotename*` in the terminal:
```shell
$ git fetch <em>remotename</em>
# Fetches updates made to a remote repository
```
Otherwise, you can always add a new remote and then fetch. For more information, see "[Managing remote repositories](/github/getting-started-with-github/managing-remote-repositories)."
## Merging changes into your local branch
Merging combines your local changes with changes made by others.
Typically, you'd merge a remote-tracking branch (i.e., a branch fetched from a remote repository) with your local branch:
```shell
$ git merge <em>remotename</em>/<em>branchname</em>
# Merges updates made online with your local work
```
## Pulling changes from a remote repository
`git pull` is a convenient shortcut for completing both `git fetch` and `git merge `in the same command:
```shell
$ git pull <em>remotename</em> <em>branchname</em>
# Grabs online updates and merges them with your local work
```
Because `pull` performs a merge on the retrieved changes, you should ensure that
your local work is committed before running the `pull` command. If you run into
[a merge conflict](/articles/resolving-a-merge-conflict-using-the-command-line)
you cannot resolve, or if you decide to quit the merge, you can use `git merge --abort`
to take the branch back to where it was in before you pulled.
## Further reading
- ["Working with Remotes" from the _Pro Git_ book](https://git-scm.com/book/en/Git-Basics-Working-with-Remotes)"{% if currentVersion == "free-pro-team@latest" %}
- "[Troubleshooting connectivity problems](/articles/troubleshooting-connectivity-problems)"{% endif %}

View File

@@ -1,25 +0,0 @@
---
title: Using Git
intro: 'Use Git to manage your {% data variables.product.product_name %} repositories from your computer.'
redirect_from:
- /articles/using-common-git-commands
- /github/using-git/using-common-git-commands
- /github/using-git/using-advanced-git-commands
- /categories/52/articles/
- /categories/advanced-git/
- /articles/using-advanced-git-commands
- /github/using-git/changing-author-info
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
children:
- /pushing-commits-to-a-remote-repository
- /getting-changes-from-a-remote-repository
- /dealing-with-non-fast-forward-errors
- /splitting-a-subfolder-out-into-a-new-repository
- /about-git-subtree-merges
- /about-git-rebase
- /using-git-rebase-on-the-command-line
- /resolving-merge-conflicts-after-a-git-rebase
---

View File

@@ -1,115 +0,0 @@
---
title: Pushing commits to a remote repository
intro: Use `git push` to push commits made on your local branch to a remote repository.
redirect_from:
- /articles/pushing-to-a-remote/
- /articles/pushing-commits-to-a-remote-repository
- /github/using-git/pushing-commits-to-a-remote-repository
- /github/getting-started-with-github/pushing-commits-to-a-remote-repository
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
The `git push` command takes two arguments:
* A remote name, for example, `origin`
* A branch name, for example, `main`
For example:
```shell
git push <em> &lt;REMOTENAME> &lt;BRANCHNAME> </em>
```
As an example, you usually run `git push origin main` to push your local changes
to your online repository.
## Renaming branches
To rename a branch, you'd use the same `git push` command, but you would add
one more argument: the name of the new branch. For example:
```shell
git push <em> &lt;REMOTENAME> &lt;LOCALBRANCHNAME></em>:<em>&lt;REMOTEBRANCHNAME> </em>
```
This pushes the `LOCALBRANCHNAME` to your `REMOTENAME`, but it is renamed to `REMOTEBRANCHNAME`.
## Dealing with "non-fast-forward" errors
If your local copy of a repository is out of sync with, or "behind," the upstream
repository you're pushing to, you'll get a message saying `non-fast-forward updates were rejected`.
This means that you must retrieve, or "fetch," the upstream changes, before
you are able to push your local changes.
For more information on this error, see "[Dealing with non-fast-forward errors](/github/getting-started-with-github/dealing-with-non-fast-forward-errors)."
## Pushing tags
By default, and without additional parameters, `git push` sends all matching branches
that have the same names as remote branches.
To push a single tag, you can issue the same command as pushing a branch:
```shell
git push <em> &lt;REMOTENAME> &lt;TAGNAME> </em>
```
To push all your tags, you can type the command:
```shell
git push <em> &lt;REMOTENAME></em> --tags
```
## Deleting a remote branch or tag
The syntax to delete a branch is a bit arcane at first glance:
```shell
git push <em> &lt;REMOTENAME></em> :<em>&lt;BRANCHNAME> </em>
```
Note that there is a space before the colon. The command resembles the same steps
you'd take to rename a branch. However, here, you're telling Git to push _nothing_
into `BRANCHNAME` on `REMOTENAME`. Because of this, `git push` deletes the branch
on the remote repository.
## Remotes and forks
You might already know that [you can "fork" repositories](https://guides.github.com/overviews/forking/) on GitHub.
When you clone a repository you own, you provide it with a remote URL that tells
Git where to fetch and push updates. If you want to collaborate with the original
repository, you'd add a new remote URL, typically called `upstream`, to
your local Git clone:
```shell
git remote add upstream <em> &lt;THEIR_REMOTE_URL> </em>
```
Now, you can fetch updates and branches from *their* fork:
```shell
git fetch upstream
# Grab the upstream remote's branches
> remote: Counting objects: 75, done.
> remote: Compressing objects: 100% (53/53), done.
> remote: Total 62 (delta 27), reused 44 (delta 9)
> Unpacking objects: 100% (62/62), done.
> From https://{% data variables.command_line.codeblock %}/<em>octocat</em>/<em>repo</em>
> * [new branch] main -> upstream/main
```
When you're done making local changes, you can push your local branch to GitHub
and [initiate a pull request](/articles/about-pull-requests).
For more information on working with forks, see "[Syncing a fork](/articles/syncing-a-fork)".
## Further reading
- [The "Remotes" chapter from the "Pro Git" book](https://git-scm.com/book/ch5-2.html)
- [`git remote` man page](https://git-scm.com/docs/git-remote.html)
- "[Git cheatsheet](/articles/git-cheatsheet)"
- "[Git workflows](/github/getting-started-with-github/git-workflows)"
- "[Git Handbook](https://guides.github.com/introduction/git-handbook/)"

View File

@@ -1,30 +0,0 @@
---
title: Resolving merge conflicts after a Git rebase
intro: 'When you perform a `git rebase` operation, you''re typically moving commits around. Because of this, you might get into a situation where a merge conflict is introduced. That means that two of your commits modified the same line in the same file, and Git doesn''t know which change to apply.'
redirect_from:
- /articles/resolving-merge-conflicts-after-a-git-rebase
- /github/using-git/resolving-merge-conflicts-after-a-git-rebase
- /github/getting-started-with-github/resolving-merge-conflicts-after-a-git-rebase
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
After you reorder and manipulate commits using `git rebase`, should a merge conflict occur, Git will tell you so with the following message printed to the terminal:
```shell
error: could not apply fa39187... something to add to patch A
When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".
Could not apply fa39187f3c3dfd2ab5faa38ac01cf3de7ce2e841... Change fake file
```
Here, Git is telling you which commit is causing the conflict (`fa39187`). You're given three choices:
* You can run `git rebase --abort` to completely undo the rebase. Git will return you to your branch's state as it was before `git rebase` was called.
* You can run `git rebase --skip` to completely skip the commit. That means that none of the changes introduced by the problematic commit will be included. It is very rare that you would choose this option.
* You can fix the conflict.
To fix the conflict, you can follow [the standard procedures for resolving merge conflicts from the command line](/articles/resolving-a-merge-conflict-using-the-command-line). When you're finished, you'll need to call `git rebase --continue` in order for Git to continue processing the rest of the rebase.

View File

@@ -1,78 +0,0 @@
---
title: Splitting a subfolder out into a new repository
redirect_from:
- /articles/splitting-a-subpath-out-into-a-new-repository/
- /articles/splitting-a-subfolder-out-into-a-new-repository
- /github/using-git/splitting-a-subfolder-out-into-a-new-repository
- /github/getting-started-with-github/splitting-a-subfolder-out-into-a-new-repository
intro: You can turn a folder within a Git repository into a brand new repository.
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
If you create a new clone of the repository, you won't lose any of your Git history or changes when you split a folder into a separate repository.
{% data reusables.command_line.open_the_multi_os_terminal %}
2. Change the current working directory to the location where you want to create your new repository.
3. Clone the repository that contains the subfolder.
```shell
$ git clone https://{% data variables.command_line.codeblock %}/<em>USERNAME</em>/<em>REPOSITORY-NAME</em>
```
4. Change the current working directory to your cloned repository.
```shell
$ cd <em>REPOSITORY-NAME</em>
```
5. To filter out the subfolder from the rest of the files in the repository, run [`git filter-branch`](https://git-scm.com/docs/git-filter-branch), supplying this information:
- `FOLDER-NAME`: The folder within your project that you'd like to create a separate repository from.
{% windows %}
{% tip %}
**Tip:** Windows users should use `/` to delimit folders.
{% endtip %}
{% endwindows %}
- `BRANCH-NAME`: The default branch for your current project, for example, `main` or `gh-pages`.
```shell
$ git filter-branch --prune-empty --subdirectory-filter <em>FOLDER-NAME BRANCH-NAME</em>
# Filter the specified branch in your directory and remove empty commits
> Rewrite 48dc599c80e20527ed902928085e7861e6b3cbe6 (89/89)
> Ref 'refs/heads/<em>BRANCH-NAME</em>' was rewritten
```
The repository should now only contain the files that were in your subfolder.
6. [Create a new repository](/articles/creating-a-new-repository/) on {% data variables.product.product_name %}.
7. At the top of your new {% data variables.product.product_name %} repository's Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL.
![Copy remote repository URL field](/assets/images/help/repository/copy-remote-repository-url-quick-setup.png)
{% tip %}
**Tip:** For information on the difference between HTTPS and SSH URLs, see "[About remote repositories](/github/getting-started-with-github/about-remote-repositories)."
{% endtip %}
8. Check the existing remote name for your repository. For example, `origin` or `upstream` are two common choices.
```shell
$ git remote -v
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/REPOSITORY-NAME</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/REPOSITORY-NAME</em>.git (push)
```
9. Set up a new remote URL for your new repository using the existing remote name and the remote repository URL you copied in step 7.
```shell
git remote set-url origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/NEW-REPOSITORY-NAME</em>.git
```
10. Verify that the remote URL has changed with your new repository name.
```shell
$ git remote -v
# Verify new remote URL
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/NEW-REPOSITORY-NAME</em>.git (fetch)
> origin https://{% data variables.command_line.codeblock %}/<em>USERNAME/NEW-REPOSITORY-NAME</em>.git (push)
```
11. Push your changes to the new repository on {% data variables.product.product_name %}.
```shell
git push -u origin <em>BRANCH-NAME</em>
```

View File

@@ -1,145 +0,0 @@
---
title: Using Git rebase on the command line
redirect_from:
- /articles/using-git-rebase/
- /articles/using-git-rebase-on-the-command-line
- /github/using-git/using-git-rebase-on-the-command-line
- /github/getting-started-with-github/using-git-rebase-on-the-command-line
intro: Here's a short tutorial on using `git rebase` on the command line.
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## Using Git rebase
In this example, we will cover all of the `git rebase` commands available, except for `exec`.
We'll start our rebase by entering `git rebase --interactive HEAD~7` on the terminal. Our favorite text editor will display the following lines:
```
pick 1fc6c95 Patch A
pick 6b2481b Patch B
pick dd1475d something I want to split
pick c619268 A fix for Patch B
pick fa39187 something to add to patch A
pick 4ca2acc i cant' typ goods
pick 7b36971 something to move before patch B
```
In this example, we're going to:
* Squash the fifth commit (`fa39187`) into the `"Patch A"` commit (`1fc6c95`), using `squash`.
* Move the last commit (`7b36971`) up before the `"Patch B"` commit (`6b2481b`), and keep it as `pick`.
* Merge the `"A fix for Patch B"` commit (`c619268`) into the `"Patch B"` commit (`6b2481b`), and disregard the commit message using `fixup`.
* Split the third commit (`dd1475d`) into two smaller commits, using `edit`.
* Fix the commit message of the misspelled commit (`4ca2acc`), using `reword`.
Phew! This sounds like a lot of work, but by taking it one step at a time, we can easily make those changes.
To start, we'll need to modify the commands in the file to look like this:
```
pick 1fc6c95 Patch A
squash fa39187 something to add to patch A
pick 7b36971 something to move before patch B
pick 6b2481b Patch B
fixup c619268 A fix for Patch B
edit dd1475d something I want to split
reword 4ca2acc i cant' typ goods
```
We've changed each line's command from `pick` to the command we're interested in.
Now, save and close the editor; this will start the interactive rebase.
Git skips the first rebase command, `pick 1fc6c95`, since it doesn't need to do anything. It goes to the next command, `squash fa39187`. Since this operation requires your input, Git opens your text editor once again. The file it opens up looks something like this:
```
# This is a combination of two commits.
# The first commit's message is:
Patch A
# This is the 2nd commit message:
something to add to patch A
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# Not currently on any branch.
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: a
#
```
This file is Git's way of saying, "Hey, here's what I'm about to do with this `squash`." It lists the first commit's message (`"Patch A"`), and the second commit's message (`"something to add to patch A"`). If you're happy with these commit messages, you can save the file, and close the editor. Otherwise, you have the option of changing the commit message by simply changing the text.
When the editor is closed, the rebase continues:
```
pick 1fc6c95 Patch A
squash fa39187 something to add to patch A
pick 7b36971 something to move before patch B
pick 6b2481b Patch B
fixup c619268 A fix for Patch B
edit dd1475d something I want to split
reword 4ca2acc i cant' typ goods
```
Git processes the two `pick` commands (for `pick 7b36971` and `pick 6b2481b`). It *also* processes the `fixup` command (`fixup c619268`), since it doesn't require any interaction. `fixup` merges the changes from `c619268` into the commit before it, `6b2481b`. Both changes will have the same commit message: `"Patch B"`.
Git gets to the `edit dd1475d` operation, stops, and prints the following message to the terminal:
```shell
You can amend the commit now, with
git commit --amend
Once you are satisfied with your changes, run
git rebase --continue
```
At this point, you can edit any of the files in your project to make any additional changes. For each change you make, you'll need to perform a new commit, and you can do that by entering the `git commit --amend` command. When you're finished making all your changes, you can run `git rebase --continue`.
Git then gets to the `reword 4ca2acc` command. It opens up your text editor one more time, and presents the following information:
```
i cant' typ goods
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# Not currently on any branch.
# Changes to be committed:
# (use "git reset HEAD^1 <file>..." to unstage)
#
# modified: a
#
```
As before, Git is showing the commit message for you to edit. You can change the text (`"i cant' typ goods"`), save the file, and close the editor. Git will finish the rebase and return you to the terminal.
## Pushing rebased code to GitHub
Since you've altered Git history, the usual `git push origin` **will not** work. You'll need to modify the command by "force-pushing" your latest changes:
```shell
# Don't override changes
$ git push origin main --force-with-lease
# Override changes
$ git push origin main --force
```
{% warning %}
Force pushing has serious implications because it changes the historical sequence of commits for the branch. Use it with caution, especially if your repository is being accessed by multiple people.
{% endwarning %}
## Further reading
* "[Resolving merge conflicts after a Git rebase](/github/getting-started-with-github/resolving-merge-conflicts-after-a-git-rebase)"

View File

@@ -1,28 +0,0 @@
---
title: Exploring early access releases with feature preview
intro: You can use feature preview to see products or features that are available in beta and to enable or disable each feature for your user account.
redirect_from:
- /articles/exploring-early-access-releases-with-feature-preview
- /github/getting-started-with-github/exploring-early-access-releases-with-feature-preview
versions:
free-pro-team: '*'
topics:
- Early access
---
## {% data variables.product.prodname_dotcom %}'s release cycle
{% data variables.product.product_name %}'s products and features can go through multiple release phases.
| Phase | Description |
|-------|-------------|
| Alpha | The product or feature is under heavy development and often has changing requirements and scope. The feature is available for demonstration and test purposes but may not be documented. Alpha releases are not necessarily feature complete, no service level agreements (SLAs) are provided, and there are no technical support obligations. |
| Beta | The product or feature is ready for broader distribution. Beta releases can be public or private, are documented, but do not have any SLAs or technical support obligations. |
| General availability (GA) | The product or feature is fully tested and open publicly to all users. GA releases are ready for production use, and associated SLA and technical support obligations apply. |
## Exploring beta releases with feature preview
You can see a list of features that are available in beta and a brief description for each feature. Each feature includes a link to give feedback.
{% data reusables.feature-preview.feature-preview-setting %}
2. Optionally, to the right of a feature, click **Enable** or **Disable**.
![Enable button in feature preview](/assets/images/help/settings/enable-feature-button.png)

View File

@@ -1,34 +0,0 @@
---
title: GitHub CLI
intro: '{% data variables.product.prodname_cli %} is a command-line tool that brings pull requests, issues, {% data variables.product.prodname_actions %}, and other {% data variables.product.product_name %} features to your terminal, so you can do all your work in one place.'
versions:
free-pro-team: '*'
enterprise-server: '>2.19'
github-ae: '*'
topics:
- CLI
redirect_from:
- /github/getting-started-with-github/github-cli
---
## About {% data variables.product.prodname_cli %}
{% data variables.product.prodname_cli %} is an open source tool for using {% data variables.product.product_name %} from your computer's command line. When you're working from the command line, you can use the {% data variables.product.prodname_cli %} to save time and avoid switching context.
The {% data variables.product.prodname_cli %} includes {% data variables.product.prodname_dotcom %} features such as:
- View, create, clone, and fork repositories
- Create, close, and list issues and pull requests
- Review, diff, and merge pull requests
- Run, view, and list workflows
- Create, list, view, and delete releases
- Create, edit, list, view, and delete gists
For more information about what you can do with {% data variables.product.prodname_cli %}, see the [{% data variables.product.prodname_cli %} manual](https://cli.github.com/manual).
## Installing {% data variables.product.prodname_cli %}
View installation instructions {% data variables.product.prodname_cli %} for macOS, Windows, and Linux on the [{% data variables.product.prodname_cli %} page](https://cli.github.com).
## Sharing feedback
If you have feedback or feature requests, you can open an issue in the [`cli/cli` repository](https://github.com/cli/cli).

View File

@@ -1,21 +0,0 @@
---
title: GitHub Desktop
intro: '{% data variables.product.prodname_desktop %} extends and simplifies your Git and {% data variables.product.prodname_dotcom %} workflow using a visual interface.'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
topics:
- Desktop
redirect_from:
- /github/getting-started-with-github/github-desktop
---
## About {% data variables.product.prodname_desktop %}
{% data reusables.desktop.about-github-desktop %}
For more information about {% data variables.product.prodname_desktop %}, see "[Installing and configuring {% data variables.product.prodname_desktop %}](/desktop/installing-and-configuring-github-desktop)" in the {% data variables.product.prodname_desktop %} documentation.
## Sharing feedback
If you have feedback or feature requests, you can open an issue in the [`desktop/desktop` repository](https://github.com/desktop/desktop).

View File

@@ -1,88 +0,0 @@
---
title: GitHub for mobile
intro: 'Triage, collaborate, and manage your work on {% data variables.product.product_name %} from your mobile device.'
versions:
free-pro-team: '*'
enterprise-server: '>=3.0'
topics:
- Mobile
redirect_from:
- /github/getting-started-with-github/github-for-mobile
---
{% data reusables.mobile.ghes-release-phase %}
## About {% data variables.product.prodname_mobile %}
{% data reusables.mobile.about-mobile %}
{% data variables.product.prodname_mobile %} gives you a way to do high-impact work on {% data variables.product.product_name %} quickly and from anywhere. {% data variables.product.prodname_mobile %} is a safe and secure way to access your {% data variables.product.product_name %} data through a trusted, first-party client application.
With {% data variables.product.prodname_mobile %} you can:
- Manage, triage, and clear notifications
- Read, review, and collaborate on issues and pull requests
- Search for, browse, and interact with users, repositories, and organizations
- Receive a push notification when someone mentions your username
For more information about notifications for {% data variables.product.prodname_mobile %}, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#enabling-push-notifications-with-github-for-mobile)."
## Installing {% data variables.product.prodname_mobile %}
To install {% data variables.product.prodname_mobile %} for Android or iOS, see [{% data variables.product.prodname_mobile %}](https://github.com/mobile).
## Managing accounts
You can be simultaneously signed into mobile with one user account on {% data variables.product.prodname_dotcom_the_website %} and one user account on {% data variables.product.prodname_ghe_server %}.
{% data reusables.mobile.push-notifications-on-ghes %}
{% data variables.product.prodname_mobile %} may not work with your enterprise if you're required to access your enterprise over VPN.
### Prerequisites
You must install {% data variables.product.prodname_mobile %} 1.4 or later on your device to use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}.
To use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, {% data variables.product.product_location %} must be version 3.0 or greater, and your enterprise owner must enable mobile support for your enterprise. For more information, see {% if enterpriseServerVersions contains currentVersion %}"[Release notes](/enterprise-server/admin/release-notes)" and {% endif %}"[Managing {% data variables.product.prodname_mobile %} for your enterprise](/admin/configuration/managing-github-for-mobile-for-your-enterprise)."
During the beta for {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, you must be signed in with a user account on {% data variables.product.prodname_dotcom_the_website %}.
### Adding, switching, or signing out of accounts
You can sign into mobile with a user account on {% data variables.product.product_location %}. At the bottom of the app, long-press {% octicon "person" aria-label="The person icon" %} **Profile**, then tap {% octicon "plus" aria-label="The plus icon" %} **Add Enterprise Account**. Follow the prompts to sign in.
After you sign into mobile with a user account on {% data variables.product.product_location %}, you can switch between the account and your account on {% data variables.product.prodname_dotcom_the_website %}. At the bottom of the app, long-press {% octicon "person" aria-label="The person icon" %} **Profile**, then tap the account you want to switch to.
If you no longer need to access data for your user account on {% data variables.product.product_location %} from {% data variables.product.prodname_mobile %}, you can sign out of the account. At the bottom of the app, long-press {% octicon "person" aria-label="The person icon" %} **Profile**, swipe left on the account to sign out of, then tap **Sign out**.
## Supported languages for {% data variables.product.prodname_mobile %}
{% data variables.product.prodname_mobile %} is available in the following languages.
- English
- Japanese
- Brazilian Portuguese
- Simplified Chinese
- Spanish
If you configure the language on your device to a supported language, {% data variables.product.prodname_mobile %} will default to the language. You can change the language for {% data variables.product.prodname_mobile %} in {% data variables.product.prodname_mobile %}'s **Settings** menu.
## Managing Universal Links for {% data variables.product.prodname_mobile %} on iOS
{% data variables.product.prodname_mobile %} automatically enables Universal Links for iOS. When you tap any {% data variables.product.product_name %} link, the destination URL will open in {% data variables.product.prodname_mobile %} instead of Safari. For more information, see [Universal Links](https://developer.apple.com/ios/universal-links/) on the Apple Developer site.
To disable Universal Links, long-press any {% data variables.product.product_name %} link, then tap **Open**. Every time you tap a {% data variables.product.product_name %} link in the future, the destination URL will open in Safari instead of {% data variables.product.prodname_mobile %}.
To re-enable Universal Links, long-press any {% data variables.product.product_name %} link, then tap **Open in {% data variables.product.prodname_dotcom %}**.
## Sharing feedback
If you find a bug in {% data variables.product.prodname_mobile %}, you can email us at <a href="mailto:mobilefeedback@github.com">mobilefeedback@github.com</a>.
You can submit feature requests or other feedback for {% data variables.product.prodname_mobile %} [on GitHub Discussions](https://github.com/github/feedback/discussions?discussions_q=category%3A%22Mobile+Feedback%22).
## Opting out of beta releases for iOS
If you're testing a beta release of {% data variables.product.prodname_mobile %} for iOS using TestFlight, you can leave the beta at any time.
1. On your iOS device, open the TestFlight app.
2. Under "Apps", tap **{% data variables.product.prodname_dotcom %}**.
3. At the bottom of the page, tap **Stop Testing**.

View File

@@ -1,18 +0,0 @@
---
title: Using GitHub
intro: "Explore {% data variables.product.company_short %}'s products from different platforms and devices."
redirect_from:
- /articles/using-github
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
children:
- /exploring-early-access-releases-with-feature-preview
- /supported-browsers
- /github-cli
- /github-desktop
- /github-for-mobile
- /keyboard-shortcuts
- /troubleshooting-connectivity-problems
---

View File

@@ -1,204 +0,0 @@
---
title: Keyboard shortcuts
intro: 'Nearly every page on {% data variables.product.product_name %} has a keyboard shortcut to perform actions faster.'
redirect_from:
- /articles/using-keyboard-shortcuts/
- /categories/75/articles/
- /categories/keyboard-shortcuts/
- /articles/keyboard-shortcuts
- /github/getting-started-with-github/keyboard-shortcuts
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## About keyboard shortcuts
Typing <kbd>?</kbd> in {% data variables.product.product_name %} brings up a dialog box that lists the keyboard shortcuts available for that page. You can use these keyboard shortcuts to perform actions across the site without using your mouse to navigate.
Below is a list of some of the available keyboard shortcuts.
## Site wide shortcuts
| Keyboard shortcut | Description
|-----------|------------
|<kbd>s</kbd> or <kbd>/</kbd> | Focus the search bar. For more information, see "[About searching on {% data variables.product.company_short %}](/articles/about-searching-on-github)."
|<kbd>g</kbd> <kbd>n</kbd> | Go to your notifications. For more information, see {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.20" or currentVersion == "github-ae@latest" %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[About notifications](/github/receiving-notifications-about-activity-on-github/about-notifications){% endif %}."
|<kbd>esc</kbd> | When focused on a user, issue, or pull request hovercard, closes the hovercard and refocuses on the element the hovercard is in
## Repositories
| Keyboard shortcut | Description
|-----------|------------
|<kbd>g</kbd> <kbd>c</kbd> | Go to the **Code** tab
|<kbd>g</kbd> <kbd>i</kbd> | Go to the **Issues** tab. For more information, see "[About issues](/articles/about-issues)."
|<kbd>g</kbd> <kbd>p</kbd> | Go to the **Pull requests** tab. For more information, see "[About pull requests](/articles/about-pull-requests)."{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
|<kbd>g</kbd> <kbd>a</kbd> | Go to the **Actions** tab. For more information, see "[About Actions](/actions/getting-started-with-github-actions/about-github-actions)."{% endif %}
|<kbd>g</kbd> <kbd>b</kbd> | Go to the **Projects** tab. For more information, see "[About project boards](/articles/about-project-boards)."
|<kbd>g</kbd> <kbd>w</kbd> | Go to the **Wiki** tab. For more information, see "[About wikis](/communities/documenting-your-project-with-wikis/about-wikis)."{% if currentVersion == "free-pro-team@latest" %}
|<kbd>g</kbd> <kbd>g</kbd> | Go to the **Discussions** tab. For more information, see "[About discussions](/discussions/collaborating-with-your-community-using-discussions/about-discussions)."{% endif %}
## Source code editing
| Keyboard shortcut | Description
|-----------|------------
| <kbd>control b</kbd> or <kbd>command b</kbd> | Inserts Markdown formatting for bolding text
| <kbd>control i</kbd> or <kbd>command i</kbd> | Inserts Markdown formatting for italicizing text
| <kbd>control k</kbd> or <kbd>command k</kbd> | Inserts Markdown formatting for creating a link
|<kbd>e</kbd> | Open source code file in the **Edit file** tab
|<kbd>control f</kbd> or <kbd>command f</kbd> | Start searching in file editor
|<kbd>control g</kbd> or <kbd>command g</kbd> | Find next
|<kbd>shift control g</kbd> or <kbd>shift command g</kbd> | Find previous
|<kbd>shift control f</kbd> or <kbd>command option f</kbd> | Replace
|<kbd>shift control r</kbd> or <kbd>shift command option f</kbd> | Replace all
|<kbd>alt g</kbd> | Jump to line
|<kbd>control z</kbd> or <kbd>command z</kbd> | Undo
|<kbd>control y</kbd> or <kbd>command y</kbd> | Redo
|<kbd>cmd + shift + p</kbd> | Toggles between the **Edit file** and **Preview changes** tabs
|<kbd>control s</kbd> or <kbd>command s</kbd> | Write a commit message
For more keyboard shortcuts, see the [CodeMirror documentation](https://codemirror.net/doc/manual.html#commands).
## Source code browsing
| Keyboard shortcut | Description
|-----------|------------
|<kbd>t</kbd> | Activates the file finder
|<kbd>l</kbd> | Jump to a line in your code
|<kbd>w</kbd> | Switch to a new branch or tag
|<kbd>y</kbd> | Expand a URL to its canonical form. For more information, see "[Getting permanent links to files](/articles/getting-permanent-links-to-files)."
|<kbd>i</kbd> | Show or hide comments on diffs. For more information, see "[Commenting on the diff of a pull request](/articles/commenting-on-the-diff-of-a-pull-request)."
|<kbd>a</kbd> | Show or hide annotations on diffs
|<kbd>b</kbd> | Open blame view. For more information, see "[Tracing changes in a file](/articles/tracing-changes-in-a-file)."
## Comments
| Keyboard shortcut | Description
|-----------|------------
| <kbd>control b</kbd> or <kbd>command b</kbd> | Inserts Markdown formatting for bolding text
| <kbd>control i</kbd> or <kbd>command i</kbd> | Inserts Markdown formatting for italicizing text{% if currentVersion == "free-pro-team@latest" or currentVersion == "github-ae@next" or currentVersion ver_gt "enterprise-server@3.1" %}
| <kbd>control e</kbd> or <kbd>command e</kbd> | Inserts Markdown formatting for code or a command within a line{% endif %}
| <kbd>control k</kbd> or <kbd>command k</kbd> | Inserts Markdown formatting for creating a link
| <kbd>control shift p</kbd> or <kbd>command shift p</kbd>| Toggles between the **Write** and **Preview** comment tabs
| <kbd>control enter</kbd> | Submits a comment
| <kbd>control .</kbd> and then <kbd>control [saved reply number]</kbd> | Opens saved replies menu and then autofills comment field with a saved reply. For more information, see "[About saved replies](/articles/about-saved-replies)."{% if currentVersion == "free-pro-team@latest" %}
|<kbd>control g</kbd> or <kbd>command g</kbd> | Insert a suggestion. For more information, see "[Reviewing proposed changes in a pull request](/articles/reviewing-proposed-changes-in-a-pull-request)." |{% endif %}
| <kbd>r</kbd> | Quote the selected text in your reply. For more information, see "[Basic writing and formatting syntax](/articles/basic-writing-and-formatting-syntax#quoting-text)." |
## Issue and pull request lists
| Keyboard shortcut | Description
|-----------|------------
|<kbd>c</kbd> | Create an issue
| <kbd>control /</kbd> or <kbd>command /</kbd> | Focus your cursor on the issues or pull requests search bar. For more information, see "[Using search to filter issues and pull requests](/articles/using-search-to-filter-issues-and-pull-requests)."||
|<kbd>u</kbd> | Filter by author
|<kbd>l</kbd> | Filter by or edit labels. For more information, see "[Filtering issues and pull requests by labels](/articles/filtering-issues-and-pull-requests-by-labels)."
| <kbd>alt</kbd> and click | While filtering by labels, exclude labels. For more information, see "[Filtering issues and pull requests by labels](/articles/filtering-issues-and-pull-requests-by-labels)."
|<kbd>m</kbd> | Filter by or edit milestones. For more information, see "[Filtering issues and pull requests by milestone](/articles/filtering-issues-and-pull-requests-by-milestone)."
|<kbd>a</kbd> | Filter by or edit assignee. For more information, see "[Filtering issues and pull requests by assignees](/articles/filtering-issues-and-pull-requests-by-assignees)."
|<kbd>o</kbd> or <kbd>enter</kbd> | Open issue
## Issues and pull requests
| Keyboard shortcut | Description
|-----------|------------
|<kbd>q</kbd> | Request a reviewer. For more information, see "[Requesting a pull request review](/articles/requesting-a-pull-request-review/)."
|<kbd>m</kbd> | Set a milestone. For more information, see "[Associating milestones with issues and pull requests](/articles/associating-milestones-with-issues-and-pull-requests/)."
|<kbd>l</kbd> | Apply a label. For more information, see "[Applying labels to issues and pull requests](/articles/applying-labels-to-issues-and-pull-requests/)."
|<kbd>a</kbd> | Set an assignee. For more information, see "[Assigning issues and pull requests to other {% data variables.product.company_short %} users](/articles/assigning-issues-and-pull-requests-to-other-github-users/)."
|<kbd>cmd + shift + p</kbd> or <kbd>control + shift + p</kbd> | Toggles between the **Write** and **Preview** tabs
## Changes in pull requests
| Keyboard shortcut | Description
|-----------|------------
|<kbd>c</kbd> | Open the list of commits in the pull request
|<kbd>t</kbd> | Open the list of changed files in the pull request
|<kbd>j</kbd> | Move selection down in the list
|<kbd>k</kbd> | Move selection up in the list
| <kbd>cmd + shift + enter </kbd> | Add a single comment on a pull request diff |
| <kbd>alt</kbd> and click | Toggle between collapsing and expanding all outdated review comments in a pull request by holding down `alt` and clicking **Show outdated** or **Hide outdated**.|{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.20" or currentVersion == "github-ae@latest" %}
| Click, then <kbd>shift</kbd> and click | Comment on multiple lines of a pull request by clicking a line number, holding <kbd>shift</kbd>, then clicking another line number. For more information, see "[Commenting on a pull request](/github/collaborating-with-issues-and-pull-requests/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request)."|{% endif %}
## Project boards
### Moving a column
| Keyboard shortcut | Description
|-----------|------------
|<kbd>enter</kbd> or <kbd>space</kbd> | Start moving the focused column
|<kbd>escape</kbd> | Cancel the move in progress
|<kbd>enter</kbd> | Complete the move in progress
|<kbd>←</kbd> or <kbd>h</kbd> | Move column to the left
|<kbd>command + ←</kbd> or <kbd>command + h</kbd> or <kbd>control + ←</kbd> or <kbd>control + h</kbd> | Move column to the leftmost position
|<kbd>→</kbd> or <kbd>l</kbd> | Move column to the right
|<kbd>command + →</kbd> or <kbd>command + l</kbd> or <kbd>control + →</kbd> or <kbd>control + l</kbd> | Move column to the rightmost position
### Moving a card
| Keyboard shortcut | Description
|-----------|------------
|<kbd>enter</kbd> or <kbd>space</kbd> | Start moving the focused card
|<kbd>escape</kbd> | Cancel the move in progress
|<kbd>enter</kbd> | Complete the move in progress
|<kbd>↓</kbd> or <kbd>j</kbd> | Move card down
|<kbd>command + ↓</kbd> or <kbd>command + j</kbd> or <kbd>control + ↓</kbd> or <kbd>control + j</kbd> | Move card to the bottom of the column
|<kbd>↑</kbd> or <kbd>k</kbd> | Move card up
|<kbd>command + ↑</kbd> or <kbd>command + k</kbd> or <kbd>control + ↑</kbd> or <kbd>control + k</kbd> | Move card to the top of the column
|<kbd>←</kbd> or <kbd>h</kbd> | Move card to the bottom of the column on the left
|<kbd>shift + ←</kbd> or <kbd>shift + h</kbd> | Move card to the top of the column on the left
|<kbd>command + ←</kbd> or <kbd>command + h</kbd> or <kbd>control + ←</kbd> or <kbd>control + h</kbd> | Move card to the bottom of the leftmost column
|<kbd>command + shift + ←</kbd> or <kbd>command + shift + h</kbd> or <kbd>control + shift + ←</kbd> or <kbd>control + shift + h</kbd> | Move card to the top of the leftmost column
|<kbd>→</kbd> | Move card to the bottom of the column on the right
|<kbd>shift + →</kbd> or <kbd>shift + l</kbd> | Move card to the top of the column on the right
|<kbd>command + →</kbd> or <kbd>command + l</kbd> or <kbd>control + →</kbd> or <kbd>control + l</kbd> | Move card to the bottom of the rightmost column
|<kbd>command + shift + →</kbd> or <kbd>command + shift + l</kbd> or <kbd>control + shift + →</kbd> or <kbd>control + shift + l</kbd> | Move card to the bottom of the rightmost column
### Previewing a card
| Keyboard shortcut | Description
|-----------|------------
|<kbd>esc</kbd> | Close the card preview pane
{% if currentVersion == "free-pro-team@latest" %}
## {% data variables.product.prodname_actions %}
| Keyboard shortcut | Description
|-----------|------------
|<kbd>command + space </kbd> or <kbd>control + space</kbd> | In the workflow editor, get suggestions for your workflow file.
|<kbd>g</kbd> <kbd>f</kbd> | Go to the workflow file
|<kbd>shift + t</kbd> or <kbd>T</kbd> | Toggle timestamps in logs
|<kbd>shift + f</kbd> or <kbd>F</kbd> | Toggle full-screen logs
|<kbd>esc</kbd> | Exit full-screen logs
{% endif %}
## Notifications
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.20" or currentVersion == "github-ae@latest" %}
| Keyboard shortcut | Description
|-----------|------------
|<kbd>e</kbd> | Mark as done
| <kbd>shift + u</kbd>| Mark as unread
| <kbd>shift + i</kbd>| Mark as read
| <kbd>shift + m</kbd> | Unsubscribe
{% else %}
| Keyboard shortcut | Description
|-----------|------------
|<kbd>e</kbd> or <kbd>I</kbd> or <kbd>y</kbd> | Mark as read
|<kbd>shift + m</kbd> | Mute thread
{% endif %}
## Network graph
| Keyboard shortcut | Description
|-----------|------------
|<kbd>←</kbd> or <kbd>h</kbd> | Scroll left
|<kbd>→</kbd> or <kbd>l</kbd> | Scroll right
|<kbd>↑</kbd> or <kbd>k</kbd> | Scroll up
|<kbd>↓</kbd> or <kbd>j</kbd> | Scroll down
|<kbd>shift + ←</kbd> or <kbd>shift + h</kbd> | Scroll all the way left
|<kbd>shift + →</kbd> or <kbd>shift + l</kbd> | Scroll all the way right
|<kbd>shift + ↑</kbd> or <kbd>shift + k</kbd> | Scroll all the way up
|<kbd>shift + ↓</kbd> or <kbd>shift + j</kbd> | Scroll all the way down

View File

@@ -1,20 +0,0 @@
---
title: Supported browsers
redirect_from:
- /articles/why-doesn-t-graphs-work-with-ie-8/
- /articles/why-don-t-graphs-work-with-ie8/
- /articles/supported-browsers
- /github/getting-started-with-github/supported-browsers
intro: 'We design {% data variables.product.product_name %} to support the latest web browsers. We support the current versions of [Chrome](https://www.google.com/chrome/), [Firefox](http://www.mozilla.org/firefox/), [Safari](http://www.apple.com/safari/), and [Microsoft Edge](https://www.microsoft.com/en-us/windows/microsoft-edge).'
versions:
free-pro-team: '*'
enterprise-server: '*'
github-ae: '*'
---
## Firefox Extended Support Release
We do our best to support Firefox's latest [Extended Support Release](https://www.mozilla.org/en-US/firefox/organizations/) (ESR). Older versions of Firefox may disable some features on {% data variables.product.product_name %} and require the latest version of Firefox.
## Beta and developer builds
You may encounter unexpected bugs in beta and developer builds of our supported browsers. If you encounter a bug on {% data variables.product.product_name %} in one of these unreleased builds, please verify that it also exists in the stable version of the same browser. If the bug only exists in the unstable version, consider reporting the bug to the browser developer.

View File

@@ -1,42 +0,0 @@
---
title: Troubleshooting connectivity problems
intro: 'If you''re having trouble connecting to {% data variables.product.prodname_dotcom %}, you can troubleshoot your connection, then use the {% data variables.product.prodname_debug %} tool to diagnose problems.'
redirect_from:
- /articles/troubleshooting-connectivity-problems
- /github/getting-started-with-github/troubleshooting-connectivity-problems
versions:
free-pro-team: '*'
---
Most often, connection problems occur because a firewall, proxy server, corporate network, or other network is configured in a way that blocks {% data variables.product.prodname_dotcom %}.
## Allowing {% data variables.product.prodname_dotcom %}'s IP addresses
Make sure your network is configured to allow {% data variables.product.prodname_dotcom %}'s IP addresses. For more information, see "[About {% data variables.product.prodname_dotcom %}'s IP addresses](/articles/about-github-s-ip-addresses)."
## Using a company or organization's network
If you're having connectivity problems on your company or organization's network, check with your network administrator to find out if the network has rules in place to block certain traffic. If there are rules in place, ask your network administrator to allow traffic to {% data variables.product.prodname_dotcom %}.
## Troubleshooting the captcha
If you're unable to verify with the captcha:
- Ensure JavaScript is enabled on your browser.
- Ensure your browser is supported. If your browser isn't supported, upgrade your browser or install a supported browser. For a list of supported browsers, see "[Supported browsers](/articles/supported-browsers)."
- Ensure your network configuration is not blocking https://octocaptcha.com/ or https://arkoselabs.com/. If you're behind a corporate firewall, contact your IT administrator to allow those domains. To verify access to these domains, visit https://octocaptcha.com/test and ensure the text "Connection successfully made!" is displayed, then visit https://client-demo.arkoselabs.com/github and ensure you are able to load the captcha.
- Ensure your browser does not have plug-ins or extensions that may be interfering with GitHub. If so, temporarily disable the plug-ins or extensions during captcha verification.
## Switching cloning methods
Switching from cloning via SSH to cloning via HTTPS, or vice versa may improve connectivity. For more information, see "[Cloning a repository from {% data variables.product.prodname_dotcom %}](/articles/cloning-a-repository-from-github)."
If you're encountering timeouts with SSH, see "[Error: Bad file number](/articles/error-bad-file-number)."
## Troubleshooting slow downloads and intermittent slow connections
{% data variables.product.prodname_dotcom %} does not throttle bandwidth per user.
If you're experiencing slow connections at certain times of day but not others, the slow speeds are most likely due to network congestion. Because {% data variables.product.prodname_dotcom %} cannot resolve network congestion, you should escalate the problem to your internet service provider.
## Troubleshooting with {% data variables.product.prodname_debug %}
If you've followed all of the troubleshooting suggestions above and are still having connection problems, you can follow the instructions on the {% data variables.product.prodname_debug %} site to run tests and send a report to {% data variables.product.prodname_dotcom %} Support. For more information, see [{% data variables.product.prodname_debug %}](https://github-debug.com/).

View File

@@ -10,7 +10,6 @@ versions:
enterprise-server: '*'
github-ae: '*'
children:
- /getting-started-with-github
- /setting-up-and-managing-your-github-user-account
- /setting-up-and-managing-your-github-profile
- /authenticating-to-github
@@ -35,3 +34,4 @@ children:
- /site-policy
- /site-policy-deprecated
---