‘imansible aprire l’errore git-upload-pack’ in Eclipse durante la clonazione o il push del repository git

Non sono in grado di clonare o inviare a un repository git su Bitbucket in Eclipse:

È strano, perché un giorno prima non avevo alcun problema. Ho scaricato le m 3 volte senza fortuna. Questo errore continua a mostrare. Inoltre ho installato SourceTree e dice “Questo non è un percorso / URL di origine valido”:

Se uso i comandi git per importare il progetto, funziona, ma non voglio usare EGit per questo compito, dato che sono un principiante con git.

Non so se questo ha a che fare con questo, ma nella stessa directory ho il pacchetto android-adt. Questo funziona abbastanza bene, ma il progetto gira su GitHub e non su Bitbucket. Inoltre, sto lavorando con un’altra persona ed è in grado di recuperare e inviare dati da e verso il repository di Bitbucket. Ho letto molti post ma nessuno di loro mi ha aiutato.

Sto usando Windows 7 btw.

Potrebbe anche essere un cattivo certificato SSL, correggere il server

Se si dispone di un server GIT con un certificato SSL obsoleto o autofirmato, correggere il server, in seguito tutto dovrebbe funzionare correttamente.

Hotfix non sicuro: consente al client di accettare qualsiasi certificato

La seguente soluzione è solo una semplice correzione sul lato client e dovrebbe essere evitata in quanto compromette la sicurezza delle credenziali e del contenuto. C’è una spiegazione dettagliata di questo in ” Come posso far accettare a git un certificato autofirmato? ” Che offre soluzioni più complesse e sicure che puoi provare se il seguente funziona in generale.

Nel mio caso, Eclipse utilizzava una memoria diversa per git config come fa la riga di comando e quindi non ha l’opzione

git config http.sslVerify false 

set (che ho impostato utilizzando la riga di comando per il repository per lavorare con cert SSL non valido / non affidabile ).

Aggiunta dell’opzione all’interno Eclipse risolve immediatamente il problema. Per aggiungere l’opzione

  1. apri le preferenze tramite il menu dell’applicazione Finestra => Preferenze (o su OSX Eclipse => Impostazioni ).
  2. Vai a Team => Git => Configurazione
  3. fare clic su Add entry... , quindi inserire http.sslVerify nella casella chiave e false nella casella del valore.

Sembra essere una soluzione valida per Eclipse 4.4 (Luna), 4.5.x (Mars) e 4.6.x (Neon) su diversi sistemi operativi.

Succede a causa dei seguenti motivi:

1) Firewall.

2) Problemi di rete.

3) Mancata corrispondenza delle impostazioni proxy

4) Collegato tramite router diverso, che non è autorizzato all’interno della rete.

5) Dettagli di autenticazione proxy Git

Finalmente l’ho fatto funzionare grazie ai passaggi delineati nel forum di Eclipse :

Impostare la chiave SSH

  1. Scarica e installa mysit git secondo le istruzioni di github all’indirizzo http://help.github.com/win-git-installation/
  2. In C: / Users / you / ssh nasconde tutte le chiavi esistenti (id_rsa e id_rsa.pub) in una sottodirectory. Se la directory ssh non esiste, crearla. Naturalmente, “tu” è il tuo nome utente come il sistema operativo ti conosce.
  3. Dal menu di avvio, esegui la shell dei comandi Git-Bash (una normale shell dei comandi DOS non funzionerà).
  4. Nella shell Git-Bash genera una chiave rsa basata sulla tua email (quella che hai registrato su github): ssh-keygen -t rsa -C “[email protected]” e inserisci la tua passphrase e conferma quando richiesto.
  5. Il passaggio precedente avrebbe dovuto creare C: /User/you/ssh/id_rsa.pub che ora puoi aprire in un editor di testo e copiare. Al github, vai alle impostazioni dell’account, chiavi SSH, aggiungi una chiave e incolla questo nella casella chiave.
  6. Ancora in Git-Bash (notare i back-ticks nella riga successiva): eval `ssh-agent` ssh-add C:/User/you/ssh/id_rsa ssh [email protected]

