Tower Help & Support

Pushing to a Remote

The Push command uploads commits from a local branch to a specified remote repository. Especially when you want to share your work with others, pushing your local changes to a remote repository is a necessary step.

Before pushing a branch to a remote repository it's best to make sure your local branch is up-to-date by pulling changes from the remote.

You can decide for yourself which branches you want to push to a remote: by default, every local branch is private to you until you explicitly push it to a remote server.


In most cases, you'll simply want to push your current HEAD branch to a remote server. The easiest way to do this is to simply click the Push button in the toolbar and select the remote branch that shall receive the changes.

Push any Local Branch

In case you need more options or want to push a branch other than HEAD, Tower offers you other ways to push:

  • right-click the local branch in the sidebar that you want to push and select Push Branch <branch name>…

Tracking Connections
In Git, a local branch can "track" a remote one. Such a relationship helps make a lot of things easier: it provides a default for pushing & pulling and it allows Tower to inform you about unpushed and unpulled commits in the sidebar.
Learn more about "tracking connections" in this documentation.