5

前の管理者がヘルプ、ドキュメント、引き継ぎを提供しなかったプロジェクトを引き継ぎました...ユーザーとして自分自身を追加できるように、gitolite-adminリポジトリのクローンを作成しようとしています。

問題は、私が走ったときに

git clone gitolite@repo1:gitolite-admin.git

エラーが発生します

R access for gitolite-admin DENIED to macbook
(Or there may be no repository at the given path. Did you spell it correctly?)
fatal: The remote end hung up unexpectedly

サーバーのconf/gitolit.confファイルに

repo    gitolite-admin
    RW+     =   macbook

私のリポジトリには、とりわけgitolite-admin.gitが含まれており、正常に実行されました。

git clone gitolite@repo1:wp_of_travel

私が走るとき

ssh gitolite@repo1 info

いくつかのプロジェクトが返されましたが、gitolite-adminはそこにリストされていません。

私の状況は絶望的ですか、それともリポジトリを再構築して再度クローンを作成できるものがありませんか?

それが助けになるなら、私はサーバーを完全に制御できます...

この問題に関するヘルプやアドバイスは大歓迎です。ありがとうございました

4

1 に答える 1

4

私が走るとき

ssh gitolite@repo1 info

いくつかのプロジェクトが返されましたが、gitolite-adminはそこにリストされていません。

これは正常です。MacBookがリポジトリのそのプロジェクトに登録されていない場合gitolite.conf(自分のローカルgitolite.confではなく、現在リポジトリに保存されているプロジェクトgitolite-admin.git)、リストに表示されません。

サーバーにアクセスできる場合は、gitolite-admin.gitローカルでクローンを作成し(ファイルプロトコル、ここではsshなし)、名前を追加し(公開sshキーの後に)、プッシュバックして実行しますgitolite setup(gitolite v3を使用している場合)。ファイルを更新するためのgitolite ~/.ssh/authorized_keys


gitolite V2の場合、次のページgl-admin-push:gitolite-adminリポジトリのgitoliteをバイパスすると便利です。

リポジトリを安全な場所に複製し、それにcdします。

cd /tmp
git clone ~/repositories/gitolite-admin.git
cd gitolite-admin

そのクローンに必要な変更を加えてコミットします。新しいキーを追加したり、confファイルを変更したり、修正が必要なことは何でもできます。アクセスを失った可能性のある構成の問題を修正する最も簡単な方法である場合は、古いコミットにリセット(巻き戻し)することもできます。

完了したら、代わりにgit push <push arguments>このプログラムを使用してください。
たとえば、の代わりにgit push -f、を使用しますgl-admin-push -f

OP edwardgdコメントで確認します:

以前のシステム管理者がrootとユーザーgitoliteのインストールに失敗したようです。そのため、私は非常に混乱していました。
参考までに、adminpushどこに適用するかがわかれば、この方法は非常に簡単です。

于 2012-11-29T17:53:44.540 に答える