Push does not work since 3.2.5
Asked by Jens-Peter Frank:

I have recently upgraded to version 3.2.5.

Since then Push no longer works. The dialog does not display any branches.

Pull works.

![PushNoWorks.PNG](/t5/image/serverpage/image-id/63107iACAA038E94B06907/image-size/large?v=v2&px=999 "PushNoWorks.PNG")


Answers:
author: Phileo99
body: Based on a suggestion from another user:

<https://community.atlassian.com/t5/Sourcetree-questions/Sourcetree-Push-dialog-does-not-show-any-branches/qaq-p/1172273#M31053>

I tried upgrading the Embedded Git used by SourceTree

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

And after that, my Push Dialog showed all the branches once again.

To avoid such problem in the future, SourceTree upgrade process should detect version of Embedded Git and notify user when the Embedded Git also needs to be updated

UPDATE:

However, there still appears to be problems with the Push Dialog:

* create local branch
* commit local, do not push to remote branch
* Open Push Dialog

Expected:

Push Dialog should show my recent local branch as available to push to remote

Actual:

Push Dialog does not show my recently created local branch

comments: author: Jens-Peter Frank
body: The change to Git Version Embedded (2.21.0) has helped me.


author: valeriuo
body: This does indeed seem to work. I suspect even switching to the system git might do the trick.


author: eyonaian
body: [@Phileo99](/t5/user/viewprofilepage/user-id/724549) Just tried and it works perfectly! Thanks man.  


author: Fernando
body: It works now! Thanks [@Phileo99](/t5/user/viewprofilepage/user-id/724549)


author: Shira Stein
body: "Update Embedded" crashed in the middle so

I had to do Tools =\> Options =\> Git =\>Git Version: Embedded

and download the whole thing (2.21.0) and that solved everything


author: P
body: Your solution doesn't work in my case and I had to fix downloading the Portable Git 2.21 and replace my version manually.  

So If anyone doesn't fix by Source tree could browse the GitFolder and replace the local git version as I did.  

P.


author: markchagers
body: In my case upgrading the embedded version of git solved the issue, but I had to switch to actually use the embedded version since I was using the system git at 2.13.1. Updating the system git also worked. So apparently you need to update to git \>2.13.1

I can't reproduce the issue reported by [@Phileo99](/t5/user/viewprofilepage/user-id/724549) in his update, neither with the embedded git nor the system git. However when I click the local branch to push, it doesn't show the new branch name in the remote branch column like it used to do with earlier versions. The push works however, and after pushing, the name is shown on subsequent pushes.

comments: author: Fernando
body: Perfect!

This fixed the problem for me.

Thanks, [@markchagers](/t5/user/viewprofilepage/user-id/3542611) :)


author: eyonaian
body: I have exactly the same issue. A simple work around to this is by downgrading to an earlier version.

Please Atlassian, can somebody look into this ASAP!


author: Fernando
body: I've got the same problem.

In case this is helpful: I added my repositories to SourceTree by adding existing folders in my HD, not by downloading the code from BitBucket (I already had them synchronized with a previous application)


author: Jan Drozen
body: I created a bug report almost two weeks ago [https://jira.atlassian.com/browse/SRCTREEWIN-12194](https://jira.atlassian.com/browse/SRCTREEWIN-12194?)

comments: author: Valeriu Ohan
body: I can't see the issue page. How is it being handled? Any progress or workaround (beside reverting to an older version)?


author: valeriuo
body: I found some related bug reports:

<https://jira.atlassian.com/browse/SRCTREEWIN-12290>

<https://jira.atlassian.com/browse/SRCTREEWIN-12285>

<https://jira.atlassian.com/browse/SRCTREEWIN-12284>

It looks like the entire push menu doesn't work correctly for some time. Initially, I no longer had auto-completion for remote names of untracked branches (3.2.5). Then, in 3.2.6, this happened.


author: arumpf
body: I have exactly the same issue. This occurred sometime after the automatic update to 3.2.6, although it had been working fine for a few days after the update.

Pushing via the command line still works, and all of my remote branches appear, but no branches show up in the Push window. Fetching does nothing. The same problem affects all of my remote accounts, both on Bitbucket and GitHub.


author: Phileo99
body: I am experiencing the exact same problem, Push dialog shows empty branches.

Had to downgrade to version 3.1.2 to get back my branches to show in Push dialog.

Atlassian Please FIX, I did not agree to be your unpaid Beta tester !!!


author: Alexandru Ghitulescu
body: I'm really disappointed in SourceTree. Do you guys not do any testing in your release cycle?


author: Hannes Fischer
body: I also have the same issue after updating to the lastest version of sourcetree (v326.3544). Could you please check?

comments: author: eliacurti
body: Same issue. If you try to open "Terminal" and run "git push" it works.

A little workaround.


author: Hannes Fischer
body: Thanks for you info, but it doesn't work for me. Using the terminal terminal does not consider my private key. Really strange. After downgrade to v3.1.3 everything is working again, also terminal


author: Gasalho Antero
body: [@eliacurti](/t5/user/viewprofilepage/user-id/3548573)

it works for me thanks :).

