.git
ローカル マシンのディレクトリにセットアップしました。次に実行します:
mkdir a CDを git初期化 git デーモン
でリポジトリのクローンを作成しようとするとa
、次のエラーが発生します。
mkdir b CDB git クローン git://127.0.0.1 /b/127.0.0.1/.git/ で初期化された空の Git リポジトリ 致命的: リモート エンドが予期せず電話を切りました
git プロトコルを介してリポジトリをクローンするにはどうすればよいですか?
.git
ローカル マシンのディレクトリにセットアップしました。次に実行します:
mkdir a CDを git初期化 git デーモン
でリポジトリのクローンを作成しようとするとa
、次のエラーが発生します。
mkdir b CDB git クローン git://127.0.0.1 /b/127.0.0.1/.git/ で初期化された空の Git リポジトリ 致命的: リモート エンドが予期せず電話を切りました
git プロトコルを介してリポジトリをクローンするにはどうすればよいですか?
git-daemon
リポジトリをエクスポートする可能性があることを知らせる必要があります。
$ git init --bare /tmp/my-repo.git /tmp/my-repo.git/ で空の Git リポジトリを初期化しました $ git デーモン --verbose --base-path=/tmp --export-all /tmp/my-repo.git & $ git clone git://`ホスト名`/my-repo.git /tmp/my-repo/.git/ で空の Git リポジトリを初期化しました 警告: 空のリポジトリを複製したようです。
はるかに良い方法は、から実行することですxinetd
。/etc/xinetd.d/git
の線に沿って作成および微調整します。
# description: The git server offers access to git repositories
service git
{
disable = no
type = UNLISTED
port = 9418
socket_type = stream
wait = no
user = nobody
server = /usr/local/bin/git
server_args = daemon --inetd --export-all --base-path=/pub/scm
log_on_failure += USERID
}
を忘れないでくださいsudo killall -HUP xinetd
。これで、その下にあるすべての git リポジトリが、/pub/scm
要求した人なら誰でも利用できるようになります。
呼び出された空のファイルgit-daemon-export-ok
をリポジトリに配置するかgit daemon
、--export-all
オプションから開始する必要があります。
git-daemonのmanページからの引用:
ディレクトリにマジックファイル「git-daemon-export-ok」があることを確認し、この方法でエクスポート用に明示的にマークされていないgitディレクトリのエクスポートを拒否します(--export-allパラメータが指定されている場合を除く) )。いくつかのディレクトリパスをgitdaemon引数として渡すと、オファーをそれらで構成されるホワイトリストにさらに制限できます。