5

gitolite-adminリポジトリのクローンを作成する際に問題が発生します。私はこのhttp://sitaramc.github.com/gitolite/install.html#migrをフォローしましたが、完璧に進みました。

私は走っssh-keygen -t rsascp ~/.ssh/id_rsa.pub morten@ubuntu-server:/tmp/morten.pub

サーバー上のauthorized_keysは次のようになります。

# gitolite start
command="/home/morten/gitolite/src/gitolite-shell morten",no-port-forwarding,no-X11-forwarding,no-agent-forward$
# gitolite end

どのAFAIKは大丈夫です。

git clone morten@ubuntu-server:gitolite-adminクライアントで実行すると、

fatal: 'gitolite-admin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

何を逃したのかわかりません!

4

1 に答える 1

5

アカウントの使用mortenはまったく問題ありません。

~morten/.ssh/authorized_keysただし、現在のコンテンツを考慮すると、インストールは奇妙です。

/home/morten/gitolite/src/gitolite-shell morten|の代わりに、/home/morten/gitolite/bin/gitolite-shell morten

つまり、は次のようになり、実行後に作成されたbinディレクトリにある必要がありgitolite-shellます。$PATH

"${github}/install" -to "${gtl}/bin"

(「 Gitoliteのインストール」の「実際のインストール」セクションのオプション3を参照してください)

と:

  • githubクローンを作成したパス https://github.com/sitaramc/gitolite
  • gtlジトライトをインストールするパス(たとえば、あなたの場合/home/morten/gitolite

次に、ファイルを保存して、初期化プロセスをやり直す方が簡単authorized_keysです.gitolite.rc

gitolite setup -pk "${HOME}/.ssh/gitoliteadm.pub"

(公開鍵と秘密鍵を作成し、' gitoliteadm'という名前を付けた場合、次のようになります。

ssh-keygen -t rsa -f "${H}/.ssh/morten" -C "Gitolite Admin access (not interactive)" -q -P ""

)。

morten'ssh'アカウント名( )は意図的にgitoliteサーバーアカウント()とは異なることに注意してくださいgitoliteadm

git clone morten@ubuntu-server:gitolite-admin(すべてのsshファイルがにあるため)を使用してクローンを作成しますが~morten/.ssh、の秘密/公開キーを使用してクローンを作成しgitoliteadm、「」という名前のgitolite「アカウント」を使用してリポジトリにアクセスするようにgitoliteに促しますgitoliteadm

このようにして、gitoliteサーバーの物理ユーザーアカウントを変更した場合、「論理」アカウント' gitoliteadm'(個人やリソースではなくロールを参照)。

于 2012-05-24T13:27:54.527 に答える