Errori Git / Bower: codice di uscita n. 128 e connessione non riuscita


86

Sto usando Bower per installare diverse librerie. A scopo dimostrativo qui, sto installando bootstrap. Indipendentemente dal pacchetto, ricevo i seguenti errori:

C:\Scott>bower install bootstrap
bower not-cached    git://github.com/twbs/bootstrap.git#*
bower resolve       git://github.com/twbs/bootstrap.git#*
bower ECMDERR       Failed to execute "git ls-remote --tags --heads git://github
.com/twbs/bootstrap.git", exit code of #128

Additional error details:
fatal: unable to access 'https://github.com/twbs/bootstrap.git/': Failed connect
to github.com:443; No error    

Ho provato a utilizzare la seguente soluzione per rimuovere il primo errore, che ho trovato da questa ricerca :

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

Tuttavia, questo non funziona né nessuna delle altre soluzioni trovate in quella pagina. Cercando una soluzione per il 2 ° errore, sembra che l'impostazione di un nome utente / pwd per un server proxy risolverà il problema se ci si trova su una rete aziendale / dietro un firewall. Tuttavia, non sto utilizzando un server proxy poiché sono sul mio PC / rete di casa (Windows 7 x64).

Grazie!

EDIT: finestra di comando con errori:

inserisci qui la descrizione dell'immagine


Possibile duplicato dell'installazione di Bower utilizzando solo https?
— Kenorb

ha avuto un problema simile con npme https, risolto congit config --global url."git@github.com:".insteadOf "https://github.com"
— grabantot

Risposte:


123

So che questo non "risolve" il problema, ma puoi usarlo

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

per dire a git di usare HTTPS invece di GIT che ha funzionato per me per installare le dipendenze npm.


9
Sono solo io o questo non funziona davvero per nessun altro? Questo è il risultato più alto su Google per praticamente tutte le ricerche relative agli errori bower 128, e dopo aver modificato questa impostazione bower utilizza ancora il protocollo git.
— Sanguinosa

1
@Bloodyaugust, non funziona neanche per me. Usa ancoragit://
— Logan

1
Questo ha funzionato per me, anche se non sono chiaro quale fosse il problema.
— Mendhak

Ha funzionato anche per me, e non so nemmeno perché. @Bloodyaugust, @Logan, hai controllato il tuo file .gitconfig globale ( git config --global --edit)? Solo, sai, per essere sicuro. E qualche .gitconfig più specifico (per utente o per progetto git) potrebbe sovrascriverlo.
— Rafael Eyng

