gitデーモンを初めてインストールします。私はそれを実行しています:
[todd@hqdevgit01 test.git]$ ps -ef | grep git
501 3204 1 0 10:14 ? 00:00:00 git-daemon --reuseaddr --user=gitdaemon --group=blah-dev --detach --base-path=/var/blah/git-repo/
私はgitdaemonユーザーを次のように設定しています:
[todd@hqdevgit01 test.git]$ grep gitdaemon /etc/group
blah-dev:x:502:todd,gitdaemon
gitdaemon:x:503:
リポジトリは次のように設定されます。
[todd@hqdevgit01 test.git]$ ll /var/blah/git-repo/test.git
total 32
drwxrwsr-x. 2 root blah-dev 4096 May 1 10:11 branches
-rw-rw-r--. 1 root blah-dev 92 May 1 10:11 config
-rw-rw-r--. 1 root blah-dev 73 May 1 10:11 description
-rw-rw-r--. 1 root blah-dev 23 May 1 10:11 HEAD
drwxrwsr-x. 2 root blah-dev 4096 May 1 10:11 hooks
drwxrwsr-x. 2 root blah-dev 4096 May 1 10:11 info
drwxrwsr-x. 4 root blah-dev 4096 May 1 10:11 objects
drwxrwsr-x. 4 root blah-dev 4096 May 1 10:11 refs
クライアント上で
me@me:~/projects/test$ git remote add test todd@hqdevgit01:/test.git
me@me:~/projects/test$ git pull test
todd@hqdevgit01's password:
fatal: '/test.git' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ここで何が欠けているのか完全にはわかりません。ディレクトリを結び付け、リポジトリを「ルート」パスに表示するために必要なのは、gitデーモンコマンドのベースパスだけだと思います。
としても開始しようとしました
git daemon --reuseaddr --user=gitdaemon --group=blah-dev --detach --base-path=/var/blah/git-repo/ /var/blah/git-repo/
サイコロなし
「git-daemon-export-ok」を追加
[todd@hqdevgit01 test.git]$ ll
total 32
drwxrwsr-x. 2 root blah-dev 4096 May 1 10:11 branches
-rw-rw-r--. 1 root blah-dev 92 May 1 10:11 config
-rw-rw-r--. 1 root blah-dev 73 May 1 10:11 description
-rw-rw-r--. 1 todd blah-dev 0 May 1 10:36 git-daemon-export-ok
-rw-rw-r--. 1 root blah-dev 23 May 1 10:11 HEAD
drwxrwsr-x. 2 root blah-dev 4096 May 1 10:11 hooks
drwxrwsr-x. 2 root blah-dev 4096 May 1 10:11 info
drwxrwsr-x. 4 root blah-dev 4096 May 1 10:11 objects
drwxrwsr-x. 4 root blah
まだ動作していません (同じエラー)
これは多面的なエラーですが、レポをパスアウトする必要がありました。
git remote add test todd@hqdevgit01:/var/blah/git-repo/test.git
また、FOLKOL によって言及されているように (私のスタートアップ スクリプトから):
USER=gitdaemon
GROUP=blah-dev
BASE_PATH=/var/blah/git-repo/
ARGS="--user=$USER --group=$GROUP --detach --reuseaddr --base-path=$BASE_PATH $BASE_PATH"
git daemon $ARGS