3

コード レビュー用に Gerrit インスタンスをセットアップしようとしており、in で 'repo' を使用する予定です。Gerritに直接repo uploadプッシュできますが、公開キー エラーで失敗します。

user@machine:~/workspace/git/gerrit-test$ repo upload
Upload project path/gerrit_test/ to remote branch master:
branch master ( 1 commit, Fri Aug 3 15:23:50 2012 -0700):
     8ef17a1b this better effin work
to gerrit.test.com:8081 (y/N)? y
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

----------------------------------------------------------------------
[FAILED] path/gerrit_test/ master          (Upload failed)

問題をこのレポに使用されているユーザー名に絞り込みましたが、このユーザー名をどこに設定すればよいかわかりません (どのユーザー名が使用されているかを確認する方法もわかりません)。.repo/manifests.git/configに以下を追加しようとしましたが、それでも失敗します。

[review "gerrit.test.com:8081"]
        username = <my_username_from_gerrit_profile_page>

正しいユーザー名はどこに追加すればよいですか?

ありがとう。

4

3 に答える 3

8

構成ファイルにユーザー名があることを確認してください。

$ git config --global review.<"URL">.username $USER
于 2013-06-18T14:23:05.107 に答える
2

デフォルトでは、gerrit ssh サーバーはポート 29418 で起動します。ポート 8081 に接続しているように見えますが、これは Web サーバーのポート番号であると思われます。

確認のために、「etc/gerrit.config」ファイルの次のセクションを確認してください。

[sshd]
    listenAddress = *:29418
[httpd]
    listenUrl = http://*:8081/

次のコマンドを実行して、秘密鍵の資格情報をさらに確認できます。

$ ssh -p 29418 your_user_id@localhost

  ****    Welcome to Gerrit Code Review    ****

  Hi mark, you have successfully connected over SSH.

  Unfortunately, interactive shells are disabled.
  To clone a hosted Git repository, use:

  git clone ssh://your_user_id@your_machine:29418/REPOSITORY_NAME.git

Connection to localhost closed.

「Gerrit に直接プッシュ」できる理由は、ssh ポート番号がリポジトリ URL の一部であるためだと思います。

于 2012-08-05T16:41:07.893 に答える