SourceTree can't find Git for Windows 2.3.4 (x86 and x64)

Git for Windows has recently updated to version 2.3.4. SourceTree couldn't find the newly installed Git for Windows 2.3.4 (both 32-bit and 64-bit). Any workaround?

11 answers

1 accepted

3 votes
Accepted answer

A temporary fix for this is to create a symlink named "bin" in the Git directory that points to the cmd directory, where the Git executable is located in Git for Windows.

Open a command prompt (shift+right click, then Open command prompt here) in C:\Program Files\Git, and type this:

mklink /D bin cmd

This work!! Thanks Christian Grasso.

This allowed me back into SourceTree but the Terminal button no longer functions. It just momentarily flashes up a command prompt containing the error "'C:\Program' is not recognized as an internal or external command, operable program or batch file." Any idea how to fix the Terminal button as well?

Probably a bug in SourceTree. It doesn't add quotes to the command so the prompt takes only the part before the space. Didn't test this, but a fix would be installing Git in a path without spaces, like C:\Git

Hmm, I was hopeful for a moment but that just produces a similar error saying "C:\Git\bin\sh.exe" is not recognized. sh.exe now seems to be in \usr\bin rather than \bin and since we're already symlinking \bin to \cmd we can't also symlink to \usr\bin. I tried copying everything from \usr\bin to \cmd which gets past the new error, but after that sh.exe just crashes and creates an "sh.exe.stackdump" file inside my repo. It's probably a SourceTree bug like you say, but it doesn't look like there's an easy workaround...

Try adding \usr\bin to the PATH environment variable.

Adding to PATH doesn't seem to make any difference unfortunately. However, I did find https://jira.atlassian.com/browse/SRCTREEWIN-3174 which might be worth voting on...

Another thing you might want to try is choosing "Use Git from the Windows Command Prompt" in the Git for Windows installer. That might make sh.exe available from cmd (can't test right now). By the way I upvoted that issue, but I think Atlassian will wait for a stable Git for Windows release.

I actually already installed Git that way. It doesn't seem to help with the problem directly, but it does mean you can uncheck "Use Git Bash as default terminal" in SourceTree's options. That way the Terminal button will just fire up cmd in the correct repo and Git commands will still be available without Git Bash. Might have to make do with that for the time being, or just start Git Bash via the context menu in Windows Explorer.

The problem here is that the built-in bash profile (found at C:\Program Files\Git\etc\profile) expects a $MSYSTEM variable to be set to properly setup the $PATH variable. The default is to simply prepend the $MSYS2_PATH to $PATH. The problem is that this results in /bin lacking the git.exe executable. The best way to solve this is to edit C:\Program Files\Git\etc\profile and modify $MSYS2_PATH by appending :/cmd to  the end. This will allow both git-bash.exe and the sourcetree terminal to load the correct environment.

MSYS2_PATH="/usr/local/bin:/usr/bin:/bin:/cmd"

This worked for me.

Have you checked this page: https://confluence.atlassian.com/pages/viewpage.action?pageId=695108075 ? Check the git executable path when you're prompted. Another possible cause could be that Source Tree doesn't work with Git 2.x, but I don't know for sure about this one.

Good resource. Also check your PATH to make sure your new Git version is there.

Is SourceTree configured to use Embedded Git or System Git?

No. I uninstalled the old 1.9.5, and then install 2.3.4. Upon starting SourceTree, it said it can't find Git.

Ok, but that doesn't answer my question. "No" isn't a valid answer to "Embedded or System?" SourceTree only has those two options.

It is configured to use System Git.

May I ask what you are refering to when you say "Git for Windows has recently updated to version 2.3.4"? At the moment the latest build I could find for windows was 1.9.5 and I'm quite interested to get a better version. Should I compile it myself? I'm not sure how to it properly... Thanks

Thanks a lot, that link is not even on the first page of google search, it deserves more visibility! Try searching "git for windows" (without quotes), nothing... Cheers, P P.S.: SourceTree's internal link ("update embedded git") also points to version 1.9.5.

The latest release candidate of Git for Windows has resolved this problem by adding some redirect executables to the /bin directory where SourceTree looks for Git. You need v2.4.4.2 RC3 or newer from https://github.com/git-for-windows/git/releases.

I believe Atlassian also have a fix in beta so that SourceTree looks in the proper /cmd directory.

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Oct 23, 2018 in Sourcetree

Tip from the team: configure your repos for hosting goodness!

Supported Platforms macOS Windows We recently introduced support for additional hosting services such as GitHub Enterprise, GitLab (Cloud, Community Edition, Enterprise Edition), and...

849 views 3 2
Read article

Atlassian User Groups

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

Find a group

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

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you