Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Next challenges

Recent achievements

  • Global
  • Personal


  • Give kudos
  • Received
  • Given


  • Global

Trophy case

Kudos (beta program)

Kudos logo

You've been invited into the Kudos (beta program) private group. Chat with others in the program, or give feedback to Atlassian.

View group

It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Sourcetree Push dialog does not show any branches

Git Pull dialog works fine.

However when I press the Push button, the Push dialog shows me an empty list of branches when I am expecting a list of branches available push_dialog.JPGto push

8 answers

1 accepted

13 votes
Answer accepted

In my case it was caused by an older version of git (prior to 2.13.0) not understanding the format option to git branch command. Upgrading to Git 2.23.0 solved the problem.

I am running 3.2.6 and have the same issue. Steps:

1. created repository on
2. cloned repository to local machine to an empty folder
3. copied files into the newly created folder where the .git directory was created
4. using SourceTree, staged all of the files
5. entered commit comment and clicked the commit button (lower right)
6. tried to Push commited files

Result - the push dialog with no branches listed and just a blue spinny for-ever.

This worked for me:


I tried upgrading the Embedded Git used by SourceTree  

(Tools => Options => Git => Update Embedded Git)


Thanks for the link

Like # people like this

But now I get this error when I try to push:

git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks push -v --tags --set-upstream <repository-name> master:master
Pushing to<my-name>
fatal: '<my-name>' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.


Completed with errors, see above.


where <repository-name is the name of the repository I am trying to commit to and <my-name> is the name added to the bitbucket url . Both exist at

I've tried both system git (updated to 2.23) and embedded git (2.21) and neither solved the problem for me. I'm having the problem with both ssh and file system origin repos.

Like Maddalena_Barlotti likes this

I discovered a way to "fix" the problem that is probably also a clue for the bug.

If I set my new branch to track an existing remote branch (doesn't matter which branch) then immediately change it back to track "None", it then shows up in the push dialog.

Like # people like this

You're right, I have the same issue and upgrading Git didn't work, but the trick of tracking/untracking branches did it! Thanks a lot!

The trick of tracking/untracking branches worked for me also.

The trick of tracking/untracking branches worked for me also.

It looks like Atlassian has made a new release of SourceTree:


Has anyone tested whether it fixes this problem of first time local branch not showing in Push Dialog?

I'd like to try it out, but can't find how to download version 3.3.4 of SourceTree.

3.3.4 doesn't seem to be officially released...yet.

This solution worked for me.

Like kadkin likes this

I tried in tool option and then it worked for me.


This solution worked for me also.

My "System" Git installed by "Docker Toolbox" was "git version".

Thanks for capture!

Same problem here, and this solution worked for me too!

Thanks!  Selecting system made it work.

Selecting the "Update Embedded" in the Tools > Options > Git dialogue worked for me.

Thanks. Solution worked for me too!!

Yes solved the issue. Thanks

Selecting Embedded and restarting SourceTree worked for me. Thank you.

This worked for me, thanks!

Worked for me too!!!! many thanks!!

Worked for me ~ Thanks~

selected Embedded and it works again, thanks. 

Thanks! Works for me as well. 

Updating SourceTree or the embedded git didn't solve this issue for me.

Instead, I followed Jason Paulson's comment in a related thread:

- Check (Tools -> Options -> Git -> Push branches)

- Change this setting from "matching" to "simple"

Yay!...this is the real solution (at least for me).

Here's a little additional information on this issue that I discovered:

The underlying issue is that when using the "matching" setting, the SourceTree push dialog only displays branches that have [branch] entries in the .gitconfig file. My previous solution of manually setting and unsetting the remote tracking branch works because it's causing an .gitconfig entry for the branch to be created.

Like # people like this

My issue is when I tried to push the second time(the first time the branch showed up and I was able to push), the branch was not listed. So I updated embedded git, did not work. Then I changed Tools->Options->Git->Push branches from simple to matching. The local branch showed up. 

Like # people like this

I had a similar problem, but changing simple(which was the default setting) to matching worked for me! XD

Like # people like this

I tried a bunch of the suggestions here, but this is the one that worked for me - although, I changed the setting from 'simple' to mixed. I suspect therefore that the setting itself isn't the issue, but changing it triggers some kind of refresh.

chamodt I'm New Here Aug 19, 2020

I followed the way mentioned by Yi Han it worked for me.

GIT UPDATE solved this for me :)

I had recently updated SourceTree to 3.3.8. I found this problem of local branches to be pushed dialog being  empty. I followed the suggestioon to upgrade Git. I went from 2.12.2 to the latest version, which is 2.25.1. Closed STree and Git. Re-opened both and now STree displays all available branches.

I'm happy.

I branched local/[mybranch-didnotpush] to local/[mybranch-thiswillpush], and and pushed local/[mybranch-thiswillpush] to origin/[mybranch-didnotpush].  Then I deleted local/[mybranch-didnotpush], and renamed local/[mybranch-thiswillpush] to local/[mybranch-didnotpush].  Now local/[mybranch-didnotpush] does push.

had the same issue here on windows, switch git to embedded version works for me. 

For me, the problem was that the local and the remote branch names didn't match! I simply renamed my local branch (named it exactly the same as remote one) and my local branch magically appeared in the list.

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted in Sourcetree

[dev team] Sourcetree for Windows 2019 Preview - Dark Theme

Hi folks, While the full post is over on our blog I'd like to share the dark theme we've got planned for 2019 here directly as well to keep the discussion going.  The ...

3,236 views 19 18
Join discussion

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you