Domanda

Non riesco a clonare il mio repository tramite http:

abort: ' http: // MYREPO ' non sembra essere un repository hg!

In primo luogo, ho creato un nuovo repository da hg init MYREPO seguito dall'aggiunta di alcuni file e commit.

Il dir con il mio repository è protetto da password ma non c'è alcun segno di problema a causa sua, ho provato entrambi i metodi di clonazione: (sul mio computer locale)

hg clone http: // MYREPO my_repo

e

hg clone http: // utente: password @ MYREPO my_repo

Le autorizzazioni per la directory repo sono: drwxrwxr-x

Posso clonare questo repository sul mio computer remoto (lo stesso repository è attivo) senza problemi.

Cosa potrebbe esserci di sbagliato?

È stato utile?

Soluzione 4

Argh ... Bisogna stare attenti con la configurazione .htaccess. Nel mio caso ho dovuto aggiungere "hgwebdir.cgi" al percorso per clonare ... Grazie comunque per le risposte!

SSH sembra logico ma in qualche modo non ho potuto usarlo con un utente diverso dal mio locale:

hg clone ssh: // MY_REMOTE_USER @ MYREPO remote: abort: non esiste un repository Mercurial qui (.hg non trovato)!

Altri suggerimenti

UPDATE:

Sembra che ti stia confondendo tra repository e hostname

Se in esecuzione " hg serve " ;, " hg clone http: // USER @ HOST: 8000 " ; dove host può essere l'IP della tua macchina o il nome host (digita " nomehost " su linux o prova " ping localhost "). Puoi cambiare la porta di default da 8000 passando un --port #### a hg serve.

Se vuoi farlo su ssh, " hg clone ssh: // USER @ HOST // PATH / TO / YOUR / REPOSITORY " ;. Supponi di aver creato un repository nella tua home directory chiamato MYREPO, quindi lo faresti: " hg clone ssh: // USER @ HOST / ~ / MYREPO "

Puoi solo clonare il tuo repository tramite http se qualcosa sta servendo quel repository su http. Mercurial fornisce un server http incorporato per te. Esegui " hg serve " all'interno del repository, quindi tentare di clonarlo da un'altra posizione (o un'altra shell dei comandi). Se desideri solo un clone locale, non devi utilizzare http (" hg clone ").

Inoltre, prova " hg help a clonare " e " hg aiuta a servire " per dettagli.

stranamente, la clonazione con ssh richiede una barra in avanti extra non intuitiva.

questo funziona per me su un host con ssh in esecuzione sulla porta 43211

hg clone ssh://example.com:43211//repos/myRepo ./myRepo

la doppia barra dopo che il numero di porta funziona, ma una singola barra si traduce in ".hg non trovato". Errore

besszero ha ragione, ma perché non clonare usando SSH se userete comunque username e password?

hg clone ssh: // machine_ip // your / repo / location your_repo

È anche più sicuro se non vuoi aprire un'altra porta per il server http di Mercurial e non hai bisogno delle funzionalità hgweb, anche il traffico è crittografato. L'unico neo è che devi accedere al checkout, ma HTTP non funziona per respingere le modifiche, almeno non nella mia esperienza.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top