Domanda Perché git-daemon non servirà il mio repository?


ho installato .git in una directory sul mio computer locale. Quindi eseguo:

mkdir a
cd a
git init
demone git

Quando tento di clonare il repository in a, Ottengo il seguente errore:

mkdir b
cd b
git clone git: //127.0.0.1
Repository Git vuoto inizializzato in /b/127.0.0.1/.git/
fatale: il telecomando si è bloccato inaspettatamente

Come posso clonare il mio repository tramite il protocollo git?


22
2018-03-29 13:03


origine


risposte:


Devi lasciarlo git-daemon sappi che può esportare il tuo repository:

$ git init --bare /tmp/my-repo.git
Repository Git vuoto inizializzato in /tmp/my-repo.git/

$ git daemon --verbose --base-path = / tmp --export-all /tmp/my-repo.git &

$ git clone git: //`hostname`/my-repo.git
Inizializzato repository Git vuoto in /tmp/my-repo/.git/
avviso: sembra che tu abbia clonato un repository vuoto.

Un modo molto migliore è quello di eseguirlo xinetd. Creare e modificare /etc/xinetd.d/git lungo le linee di

# 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
}

Non dimenticare di sudo killall -HUP xinetd. Ora, tutti i repository git sottostanti /pub/scm sarà disponibile per chiunque lo chieda.


41
2018-03-29 15:28



Devi o mettere un file vuoto chiamato git-daemon-export-ok nel repository o iniziare git daemon con il --export-all opzione.

Citazione dal demone git pagina man:

Verifica che la directory abbia il   file magico "git-daemon-export-ok" e   si rifiuterà di esportare qualsiasi git   directory che non è stata esplicitamente   contrassegnato per l'esportazione in questo modo (a meno che il   --export-all parametro è specificato). Se passi alcuni percorsi di directory come   git argomenti demone, è possibile ulteriore   limitare le offerte a una whitelist   comprendente di quelli.


12
2018-03-29 15:38