Skip to main content

This version of GitHub Enterprise Server was discontinued on 2023-09-25. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise Server. For help with the upgrade, contact GitHub Enterprise support.

Pushing changes to GitHub from GitHub Desktop

As you commit changes to your project locally, you can push those changes to GitHub from GitHub Desktop so that others may access them from the remote repository.

Who can use this feature

People with write permissions can push changes to a repository.

About pushing changes to GitHub

When you push changes, you send the committed changes in your local repository to the remote repository on GitHub. If you change your project locally and want other people to have access to the changes, you must push the changes to GitHub.

Before pushing changes, you should update your local branch to include any commits that have been added to the remote repository. If someone has made commits on the remote that are not on your local branch, GitHub Desktop will prompt you to fetch the new commits before pushing your changes to avoid merge conflicts. For more information, see "Syncing your branch in GitHub Desktop."

Repository administrators can enable protections on a branch. If you're working on a branch that's protected, you won't be able to delete or force push to the branch. Repository administrators can enable other protected branch settings to enforce specific workflows before a branch can be merged. For more information, see "About protected branches."

Pushing changes to GitHub

Note: GitHub Desktop will reject a push if it exceeds certain limits.

  • A push contains a large file over 100 MiB in size.
  • A push is over 2 GiB in total size.

If you configure Git Large File Storage to track your large files, you can push large files that would normally be rejected. For more information, see "About Git Large File Storage and GitHub Desktop."

  1. To push your local changes to the remote repository, in the repository bar, click Push origin.

    Screenshot of the repository bar. A button, labeled "Push origin", is highlighted with an orange outline.

  2. If there are commits on the remote branch that you don't have on your local branch, GitHub Desktop prompts you to fetch new commits from the remote. In the "New Commits on Remote" window, click Fetch.

  3. Optionally, click Preview Pull Request to open a preview dialog where you can review your changes and begin to create a pull request. For more information, see "Creating an issue or pull request from GitHub Desktop."

    Screenshot of the "No local changes" view. A button, labeled "Preview Pull Request", is highlighted with an orange outline.

Further reading