3

root@jupiter:/home/jupiter/projects# git clone ssh://git@demo.jupiter.com/diffusion/TD/transcend.git Cloning into 'transcend'...
sudo: すみません、実行するにはパスワードが必要ですsudo
致命的: リモート リポジトリから読み取れませんでした。

マニュアルに従ってSSHをセットアップしました。

また、正しいメッセージを返すコンジット ping もあります。

root@demo:~# echo {} | ssh git@demo.jupiter.com conduit conduit.ping
{"result":"demo.jupiter.com","error_code":null,"error_info":null}

以下は、参照用の私のvisudoファイルです。

Defaults        env_reset

Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"



### User privilege specification
root    ALL=(ALL:ALL) ALL
git     ALL=(ALL:ALL) ALL
git ALL=(root) SETENV: NOPASSWD: /usr/local/bin/git-upload-pack, /usr/local/bin/git-receive-pack

### Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

### Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
4

4 に答える 4

2

同じページからですが、さらに下にhttps://secure.phabricator.com/book/phabricator/article/diffusion_hosting/#troubleshooting-ssh

これらのコマンドは phabricator サーバーでテストする必要があります (環境に合わせて文書化されたものから変更しました)。

$ su git
$ sudo -E -n -u root -- /usr/local/bin/git-upload-pack 

すべてがうまくいけば、あなたは受け取るでしょう

usage: git upload-pack [--strict] [--timeout=<n>] <dir>

また、必ず設定しましたphd.userか?あなたの場合、これは「ルート」になります

Defaults requirettyvisudo ファイルで がコメントアウトされていることを確認してください。

phabricator は優れたツールであるため、うまくいくことを願っています。

于 2014-08-30T00:27:21.027 に答える
0

私はこれに出くわしましたが、sudoers ファイルを設定するときに注意を払っていなかったことが原因であることにすぐに気付きました。これを修正するには、次のコマンドを実行します。

$ which git-upload-pack
$ which git-receive-pack

出力されるパスが、sudoers ファイルにリストしたパスと同じであることを確認してください。パスワードは必要ありませんが、これらの特定の場所でバイナリを実行する場合のみです。

于 2016-03-13T06:39:10.383 に答える