SourceTree asks me to provide the my User Name and Password each time I try to communicate with my hosted repository even though "Save password in your keychain" is checked.
I can delete the keychain entry, and SourceTree will recreate. SourceTree still won't use it though. Behaviour is reproducible.
OS: OS X 10.7.3
SourceTree Version: 220.127.116.11
Repository Host: Kiln
Keychain Status: Unlocked
Keychain Entry Access Control:
Just to offer a potential solution from an extremely non-tech angle. I'd been wrestling with this for days. I ended up with no keychain record for 'bitbucket.org' at all and SourceTree was prompting login all the time. It did seem to coincide with an OSX update.
The solution (for me) was simply in SourceTree to press "Cmd Shift H" This opens a username / password prompt into which I entered my bitbucket details. Saved and then BOOM - keychain added and SourceTree behaving itself again.
For the record I'm on SourceTree Version 1.9.2 (1.9.2) and OSX Version 10.9.2 (Mavericks)
Problems like this are usually caused by some kind of ambiguity when trying to resolve the keychain entry. Please can you check the URL you're using and make sure you include the username in it, ie https://firstname.lastname@example.org/path/to/repo - the username is mandatory when looking up keychain items and although SourceTree tries to compensate for that by remembering a default from your first use of the domain, if there are other uses of the domain that doesn't always work. Specifying the username in the URL makes it explicit and means it doesn't have to ask.
Thank you for your response, Steve. You have resolved my issue.
I do think this is less than obvious (i.e. that the Username set for an account through Hosted Repositories is not useful for authenticating for push/pull operations with a host). This is one area that it might be possible to improve the UI and behaviour.
Thanks for the great app, and the support! I originally bought SourceTree from you before it was acquired by Atlassian, and I'm glad you're still involved with it.
Yes, the standard Kiln URLs don't include the username unfortunatley; usually the 'defaulting' gets around this but depending on the domain used it's possible it can get ambiguous and SourceTree only tries one default. I could probably improve this by being smarter about picking the default username when it's not explicit, I'll give that some thought.
Thanks for being a long-time supporter of SourceTree, indeed I'm still here, trying to make it better all the time :)
I have this same problem. I have to enter my username and password for every push. I tried the trick above but the URL isn't recognized once I add my login.
I also tried deleting all kiln related items in my keychain, and then logging in again. It appears to have created a new keychain entry and still won't find my info.
Is there a way to fix this?
Hmm, I can't reproduce this with my Kiln account.
I clone from a URL like this: https://mycompany.kilnhg.com/Repo/Repositories/Group/testrepo
This gets picked up correctly because even though the URL above doesn't have a user name in it, SourceTree has remembered the username I typed the first time I manually logged in. This is stored in ~/Library/Application Support/SourceTree/hostusernamemap.
So here's what I tried:
The only thing I can think of is that the hostusernamemap is wrong somehow, maybe you can try deleting it to reset things. You'll get one more prompt out of that, but after that if the entry is in the keychain and your username is the same it should be automatic.
This is a real problem. It is _the_ thing that so far breaks SourceTree.
Why simply not build the URL for us? I.e. have a URL field, have a username field, and in the background create a full URL with username and use that? Especially given that some usernames have @ in them (e.g. Kiln usernames), in which the user has to input @ escaped (i.e. %40 instead of @), it is just too bothersome.
ATM this is just confusing, and makes the product feel sloppy. Please fix this in future versions.
Thanks for the feedback. Most of the time you don't actually need the username in there (it's on if there's ambiguity, such as when there's 2 entries for the same domain), and Kiln is the only system which uses full emails as the username and so requires the %40 escaping - every other host does not, so does not have this problem. The reason that the URL is presented simply as a single field is to allow any kind of URL to be used (there are many variations in type and structure), and for it to be a simple copy/paste in the majority of cases. Having a 'builder' would actually be slower for the majority of cases. Still, perhaps we can add it as an option in future.
If that is only a Kiln case, and you "support kiln" by default, then have a special case just for Kiln.
ATM, every time I install in a new machine, I have this problem and then I have to remember this all over, it is boring and annoying, it is the software working against me.
I'm pretty sure that when I ran it for the first time now, it even asked me for "current accounts", and Kiln was one of the options. I input all the info, and then I didn't have any repositories, like that step didn't do anything (not sure if it is because of the username mess).
Like there are little details that "annoy" like the Atlassian link on the main window (imo, if you wanted to have a link it should only be on the SourceTree app menu, which it already has btw, having it there in your face doesn't add anything), but this is something that breaks the user experience, and IMO you should fix this asap. Don't get me wrong, I have mine working fine, I'm saying that this is bad for your new user experience.
A vulnerability has been published today in regards to Sourcetree for Windows. The goal of this article is to give you a summary of information we have gathered from Atlassian Community as a st...
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