Ecco cosa hai appena fatto: hai eseguito l’agente ssh che è richiesto da ssh-add. Quindi hai usato ssh-add per prendere nota della posizione della tua chiave. Quindi hai provato a ssh su GitHub. La risposta a quest’ultimo comando dovrebbe essere che tu abbia correttamente eseguito l’autenticazione su GitHub ma che non hai accesso alla shell. Questo è solo un test di autenticazione. Se l’autenticazione non ha avuto successo, dovrai risolverlo. Prova la versione dettagliata:

ssh -v [email protected]

Supponendo che funzionasse ….

In Eclipse, configura la spinta remota

  1. Finestra > Mostra vista > Git > I repository Git aggiungeranno una finestra di explorer del repository.
  2. Nella finestra del repository, selezionare il repository ed espandere, fare clic con il pulsante destro del mouse su Remoti e selezionare Crea remoto .
  3. Copia l’URI del repository GitHub dalla pagina del repository GitHub e incollalo nella casella URI.
  4. Seleziona ssh come protocollo, ma poi torna alla casella URI e aggiungi “git +” all’inizio in modo che assomigli a questo:

    git + ssh: //[email protected]/UserName/ProjectName.git

  5. Nella casella Percorso repository , rimuovere la barra iniziale

  6. Colpisci Avanti e incrocia le dita. Se ottieni “auth fail”, riavvia Eclipse e prova di nuovo il passaggio 5.
  7. Quando si supera l’autenticazione, nella finestra di dialogo successiva selezionare “master” per ref sorgente, fare clic su “Aggiungi tutte le specifiche rami” e “Fine”.

Invece di usare SSH [email protected] l’ho fatto con SSH [email protected].

Ora posso spingere e importare senza problemi.

Una delle cause di questo è avere Fiddler2 configurato per decodificare il traffico HTTPS. Chiudi Fiddler2 e dovrebbe funzionare correttamente.

Dopo aver lottato per un paio d’ore, ho scoperto che il file git config non era aggiornato quando ho aggiunto la voce sslVerify = false nel mio Eclipse.

Ho risolto il mio problema navigando alla mia directory .git e aggiornando il file di config a:

 [http] sslVerify = false 

Questo problema può essere causato da un firewall locale che impedisce alla tua applicazione di inviare traffico di rete lontano dal tuo computer. Ie Regole del traffico in uscita o in uscita.

Prova a disabilitare il firewall per un test rapido per vedere se questo risolve il tuo problema. In tal caso, impostare i criteri firewall appropriati per l’applicazione che si sta tentando di utilizzare per inviare push o pull a un repository git.

Nel mio caso, si è scoperto che le impostazioni del proxy globale in “Preferenze-> Connessioni di rete” interferivano con git. Il che è un po ‘confuso, perché git ha una proprietà dedicata per la configurazione del proxy. Ad ogni modo, ho aggiunto l’host del repository all’elenco “Proxy bypass” e il problema era scomparso.

Ho avuto lo stesso problema quando ho avuto un nuovo laptop con Windows8 / Kaspesky installato su di esso. Ho avuto problemi con Eclipse: imansible aprire git-upload-pack. Ho anche avuto problemi con Maven. Ho anche avuto problemi con Skype.

Quando ho disabilitato Kaspersky, tutto ha iniziato a funzionare correttamente.

Ho aggiunto -Dhttps.protocols=TLSv1.1,TLSv1.2 a eclipse.ini e funziona. Io uso Java 1.7

Sto usando Eclipse Kepler SR2 su Ubuntu 12.04LTS e stavo cercando di accedere a un GitHub interno usando HTTPS. Sfortunatamente, la JVM sottostante con cui è stato avviato Eclipse ha riscontrato problemi con il certificato autofirmato del server. Passando a una JVM diversa per Eclipse, la connessione HTTPS al nostro GitHub funzionava.

Creare un semplice starter Eclipse che usi un JDK diverso, ad es. Con OpenJDK: /Eclipse_Kepler_4.4.2/eclipse -vm /usr/lib/jvm/java-6-openjdk-i386/jre/bin

