4

Mac OS で git を操作するためにアトラシアンの SourceTree を使用しており、リモート ホスティング サーバーとして AWS CodeCommit を選択しています。

AWS とローカル リポジトリ間の HTTPS 接続の次の手順に従います。

これが私のgit config --global --edit見た目です:

ここに画像の説明を入力

次に、作成した空のリポジトリを AWS から SourceTree に複製してみます。 ここに画像の説明を入力

そして、エラーが出力されます:

中止: HTTP エラー 403: 禁止された aws --profile default codecommit credential-helper $@ get: aws: コマンドが見つかりません 致命的: ' https://git-codecommit.us-east-1.amazonaws.com/v1 /repos/my-git-repo/ ': 要求された URL がエラーを返しました: 403

アップデート

@Steffen Opel が提供する回答を試してみたところ、次のようになりました。

ここに画像の説明を入力

何か見逃しましたか?

4

3 に答える 3

1

ほぼ正しいようです。「コマンドが見つかりません」が問題です。aws はパスになく、資格情報ヘルパーが助けようとしても、それを見つけることができないと言えます。実行してパスにあることを再確認しますwhich aws

于 2015-10-08T07:29:07.227 に答える
1

私はこれをテストしていませんが、AWS CodeCommit が資格情報ヘルパーも促進しエラーcommand not found. git コマンド。「git --help」を参照してください。" :

エラー [...] は、Git がこのヘルパーを呼び出して、それが定義されているにもかかわらず PATH で見つからないという意味で見つからないために発生します。バージョン 1.6.3 の SourceTree に関しては、これは心配する必要はありません。これを防ぐ方法は 2 つあります。

  1. お勧めしませんが、すべてに SourceTree のみを使用している場合は、/usr/local/git/etc/gitconfig 構成から「資格情報」設定を削除できます。これは手早く簡単な方法ですが、端末での操作が認証できない場合があります。
  2. SourceTree アプリ リソースの git-credential-osxkeychain とローカルの git インストールの間にシンボリック リンクを作成することをお勧めします。

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

もちろん、AWS CodeCommit には認証情報ヘルパーが必要であるため、ソリューション 2 のみがシナリオに概念的に適用可能であり、CodeCommit 認証情報ヘルパーに合わせてリンク ソースとターゲットを調整する必要があります。

于 2015-10-08T11:55:52.417 に答える