Article version: Enterprise Server 2.17
Which remote URL should I use?
There are several ways to clone repositories available on GitHub.
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 "Changing a remote's URL."
Cloning with HTTPS URLs (recommended)
The https://
clone URLs are available on all repositories, public and private. These 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 GitHub Enterprise username and password.
If you have enabled two-factor authentication, you must authenticate with a personal access token instead of your username and password for GitHub. For more information, see "Securing your account with two-factor authentication (2FA)" and "Creating a personal access token for the command line."
Tips:
-
You can use a credential helper so Git will remember your GitHub username and password every time it talks to GitHub. For more information, see "Caching your GitHub password in Git."
-
To clone a repository without authenticating to GitHub Enterprise on the command line, you can use GitHub Desktop to clone instead. For more information, see "Cloning a repository from GitHub to GitHub Desktop."
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 GitHub Enterprise account. For more information, see "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."
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" in the GitHub Developer documentation.
Cloning with Subversion
You can also use a Subversion client to access any repository on GitHub. Subversion offers a different feature set than Git. For more information, see "What are the differences between Subversion and Git?"
You can also access repositories on GitHub from Subversion clients. For more information, see "Support for Subversion clients."
Further reading
- Working with Remotes from the Pro Git book site