2013-07-17 4 views
15

Recentemente ho installato Git (utilizzando il bucket di Bit per il repository). Ho configurato tutto in base alle diverse guide che ho trovato in rete, ma ogni volta che uso il comando git push -u origin --all ottengo il seguente errore:Errore Libcurl.dll con Git push

The procedure entry point curl_multi_timeout could not be located in the dynamic link library libcurl.dll

+1

qual è il tuo sistema operativo? vorrei iniziare reinstallando git –

+0

Windows 7 @ WillemD'haeseleer – bappi48

risposta

30

Sembra come se fosse un OpenOffice conflict from their libcurl. Dalla mia comprensione, Openoffice ha messo un vecchio libcurl.dll nella directory di sistema.

tenta di rimuovere libcurl.dll da C:\Windows\sysWOW64 e/o C:\Windows\System32 (reinstallazione Git o la disinstallazione di OpenOffice non sembra risolvere il problema).

+1

Grazie! Ho rimosso libcurl.dll da C: \ Windows \ System32 e dopo che ha funzionato come un fascino! – tkahn

+0

Grazie - ha funzionato anche per me. Dovrei essere preoccupato per gli effetti collaterali su Windows Office? – Vignesh

30
  • Vai alla cartella in cui è installato Git (defalut: C:\Program Files\Git).
  • Copia il file "libcurl.dll" nella cartella di installazione Git (C:\Program Files\Git\bin\libcurl.dll).
  • Paste nel percorso in cui git.exe esiste (C:\Program Files\Git\libexec\git-core).

Questo dovrebbe risolvere il problema, poiché ora controllerà la cartella di esecuzione corrente in lib prima di tornare alla cartella dei sistemi.

+0

Superbo. Funziona anche.! – bappi48

+0

Eccellente! Nel mio ambiente aziendale ho un libcurl.dll personalizzato inserito nelle mie cartelle di Windows da alcuni software utilizzati per l'accesso ai sistemi aziendali. Inutile dire che non posso liberarmene o sostituirlo con un'altra versione. Copiare 'libcurl.dll da' git/bin' a 'git/libexec/git-core' mi permette di lavorare con git! ;) – Mchl

2

Come nota a margine per chiunque usi libcurl precompilato nei propri progetti: questo può essere causato dal fatto che si ha libcurl.dll nella directory principale della cartella che si sta tentando di inviare. Windows caricherà la libreria nella cartella del progetto prima di quella con Git.

La soluzione è semplice: rimuovere o spostare libcurl.dll nel progetto.

2

Questa è la stessa cosa con l'applicazione Windows installata nella directory appdata locale.

Per copiare il file da:

C:\Users\YOUR-WINDOWS-COUNT\AppData\Local\GitHub\PortableGit_xxxx-A-BIG-NUMBER-XXXXXXXXXXXXX\libexec\git-core\bin\libcurl.dll 

alla directory:

C:\Users\YOUR-WINDOWS-COUNT\AppData\Local\GitHub\PortableGit_xxxx-A-BIG-NUMBER-XXXXXXXXXXXXX\libexec\git-core 

sembra funzionare.

0

Seguire questi passaggi (questo ha lavorato per la mia parte win7 64):

a) Copy libcurl.dll from C:\Windows\sysWOW64\libcurl.dll 
    to some temporary location. 
b) Remove libcurl.dll from C:\Windows\sysWOW64\libcurl.dll 
c) Try cloning repository from Git Windows App. 

Enjoy! :)

0
  1. Rimuovere libcurl.dll da C: \ Windows
  2. Dopo che ha funzionato
0

stavo installando le cose per l'accesso HTTP. Stavo ricevendo un errore simile (libcurl-4.dll è mancante) sul client. La correzione si è rivelata essere che alcuni dei file di gestione nelle profondità dell'albero del repository sul server erano di proprietà di "root" anziché di "apache". La correzione ha corretto l'errore di arricciatura mancante sul client.

0

Per me (64 bit Windows7), disinstallare GIT e reinstallarlo era l'unica soluzione che funzionava.