Ho avuto il problema simile. Ho appena seguito i seguenti passaggi 1. Team> Remoto> Configura Fetch da upstream … 2. Fornisci https: bit bucket uri, quindi Salva e recupera. 3. Reimposta l’ultimo commit nel tuo progetto. Squadra> Ripristina> Seleziona il commit più recente dalla cartella remota 4. Quindi sincronizza lo spazio di lavoro. Team> Sincronizza (in sincronizzazione prospettiva) 5. Fare clic con il pulsante destro del mouse sul progetto e sovrascrivere la copia locale. 6. Fare clic sull’icona Pull.

Ho appena ricevuto lo stesso errore, “imansible aprire git-upload-pack”, in Eclipse con un repository BitBucket che tenta di eseguire un’operazione di pull o push. L’ho risolto passando dai rami locali (Team / Switch To) al ramo master e facendo un pull, quindi passando al ramo su cui stavo lavorando e tirando di nuovo.

Ho avuto un problema simile e una rapida soluzione al tuo problema è assicurarti di impostare l’opzione JVM nel file eclipse.ini per utilizzare jre7. I vecchi Jre hanno un vecchio file di politica locale e questo restituirà errori. Una breve nota è che devi indicare il tuo javaw non java.

-vm c: \ PROGRA ~ 2 \ Java \ jre745 \ bin \ javaw.exe -vmargs -Xms40m -Xmx512m -XX: MaxPermSize = 256m -Dsun.lang.ClassLoader.allowArraySyntax = true

Ho avuto le mie impostazioni del proxy impostate in Eclipse e non ero connesso tramite ssh, che stava causando l’errore.

Ho provato tutti questi metodi ma non ha funzionato, quindi un compagno di lavoro mi ha detto che il Generatore di chiavi di Putty era solito generare chiavi con 1024 bit, ma ora Putty genera chiavi a 2048 bit per impostazione predefinita, quindi è sufficiente cambiare il “Numero di bit” in una chiave generata “e dovrebbe funzionare.

Il problema può anche essere causato da un tempo di sistema errato (di un paio di anni), rendendo invalido il certificato di Git.

Ho appena cambiato le impostazioni di rete da Native a Manual , riavvio e l’errore è sparito.

Sto usando RAD 8.0.4.3 con e vecchia versione di EGit collegata a TFS / Git. 😉

Impostazioni di rete Eclipse

La soluzione a questo in Eclipse Mars 4.5.2: Finestra -> Preferenze -> Team -> Git -> Impostazioni del repository -> Chiave AggiungiEntry: http.sslVerify Valore: falso

Ho ricevuto questo messaggio di errore perché avevo un utente diverso da quello che il repository era previsto nella mia configurazione di git.

Ciò ovviamente innescherebbe i guasti del CERT SSL sopra menzionati.

La correzione all’utente corretto ha risolto il problema per me.

per risolvere il problema con SSL puoi anche provare a farlo.

Scarica NetworkSolutionsDVServerCA2.crt dal server di bitbucket e aggiungilo a ca-bundle.crt

ca-bundle.crt deve essere copiato dalla directory di installazione di git e copiato nella directory home

cp -r git / mingw64 / ssl / certs / ca-bundle.crt ~ /

allora fallo. questo ha funzionato per me cat NetworkSolutionsDVServerCA2.crt >> ca-bundle.crt

git config – global http.sslCAInfo ~ / ca-bundle.crt

git config – global http.sslverify true

Per coloro che hanno ancora questo problema e nessuna delle soluzioni di cui sopra ha funzionato per te:
Aggiorna le tue versioni di java ed Eclipse.
Nel mio caso, ho aggiornato da java 7 a java 9 e da Eclipse Mars a Eclipse Oxygen e questo problema è stato risolto !!!

Devo segnalare un’altra possibilità, dopo TUTTI i precedenti:

Ho ottenuto “imansible aprire git-upload-pack” durante l’operazione di eclipse GIT pull (attraverso un tunnel proxy), quindi devo provare un accesso tramite browser allo stesso URL GIT, eventualmente autenticandomi correttamente nel proxy, e solo dopo via eclipse è ansible effettuare il pull da GIT senza alcun errore. Spero utile