Provare a caricare file da github attraverso un firewall è incredibilmente lento.Qualche suggerimento per soluzioni alternative?

StackOverflow https://stackoverflow.com/questions/88476

  •  01-07-2019
  •  | 
  •  

Domanda

Sono un po' titubante nel pubblicare questo post perché non sono del tutto sicuro di quello che sto facendo.Qualsiasi aiuto sarebbe meraviglioso.

Sono su un computer con un firewall/filtro installato.Posso scaricare file senza alcuna difficoltà.Quando provo a clonare file da Github, però, il computer si blocca.Non accade nulla.Crea un file git nella cartella, ma i file chiave non vengono caricati.Per contesto, sto lavorando su un'app Rails, provando a caricare l'autenticazione riposante.

Qualcuno di voi ha avuto a che fare con questa cosa?Qualche suggerimento per far funzionare il clone?Disabilitare il firewall potrebbe essere un'opzione, ma se potessi fare qualcosa senza passare attraverso questo processo, lo apprezzerei.

È stato utile?

Soluzione

Github supporta la clonazione utilizzando sia il protocollo git sulla porta 9418 che HTTP sulla porta 80.L'utilizzo di quest'ultimo è molto lento (Riferimento).Dovresti aprire la porta 9418 sul tuo firewall o altrimenti utilizzare la clonazione HTTP.

Altri suggerimenti

O...basta cambiare il prefisso "git://" in "http://"

Se sei protetto da firewall e desideri la velocità di git [aggiornamento:HTTP(S) è praticamente veloce quanto ssh al giorno d'oggi, ma queste informazioni sono comunque utili se SSH è l'unico modo per accedere a un repository] e si ha accesso ssh a una macchina che non è protetta da firewall, quindi si utilizza un tunnel ssh.

Per fare ciò, eseguilo in una finestra e lascialo in esecuzione:

$ ssh username@some_host_not_firewalled -L9418:github.com:9418

Quindi ovunque tu abbia usato il comando precedente:

$ git clone git://github.com/jruby/jruby.git

usa questo invece:

$ git clone git://localhost/jruby/jruby.git

Questa traduzione può essere eseguita automaticamente se modifichi la tua configurazione git (globale):

$ git config --global url.git://localhost/.insteadOf git://github.com/

IL git:// Il protocollo utilizza la porta 9418, quindi dovresti assicurarti che il tuo firewall consenta connessioni in uscita a questa porta.

Utilizzo git clone git@ssh.github.com:xxx.user/xxx.proj

git config --global url."https://".insteadOf git://

Fatto!

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