The issue still remains in Sourcetree


author: eliacurti
body: Same issue! I've recently upgraded to 3.2.6.

How can I solve?

comments: author: Phileo99
body: you have to downgrade to 3.1.2 or lower


author: the designer
body: I've tried most of the fixes here, nothing works; updated SourceTree to the latest version - currently 3.4.2; I'll explain a lot since I'm a noob, so may others can check this fix:

**A.** As you can see, there are no branches on the right menu; also, the push dialog menu looks like in the picture of the original post;

![sourcetree1.PNG](https://community.atlassian.com/t5/image/serverpage/image-id/126997i635B6E65BB8201E0/image-size/large?v=v2&px=999 "sourcetree1.PNG")

**B.** Make sure you are on the local repository, within SourceTree; click Terminal, which opens the command line interface:

![sourcetree2.PNG](https://community.atlassian.com/t5/image/serverpage/image-id/126998iD0A81B59D86EAA44/image-size/large?v=v2&px=999 "sourcetree2.PNG")

In terminal, do the following commands:

$ git status #list the status of git  
$ git add \<file_name\> # **Example:** git add file_2.txt  
$ git commit -m "\<msg\>" # **Example:** git commit -m "second file to upload, one more line"  
$ git push origin \<branch_name\> # **Example:** git push 2021-test-v2 master # aka push to remote repository 2021-test-v2 and brunch master;

Last command output should be like:

Enumerating objects: 3, done.  
Counting objects: 100% (3/3), done.  
Writing objects: 100% (3/3), 253 bytes \| 253.00 KiB/s, done.  
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0  
To <https://bitbucket.org/>*\<your account or username here\>* /2021-test-v2  
\* \[new branch\] master -\> master

**C.** Now you should have the branches shown on the workspace of SourceTree

![sourcetree3.PNG](https://community.atlassian.com/t5/image/serverpage/image-id/126999i03A9006237CDE32D/image-size/large?v=v2&px=999 "sourcetree3.PNG")

**D.** Go on the local repository folder; create a new file, let's say file3.txt;

Go/open again SourceTree, select local repository, see the newly created file3.txt; click on it, choose Stage Selected, write something on the Comment window, click "Commit" button below the comment section.

**E.**Go on the left menu/ workspace, see the master branch additional sign and Push button with 1 task waiting;

![sourcetree4.PNG](https://community.atlassian.com/t5/image/serverpage/image-id/127001i80CBB32748D7F597/image-size/large?v=v2&px=999 "sourcetree4.PNG")

**F.** Make sure you have the last line selected, press Push

![sourcetree5.PNG](https://community.atlassian.com/t5/image/serverpage/image-id/127003i55D605508DDB6262/image-size/large?v=v2&px=999 "sourcetree5.PNG")

**G.** Now, you should have the possibility to choose the remote repository and branches;

![sourcetree6.PNG](https://community.atlassian.com/t5/image/serverpage/image-id/127004i86346756666CDB72/image-size/large?v=v2&px=999 "sourcetree6.PNG")

The Push button will still show 1 task to complete, but the file will be uploaded to the cloud repository; check that by going to bitbucket.org/your account / your repository , master branch or whatever you selected, the file should be there.

comments: author: Apoorv Singhal
body: In your Tools-\>Options-\>Git the **Push Branches** option must not be set to **matching**in case you want to push an untracked local to remote. Can you check if that was the case for you?


author: the designer
body: Hello, I don't think I have this case; please see the push branches being set to simple.

![sourcetree.PNG](https://community.atlassian.com/t5/image/serverpage/image-id/129178iA8E7D3D4566CA962/image-size/large?v=v2&px=999 "sourcetree.PNG")


author: sschaenzer
body: Your post helped me figure out that, if you're upgrading an existing system, all we really need to do is right click on the E. left menu /Workspace branch as you mentioned and push from there! After that the top Push button starts working again!


author: Vipin Yadav
body: Hi,  
Please provide more info with your settings file, your version, git.config contents, config.json etc. so that we can reproduce it. Also please let us know any other information, which you feel can be useful.

Thanks,

Vipin


author: Tony Ladefoged
body: Just updated to 3.3.9 and it still doesn't work. Hell, the Terminal menu doesn't work neither (I saw somebody mention this as a work around)

comments: author: Oleg Denysenko
body: +1


author: markchagers
body: I think most issues noted here have to do with a disparity between the sourcetree version and the git version in use.

Be aware that sourcetree is nothing but a UI wrapper around git. Some of the issues occurring have nothing to do with sourcetree itself, but with the installed git and it's configuration.

The second thing to be aware of is that sourcetree comes with an embedded version of git but that if you have git installed separately you can also use the 'system version' of git. This setting is available in the git tab of the settings dialog. Here you can also update the embedded git version.

Personally I prefer using the system git, since I have git installed through homebrew, and it gets updated automatically whenever I do a brew update/upgrade, which I do a couple of times a week anyway.

After my initial issues with branches not showing up properly in the push dialog, I could solve these by upgrading the git version in use, and I have never experienced similar issues since (I've used sourcetree extensively both on Windows and on MacOS).

A final thing to be aware of is that sourcetree is a free program and that there is a multitude of similar - free - solutions available (VS Code has excellent git clients, both built in and as extensions for example) so you're not obliged to use sourcetree. If it doesn't work for you find another git client that does.

comments: author: VladimirV
body: I've been fixing this issue either by upgrading git version or by re-installing SourceTree.

But yesterday issue reappeared after update to newer version and now nothing helps.

I'm done with SourceTree. Going to find the replacement (Fork preliminary).

I already suggested to add "Console" window to let users track what ST communicates to git. W/o that it is impossible to guess what goes wrong. Nobody listens.


author: sschaenzer
body: I was also having a problem with the Push since I upgraded to the latest Sourcetree 3.4.2 this morning.

Was about to give up after 3 hours of farting around trying about every solution mentioned here, such as:

I followed the advice from the first post in this thread and upgraded to the latest embedded Git but that didn't fix the issue and now just noticed that I cannot even push from the command line either.

Trying to push from the command line caused a couple of CredentialHelperSelector forms to pop up asking me to select a credential helper: and I have no idea which of the 10 options I want.

Found an article that seemed to say we want the "manager" option.

([I always get a popup credential helper selector as... (atlassian.com)](https://community.atlassian.com/t5/Sourcetree-questions/I-always-get-a-popup-credential-helper-selector-asking-me-to/qaq-p/1465880))

I really am amazed and disgusted that this problem that although was originally reported in Aug 2019, at least 18 months ago, that Atlassian hasn't been able, or hasn't bothered to release a fix for this. There is not even a post here from Atlassian with the definitive answer if there is one.

Nothing worked, the "Push" button at the top never worked right, never showed any branches to push, until AFTER:

I used the right click on the branch and selected the push option I wanted, such as "Push to origin/master (tracked)" which then proceeded to pop a push Dialog with all the possible branches to select from were properly displayed!

Then using the "Push" button there worked except now the CredentialHelperSelector Dialog popped several times where I selected the "manager" option and then the push finally succeeded!

Then after that suddenly the "Push" button at the top started working right! That is it starting showing all the branches that can be pushed as expected instead of none of them. But the CredentialHelperSelector kept popping up until I finally checked the "\[ \] Always use this from now on" option there.

This is certainly a Sourcetree bug, that is still in the product. The bug is that whereas Sourcetree knows the branches and they are listed on the panel on the left, the "Push" button at the top fails to discover and present them in its dialog for the push operation, this is probably a cache problem because once you use a right click Push command from the left panel the top "Push" button starts working again, for all the repo's!