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

Connecting SourceTree to AWS CodeCommit: HTTP error 403

ZitingWei October 7, 2015

I'm using SourceTree to work with git on Mac OS, and choose AWS CodeCommit as the remote hosting server.

Following these steps for HTTPs connection between AWS and my local repo,

I got errors like: 

Refer to this question for more about my problem.

Thanks for any advice!

4 answers

7 votes
Erik Andersen September 20, 2016

I just found this answer here (https://geekprotem.com/2015/07/10/aws-codecommit-with-sourcetree/)

After following the setup steps for AWS CLI on Amazon's website, the final step to get this to work was editing my repository's config file in SourceTree to include the following:

[credential]
helper = /usr/local/bin/aws codecommit credential-helper $@
UseHttpPath = true
Diego Jancic December 13, 2016

Thanks. For Windows, I had to put `helper = "C:/Progra~1/Amazon/AWSCLI/aws.exe" codecommit credential-helper $@`. Hope it helps to anyone.

Like # people like this
1 vote
Kim T December 7, 2020

AWS CLI guide says to run:

git config --global credential.helper '!aws codecommit credential-helper $@'

Sourcetree doesn't have aws-cli in path, so you should instead use the exact path to aws-cli (this example is for mac):

git config --global credential.helper '/usr/local/bin/aws codecommit credential-helper $@'

 

0 votes
James Cobalt January 29, 2018

Though everything worked as expected in terminal and Github Desktop, for Sourcetree I had to create symlinks between the aws helper application (mine was in my Python directory but type "which aws" in terminal to find yours) and the git bin directory. If you are on a Mac and using the embedded git in Sourcetree, then add the aws symlink into 

/Applications/SourceTree.app/Contents/Resources/git_local/bin/

If you are using the system git, then it probably goes into

/usr/local/git/bin/
0 votes
Steffen Opel _Utoolity_
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
October 8, 2015

I have not tested this, but given AWS CodeCommit facilitates a credential helper too and the error being`command not found`, I would assume you are affected by the same issue outlined in the SourceTree Knowledge Base article Credential helpers "git: 'credential-osxkeychain' is not a git command. See 'git --help'."

The error [...] occurs because Git calls this helper and cannot find it meaning it has been defined and yet not found on the PATH. In terms of SourceTree as of version 1.6.3 this is nothing to worry about. There's two ways to stop this from happening.

  1. Not recommended, but if you're solely using SourceTree for everything you could remove the 'credential' setting from the /usr/local/git/etc/gitconfig config. This is a quick and easy method, but it does mean operations at the terminal may not be able to authenticate.
  2. Recommended, create a symlink between git-credential-osxkeychain in the SourceTree app resources and your local git install.

    ln -s /usr/local/git/bin/git-credential-osxkeychain /Applications/SourceTree.app/Contents/Resources/git_local/bin/git-credential-osxkeychain

Of course, since AWS CodeCommit requires the credential helper to be in place, only solution 2 is conceptually applicable for your scenario and you need to adjust the link source and targets as appropriate for the CodeCommit credential helper.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events