2
Ha funzionato per me - Immagino che la porta 22 sia chiusa sulla macchina da lavoro su cui stavo provando. Quindi niente SSH su github :( posso dire di aver eseguito il comando dalla cartella del progetto (git) ... se questo fa diff.
— demaniak

34

Invece di eseguire questo comando:

 git ls-remote --tags --heads git://github.com/twbs/bootstrap.git

dovresti eseguire questo comando:

 git ls-remote --tags --heads git@github.com:twbs/bootstrap.git

o

 git ls-remote --tags --heads https://github.com/twbs/bootstrap.git

oppure puoi eseguire git ls-remote --tags --heads git://github.com/twbs/bootstrap.gitma devi fare in modo che git usi sempre https in questo modo:

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

Riferimento: https://github.com/bower/bower/issues/50


Grazie. Ho tentato di forzare git a usare sempre https ma non sono sicuro che funzionasse - vedi l'immagine che ho allegato nel post originale. Gli errori si verificano ancora, indipendentemente dal pacchetto di installazione di bower che provo.
— azsl1326

20

Mi sono imbattuto in questo con la mia rete aziendale.

Sembrava strano perché ho sempre usato ssh per connettermi con git e non ho mai avuto problemi.

Ho provato https e non ha funzionato, quindi ho aggiunto le impostazioni del proxy alla configurazione di git e tutto è andato bene

git config --global http.proxy http://proxyuser:proxypwd@proxy.server.com:8080
git config --global https.proxy https://proxyuser:proxypwd@proxy.server.com:8080

E assicurandomi che funzionasse

git config --list

Grazie ... Questo è stato anche il mio caso. Ho dovuto configurare git per utilizzare il co. proxy ..
— Paul T.

Se questo ha funzionato per te e stai usando anche npm, probabilmente dovrai impostare l'equivalente: npm config set proxy http://<your-corporate-proxy>enpm config set https-proxy http://<your-corporate-proxy>
— aponzani

1
git config http.sslVerify "false"potrebbe essere necessario anche per alcuni proxy aziendali.
— John Fouhy

8

La porta 22 era bloccata sul mio computer. Una volta trovato ciò che lo bloccava e aperto la porta, sono stato in grado di eseguire il bower install cmd senza problemi.


Né la porta 22 né la 9418 aperte in / out per tcp / udp mi hanno sbloccato.
— kayleeFrye_onDeck

6

Sembra che azsl1326 non sia riuscito a utilizzare bower (git) sulla porta 9418 (git: //), quindi ha detto a git di utilizzare invece la porta 22 (https: //). Questo non funzionava ancora, ma l'apertura della porta 22 ha ottenuto il risultato desiderato.

La soluzione più diretta è aprire la porta 9418. Questa è la porta utilizzata dal protocollo git: //.


1
Penso che questa dovrebbe essere la risposta accettata, perché questa è chiaramente la porta git 9418 bloccata da un firewall. Almeno questo era il caso del mio server CentOS con firewall CSF.
— Christos Lytras,

Né la porta 22 né la 9418 aperte in / out per tcp / udp mi hanno sbloccato.
— kayleeFrye_onDeck

Dov'è il tuo repository remoto? Quel server ha quelle porte aperte?
— Henry

4

Vai alla cartella dell'applicazione ed esegui questo comando

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

"

Questo dovrebbe risolvere il tuo problema



3

Sei dietro un firewall?

Git non rileva la configurazione del proxy quando viene chiamato, quindi imposta le variabili di ambiente in modo esplicito, ad esempio:

export HTTP_PROXY=http://username:password@proxyserver:port/
export HTTPS_PROXY=http://username:password@proxyserver:port/

Se il tuo proxy aziendale non necessita di autenticazione, ometti semplicemente il username:password@bit negli URL.

Ha funzionato per me!


3

Se il tuo paese blocca GitHub, ad es. Cina continentale, puoi creare un proxy, ad es. Usa goagent e gae, quindi imposta l'indirizzo proxy per git, ad es

git config --global http.proxy 127.0.0.1:8087

2

Questo errore è correlato a una configurazione errata del firewall. Noterai che pergamena sta cercando di contattare git tramite il git://protocollo e non http://. Devi aprire la porta 9418. Aggiungi queste due righe nella configurazione di iptables:

iptables -t filter -A INPUT -p tcp --dport 9418 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 9418 -j ACCEPT

Questo dovrebbe fare il trucco.


1

Innanzitutto, dovresti controllare se il prompt dei comandi di Visual Studio riconosce il comando git: Strumenti> Riga di comando

C: \ .... \> git

se questo comando non viene riconosciuto, è necessario aggiungere la cartella git in Variabili d'ambiente

https://stackoverflow.com/a/26620861/3449657

Questo è quello che mi mancava e ha fatto il trucco per me.

Spero che sia d'aiuto.


0

Aggiungo la mia risposta qui poiché questa è una delle domande più vicine che corrispondevano alla mia situazione. Stavo cercando di installare select2 piuttosto che bootstrap, ma il risultato è stato lo stesso.

bower install select2ha riferito che git non è stato in grado di individuare la directory. Usato il

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

config fix, ma questo ha provocato un errore (parafrasato)

Non posso usare https

Il mio problema è stato risolto in modo insoddisfacente, poiché riguarda la magia.

Stavo tentando di eseguirlo in una shell dei comandi (cmd.exe, Windows). Ho eseguito lo stesso comando e l'ho eseguito in PowerShell e ha funzionato. ಠ_ಠ

tl; dr: la combinazione di https: // e powershell ha funzionato per me


0

Ho ricevuto questo errore dopo che il mio antivirus aveva messo in quarantena un download da github.com. Per qualche motivo sconosciuto.

Dopo aver cancellato quei file (file exe), tutto ha funzionato.


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

non funzionava per me. Quindi ho trovato questa alternativa:

Vai alla tua cartella temporanea. (cioè se stai usando Windows allora C:\Users\{username}\AppData\Roaming\bower\cache\packages). Lì puoi vedere diversi file. Apri ciascuno di essi e puoi vedere l'URL. Cambialo da git://...a https://...e salva tutti i file.

Ora esegui il file bower install.


o, bower cache cleaninvece , corri .
— nightire

0

Controlla le impostazioni di git config ( git config --global --edit). Nel mio caso c'erano un paio di voci non più valide come:

[core]
gitproxy = gitproxy.cmd
["https: //"]
["https: //"]
[url "https: //"]

Modificali e rimuovili se non ti servono più.


0

Le tue chiavi sono sbagliate. Aggiungili a GitHub / Bitbucket / qualunque cosa tu stia utilizzando. Non è altro che un problema di autorizzazione con le tue chiavi.


0

Tuttavia, non sto utilizzando un server proxy poiché sono sul mio PC / rete di casa

Ho avuto lo stesso problema (ottenere il codice di uscita 128) sulla mia rete domestica ed ero abbastanza sicuro di non utilizzare un proxy. Si è scoperto che Git aveva salvato un proxy che avevo inserito qualche tempo fa - dopo aver guardato intorno nelle configurazioni, l'ho trovato sotto il tag [http].

Sono nuovo di Git, e non sono affatto sicuro se queste configurazioni siano di solito facilmente accessibili - sto usando Tortoise Git, dal momento che non sto facendo nulla di eccezionale e che ha una GUI per le cose.

Spero che la "risposta" aiuti comunque.


0

Nel mio caso era l'accesso alla cartella in cui mi trovavo durante l'esecuzione del comando! Su Windows ho creato prima la cartella dalla riga di comando: mkdir "MyFolder" e ho avuto l'errore. ma se creo la cartella con il mouse, clic destro, creo cartella ecc. Funziona bene!


0

Se ti stai autenticando con bitbucket, dove ricevo l'errore 128 e connessione non riuscita. ma quando si utilizza l'autenticazione dell'hub git funziona bene.


0

So che questa è una vecchia domanda, comunque lasciatemi aggiungere un'altra cosa.

A volte (se sei in un ufficio o in una rete privata) il firewall del tuo server gateway blocca le richieste https (porta 443) dal terminale di comando

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

Usalo per configurare git in modo che utilizzi http su https per queste situazioni


0

Questo ha funzionato per me

Copia il file "libcurl.dll" nella cartella di installazione di Git (C: \ Programmi \ Git \ bin \ libcurl.dll). Incollalo nella posizione in cui esiste git.exe (C: \ Programmi \ Git \ libexec \ git-core).


0

Esegui questi 2 comandi per concedere l'accesso a git tramite il tuo sistema

eval `ssh-agent`
ssh-add ~/.ssh/id_rsa

Questi comandi presuppongono che tu abbia la chiave ssh sul server git remoto (bitbucket / github / altro)


0

Mi sono imbattuto anche in questo errore e l'ho risolto aggiornando git. Quando ho eseguito il comando git ls-remote non riuscito, l'errore sottostante era che veniva utilizzata una vecchia versione di tls. Quindi la versione aggiornata di git utilizza la versione successiva di tls.

https://git-scm.com/download/win


0

ho trovato questo errore sul mio sistema operativo Linux. e risolvo questo problema 1. apri curl log export GIT_CURL_VERBOSE = 1 2.clone git repo 3. trova il log 4. risolvo il problema aggiornando nss e curl (yum update nss nss-util nspr curl)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.