1

私の問題は、gitolite を使用してリモート リポジトリを作成するサーバーからクローンとコミットを実行する必要があることです。

www-data user で手動クローンを実行すると:

git クローン ssh://git@git-repo.fr/client_1_foo /tmp/client_1_foo

プロジェクトはクローンです。

しかし、同じコマンドが私のスクリプト (PHP) によって呼び出されると、エラー 128 (SSH エラー) が発生します。

編集:(スクリプトを実行するユーザーはwww-dataです)何か考えはありますか?

gitolite conf :

repo client_1_foo
    RW+ = @client_1_foo_ADMIN @all www-data
    RW = @client_1_foo_DEV Jenkins
    R = daemon
4

1 に答える 1

0

git ls-remote returns 128 on any repo」のように、スクリプトが ssh URL を適切に構築していない可能性があります。

git://host:repo (correct)
# instead of 
git@host/repo (incorrect)

ssh urlのSCP 構文には、通常、「 」の前の文字列をサーバー、ユーザー、ポート、および ssh キーに~/.ssh/config解決するファイルが含まれます (「有効な SSH アドレスにプッシュするときにホスト名を git で解決できないのはなぜですか?」)。:

于 2013-09-12T14:55:19.980 に答える