2

gitolite が実行されているサーバーでプロジェクト ファイルが見つかりません。基本的に、CentOS 6.2 で gitolite を使用して git サーバーを構築し、新しいリポジトリを作成しました。この新しいプロジェクトにファイルを正常に複製、プル、コミット、およびプッシュできますが、このサーバーにログインすると、自分のプロジェクトを見つけようとしました。その上のファイル、私はそれらを見つけることができませんでした。リポジトリは /home/mygituser/repositories/myproject.git/ にありますが、プッシュされたファイルがそこに見つかりません。

gitolite は実際のプロジェクト コンテンツを別の場所に保持していますか、それともプロジェクト コンテンツとそのリポジトリを構成して分離する方法はありますか?

これは私を夢中にさせています。どんな助けでも大歓迎です。

4

1 に答える 1

0

Gitolite は裸のリポジトリで動作します。
裸のレポには作業ツリーがなく、つまりファイルがありません。

ちなみに、リポジトリのルート ディレクトリが で終わるの.gitはそのためです。これは、ベア リポジトリを参照するための命名規則です。

詳細については、「Git プッシュはベア リポジトリのみですか?」を参照してください。

リポジトリはデフォルトで次の場所で管理されます:

~git/repositories/myrepo1.git
~git/repositories/myrepo2.git

一般に、サーバー上にいる間はレポの内容を見る必要はありません。単にクライアント上でクローンを作成してそこで見るだけです。(クローンはデフォルトでは裸のレポにはなりません)

~git/.ssh/id_rsa(.pub)ファイルでユーザーとして宣言された適切なキーがある場合は、サーバー上で複製できgitolite.confます。これは、サーバーに gitolite をインストール/更新した後に
、テストとして行うことです。
これは、ローカルのssh 構成ファイルのために機能します。

Host gitolitesrv
Hostname localhost
User @USERNAME@
Port @PORT_SSHD@
IdentityFile @H@/.ssh/gitoliteadm

その~git/.ssh/gitolite(.pub)ため、gitolite 管理者専用の秘密鍵と公開鍵があり、必要に応じてサーバー上でローカルに使用して gitolite リポジトリを複製できます。
これは、同じキーを使用して gitolite をセットアップするためです。

 GITOLITE_HTTP_HOME= gitolite setup -pk "${H}/.ssh/gitoliteadm.pub"

同様の設定がある場合は、サーバー上の任意のレポを複製できます。

git clone gitolitesrv:gitolite-admin "${gtl}/ga"
于 2013-05-16T16:42:19.280 に答える