Git FAQ
Frequently asked questions around Git and Version Control.
Git FAQ featured image

How to Push to GitHub

Pushing code to GitHub means to upload your project code to the GitHub.com code-hosting service. In this short article, we'll show you how to do this using Git on the Command Line as well as through a desktop GUI.

The Git Cheat Sheet

No need to remember all those commands and parameters: get our popular "Git Cheat Sheet" - for free!


How to Create a Local Repository

First, you need to have a local repository for your actual project code. (If you already have this, skip to the next section below titled "How to Push to GitHub".)

Using Git on the Command Line

Open the command line ("Terminal" on the Mac, "Git Bash" on Windows) and change into your project's base directory. There, you can create a new Git repository:

$ cd projects/my-project
$ git init

As a first step, you can add all of your current files to the repository and then bundle these in a commit:

$ git add .
$ git commit -m "Initial commit"

Using Git in a Desktop GUI

In case you're using a desktop GUI like the Tower Git client, the process is very easy: you can simply drag your project's base folder into Tower and have it create the Git repository for you.

You can then add all files to the Staging Area and make your first commit:

Now, you are ready to push your code to GitHub!

How to Push to GitHub

Before you can upload your code to GitHub, you need to create a remote repository in your GitHub account.

Using Git on the Command Line

If you're working with Git on the Command Line, you'll have to open the GitHub.com interface in your browser. Right on the "Dashboard" view, you can see a button to create a new repository:

Then, on the project's main page, you can use the green "Code" button to reveal the repository's remote URL and copy it to your clipboard:

You can then connect this remote repository to your local Git repository with the following command:

$ git remote add origin <remote repository URL>

The final step is to push your changes from your local repository to your new remote repository:

$ git push origin master

Using Git in a Desktop GUI

In case you're using a desktop GUI like the Tower Git client, you can simply follow these simple steps:

  1. right-click the "Remotes" section header in the sidebar and select "Add Remote Repository"
  2. in the dialog, you can enter a name (e.g. "origin") and the remote repo's URL on Github; additionally, you can select your GitHub account
  3. confirm the dialog and the remote will now be connected with your local repository
  4. from now on, you can simply use the "Push" button in the toolbar to upload new changes to the remote on GitHub

Learn More

About Us

As the makers of Tower, the best Git client for Mac and Windows, we help over 100,000 users in companies like Apple, Google, Amazon, Twitter, and Ebay get the most out of Git.

Just like with Tower, our mission with this platform is to help people become better professionals.

That's why we provide our guides, videos, and cheat sheets (about version control with Git and lots of other topics) for free.