I need help using SourceTree 3.0.5 and 3.0.6 with a simple SSH-based repository

(Note that I was required to enter a tag to post a question, but there's no tag for SourceTree, so I picked them all.)

I'm unable to use SourceTree 3.0.5 and 3.0.6 to connect to existing repositories. We're using simple SSH-based repositories with usernames and passwords. The SourceTree Remote icon shows an explanation point warning that I need to set up extended integration. When I go to the Remote Details and edit the remote, I see an "Optional extended integration" section with a Host Type. There is no option for "SSH" there.

When I try to pull, I see:

'"C:\Users\<me>\AppData\Local\Sourcetree\app-3.0.6\tools\Askpass.exe"' is not recognized as an internal or external command,
operable program or batch file.

Error reading SSH_ASKPASS output for prompt: <username>@<remote>'s password:
fatal: Could not read from remote repository.

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

It's disturbing that SourceTree is looking for an executable that doesn't exist. It's even more disturbing that SSH access is broken yet again. 

Is there anything I can do to resolve this, or are we stuck with the 2.x version?

Thank you,

Doug

 

1 answer

1 accepted

6 votes
Accepted answer

I had the same error message with our local git server. Got it working by copying over some files from an older version of SourceTree (and this is not the first time I had to do this after an SourceTree update! Last time it was a borked Putty version in an update)

  • Go to %APPDATA%\Local\SourceTree\
  • Navigate to the folder of the older version (app02.6.10 for me) and then the tools folder
  • Copy Askpass.exe, Askpass.UI.Wpf.dll and SourceTreeShared.dll
  • Navigate to the newest SourceTree folder (app-3.0.6 for me) and then the tools folder
  • Paste the files

You are fantastic! Thank you so much. It's working beautifully now.

Thanks!

This workaround didn't work for me. I was trying to push changes to our internal ssh repository. The command line SourceTree tries to use is:

git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks -c credential.helper= -c credential.helper="C:/Users/JBOTTO~1/AppData/Local/ATLASS~1/SOURCE~1/GIT_EX~1/GIT-CR~1.EXE" push -v --tags origin devel/jbottorff/xxx/yyy/zzz ( a few details have been obscured with generic text).

The double "credential.helpers" seems a little suspicious.

This fails to authenticate, and does not prompt for the password. My password recently changed, so it needs to prompt. What's curious is if I take the exact command line it uses and paste it into the SourceTree supplied terminal window, it prompts for a password, and authentication then works and the push worked.

I then tried to create a new clone tree of the repository, using the same url of the current repository, like ssh://username@server.mydomain.com/repo/git/xxx/yyy.git

It does NOT prompt for a password, and get's an error like:

Output:
Error: Access denied
Access denied
Access denied
Access denied
Access denied
FATAL ERROR: Server sent disconnect message
type 2 (protocol error):
"Too many authentication failures for username"
fatal: Could not read from remote repository.

This is the url I've been using for about 6 months, and it must have a cached password stored who knows where.

Anybody know how to clear a cached password? Perhaps that would get it to work again.

The only functioning workaround I have at the moment is to manually run the git commands from a terminal prompt.

This is a terrible solution. Requiring a download of an older version? Atlassian needs to fix this. This should not be an accepted answer. Opening the shell and issuing the desired git commands works fine for me. (For instance.... git pull)

Please fix this.

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...

837 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