2

次の一連のコマンドは正しく機能しました

$ mkdir carboncake
$ cd carboncake
$ git init
$ git remote add origin gitosis@myserver.net:repositories/carboncake.git 
$ git pull

しかし、別のユーザーとしてプルしようとすると、

$ mkdir carboncake
$ cd carboncake
$ git init
$ git remote add origin mithun@myserver.net:repositories/carboncake.git 
$ git pull

次のエラーが発生しました

fatal: 'repositories/carboncake.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

私のgitosis.conf含む

[gitosis]

[group team]
writable = sweepshots
members = git_id_rsa

[group gitosis-admin]
writable = gitosis-admin
members = git_id_rsa


[repo carboncake]
description = A brand new app by Mithun.
owner = Mithun P

[group carboncake]
writable = carboncake
members = mithun @core

そしてkeydir含む git_id_rsa.pub KEY-----.pub mithun.pub mithun-rsa-key-20110427.pub

ユーザーの.sshディレクトリには次が含まれます

mithun@testserver:~$ ls .ssh/
id_rsa  id_rsa.pub  mithun_rsa  mithun_rsa.pub

- アップデート

私も試し$ git remote add origin mithun@myserver.net:carboncake.gitましたが、同じエラーです。

実際には carboncake.git は次の場所にあります/srv/gitosis/repositories/carboncake.git

4

2 に答える 2

3

@VonCの(完全に正しい)答えに少し平易な英語の明快さを追加するには...

gitosis (これはもはやアクティブな開発ではなく、gitolite を使用する必要がありますが、この回答は両方に適用されます) は、各ユーザーの公開鍵を (あなたの場合) に格納します~gitosis/.ssh/authorized_keys。ユーザーが accountに ssh するとgitosis、ssh は暗号化ハンドシェイクを実行し、指定されたキーに一致するその authorized_keys ファイル内の行を見つけ、その行が指示することをすべて実行します。そのauthorized_keysファイルを見ると、各行は、そのユーザーがログインするときに呼び出すコマンドを提供します。これは、問題のユーザーの名前を持つgitosisプロセスへの呼び出しです。

したがって、各ユーザーは本当に同じgitosis「マシン」アカウントに ssh していますが、そこで SSH を使用するキーは、ユーザーとして gitosis を起動します。これにより、Gitosis は、同じ「マシン」アカウントにログインしている場合でも、どのユーザーと話しているかを認識しますgitosis

したがって、gitosis に追跡するすべてのローカル リポジトリには、形式のリモートを指定する必要がありますgitosis@your.server:<reponame>.git

于 2011-04-27T12:22:06.410 に答える
2

mithun@myserver.net?

を使用するmithun@myserver.netと、正しい URL にはgitgitolite がインストールされている ' ' ユーザーが含まれるため、gitosis を完全に回避できます。
すべての gitosis コマンドには、同じ 'git' ユーザーが関与しますgitosis@myserver.net(ここでは 'gitosis' アカウントを想定しています)。

さらに、リポジトリのフル パスを指定する必要はありません。

 git remote add origin gitosis@myserver.net:carboncake.git
于 2011-04-27T11:42:05.327 に答える