Git 无法将SourceTree连接到AWS CodeCommit
我正在使用Atlassian的SourceTree在Mac OS上使用git,并选择AWS CodeCommit作为远程托管服务器 以下是AWS和我的本地回购之间的HTTPs连接: 下面是我的Git 无法将SourceTree连接到AWS CodeCommit,git,macos,amazon-web-services,atlassian-sourcetree,aws-codecommit,Git,Macos,Amazon Web Services,Atlassian Sourcetree,Aws Codecommit,我正在使用Atlassian的SourceTree在Mac OS上使用git,并选择AWS CodeCommit作为远程托管服务器 以下是AWS和我的本地回购之间的HTTPs连接: 下面是我的git config--global--edit的样子: 然后尝试将已创建的空repo从AWS克隆到SourceTree: 我把错误打印出来: 中止:HTTP错误403:禁止aws--配置文件默认编解码器 找不到凭据帮助程序$@get:aws:命令致命:无法 通道 '': 请求的URL返回错误:403
git config--global--edit
的样子:
然后尝试将已创建的空repo从AWS克隆到SourceTree:
我把错误打印出来:
中止:HTTP错误403:禁止aws--配置文件默认编解码器
找不到凭据帮助程序$@get:aws:命令致命:无法
通道
'':
请求的URL返回错误:403
更新
尝试了@Steffen Opel提供的答案,得到的答案更像:
我错过什么了吗?似乎差不多。“未找到命令”是问题所在。
我要说的是,aws不在路径中,当凭证帮助器尝试帮助时,它无法找到它。通过执行aws未测试的
仔细检查路径,但鉴于aws CodeCommit也有助于检查,并且未找到命令的错误,我假设您受到SourceTree知识库文章中概述的相同问题的影响:
发生错误[…],因为Git调用此帮助程序,但找不到
这意味着它已被定义,但未在路径上找到。就
对于版本1.6.3的SourceTree,这不需要担心。
有两种方法可以阻止这种情况发生
不推荐,但如果您仅使用SourceTree进行
您可以从中删除“凭据”设置的所有内容
/usr/local/git/etc/gitconfig。这是一个快速简单的方法
方法,但这确实意味着终端上的操作可能无法执行
验证
建议在
SourceTree应用程序资源中的git凭据osxkeychain和您的
本地git安装
ln-s/usr/local/git/bin/git凭证osxkeychain
/应用程序/SourceTree.app/Contents/Resources/git_local/bin/git凭证osxkeychain
当然,由于AWS CodeCommit要求凭证帮助器就位,因此只有解决方案2在概念上适用于您的场景,您需要根据CodeCommit凭证帮助器的情况调整链接源和目标。我刚刚在这里找到了这个答案()
在Amazon网站上完成AWS CLI的设置步骤后,实现此功能的最后一步是在SourceTree中编辑我的存储库的配置文件,以包括以下内容:
[credential]
helper = /usr/local/bin/aws codecommit credential-helper $@
UseHttpPath = true
它是usr/local/bin/aws
,顺便说一句,我试图用命令行工具将远程repo克隆到我的本地机器上,并手动将其添加到SourceTree中,工作正常,我成功地将文件推送到SourceTree中的aws。这是什么意思?不确定这是否有用,但我用的是2号塔。我也犯了同样的错误。我转到git配置设置,告诉Tower使用我随brew安装的git,/usr/local/bin/git(v2.6.3),它开始为我工作。谢谢。对于Windows,我必须将helper=“C:/Progra~1/Amazon/AWSCLI/aws.exe”codecommit-credential-helper$@
。希望对任何人都有帮助。@DiegoJancic您的评论帮助我解决了这个问题,谢谢。您能解决这个问题吗?