Come faccio a risolvere un errore "Impossibile risolvere l'host: (nil) ..." durante l'installazione / l'utilizzo di Homebrew?


1

Sto cercando di installare Homebrew su OS X 10.8.4 e ottenere quanto segue:

$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
==> This script will install:
/usr/local/bin/brew
/usr/local/Library/...
/usr/local/share/man/man1/brew.1

Press ENTER to continue or any other key to abort
==> Downloading and Installing Homebrew...
error: Could not resolve host: (nil); nodename nor servname provided, or not known while accessing https://github.com/mxcl/homebrew/info/refs?service=git-upload-pack
fatal: HTTP request failed
Failed during: git fetch origin master:refs/remotes/origin/master -n

Cosa causa questo problema? Come posso aggirarlo?

Aggiornare (con le risposte alle domande in sameetandpotatoes il commento di) :

$ curl -Lsf http://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C /usr/local
bin/: Can't update time for bin
share/: Can't update time for share
share/man/: Can't update time for share/man
share/man/man1/: Can't update time for share/man/man1
tar: Error exit delayed from previous errors.

$ ruby --version
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]

$ gcc --version
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)

Non ho installato Xcode. Ma ho installato "Command Line Tools (OS X Mountain Lion) per Xcode - Aprile 2013" da https://developer.apple.com/downloads/index.action .

Aggiornamento n. 2:

$ git --version
git version 1.7.12.4 (Apple Git-37)
$ which git
/usr/bin/git

Quindi sembra che non abbia lo stesso problema di questa risposta (di cui a sameetandpotatoes secondo commento in basso).

Aggiornamento n. 3:

Ho scoperto che l'installazione di cui sopra deve avere (almeno parzialmente) installato brew, come nel mio / usr / local / bin /. In esecuzione brew portato l'aiuto Ma ho ottenuto il seguente:

$ brew update
Initialized empty Git repository in /usr/local/bin/homebrew/.git/
error: Could not resolve host: (nil); nodename nor servname provided, or not known while accessing https://github.com/mxcl/homebrew.git/info/refs?service=git-upload-pack
fatal: HTTP request failed
Error: Failure while executing: git fetch origin

Ho quindi provato a reinstallare l'installazione utilizzando le istruzioni in questa risposta :

$ pwd
/usr/local/bin
$ mkdir homebrew
$ curl -L https://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C homebrew
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   128  100   128    0     0    191      0 --:--:-- --:--:-- --:--:--   352
100  938k  100  938k    0     0   256k      0  0:00:03  0:00:03 --:--:--  334k
$ rm brew
$ ln -s homebrew/bin/brew /usr/local/bin/brew

Ma provo quasi lo stesso errore quando provo brew update:

$ brew update
Initialized empty Git repository in /usr/local/bin/homebrew/.git/
error: Could not resolve host: (nil); nodename nor servname provided, or not known while accessing https://github.com/mxcl/homebrew.git/info/refs?service=git-upload-pack
fatal: HTTP request failed
Error: Failure while executing: git fetch origin

Potrebbe essere un problema con la mia installazione o configurazione di git? (Lo uso senza problemi con altri repository remoti.) O potrebbe essere un problema (temporaneo?) Con github.com?

Aggiornamento n. 4: (in risposta a IOXenus risposta)

Non volevo tenere installato Homebrew in un posto diverso dallo standard / usr / local /, quindi ho cancellato tutte le tracce di Homebrew (incluso /usr/local/.git/).

Quindi ho eseguito quanto segue:

$ git init -q
$ git remote set-url origin git://github.com/mxcl/homebrew
fatal: No such remote 'origin'
$ git remote add origin git://github.com/mxcl/homebrew
$ git fetch origin master:refs/remotes/origin/master -n
remote: Counting objects: 124335, done.
remote: Compressing objects: 100% (61076/61076), done.
remote: Total 124335 (delta 87425), reused 96557 (delta 62265)
Receiving objects: 100% (124335/124335), 19.56 MiB | 698 KiB/s, done.
Resolving deltas: 100% (87425/87425), done.
From git://github.com/mxcl/homebrew
 * [new branch]      master     -> origin/master
$ git reset --hard origin/master
HEAD is now at 2a3fc63 tractorgen 0.31.7

E sono riuscito a correre con successo brew doctor e brew update.


fa curl -Lsf http://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C /usr/local emettere lo stesso errore? Che versione di rubino hai? Quale versione di Xcode hai e hai installato gli strumenti da riga di comando di Xcode? Puoi verificare di aver installato gcc con gcc --version?
sameetandpotatoes

1
Link correlati: stackoverflow.com/questions/12355771/... github.com/mxcl/homebrew/issues/16580 Questi problemi lo indicano git potrebbe essere obsoleto.
sameetandpotatoes

Vedere stackoverflow.com/questions/18290822/... per la mia domanda su cosa sta causando questo problema (che ora ho lavorato con successo).
Daryl Spitzer

Risposte:


2

Sembra che tu abbia problemi di connessione a github tramite https.

Mentre non sono sicuro di cosa potrebbe causarlo e come risolverlo, puoi comunque usare git con un altro protocollo.

Ecco i comandi per installare homebrew in /usr/local/ da zero usando git:// invece di https://:

cd /usr/local/
git init -q
git remote add origin git://github.com/mxcl/homebrew
git fetch origin master:refs/remotes/origin/master -n
git reset --hard origin/master

Questo dovrebbe funzionare Si noti che se si sceglie di utilizzare un'altra directory per homebrew, probabilmente sarà necessario aggiungerne la versione ./bin directory al tuo ambiente variabile PATH per un uso confortevole.


Se modifichi la risposta in modo che funzioni se brew non è già installato (usa git remote add invece di git remote set-url ) Accetterò la tua risposta e otterrai la tua ricompensa.
Daryl Spitzer

@DarylSpitzer sicuro, fatto.
Igor Hatarist

1

L'errore con git clone su http è correlato alla tua configurazione git ho avuto lo stesso problema e una volta rimosso il git config [http.proxy config] ero a casa libero ...

La configurazione, a proposito, è stata propagata dalla mia rete aziendale, quindi quando mi sono ritrovato a casa ho trovato questo problema.

ero solito

git config -l | grep proxy

poi

git config --global --unset-all http.proxy

E dopo l'installazione tutto quello che devi fare è

git config --global http.proxy $http_proxy

Questo è tutto, per favore ricorda che dovrai farlo ogni volta che non usi questo proxy ... Probabilmente avrei una funzione setproxy / noproxy nel profilo per questo ...


Funziona anche per l'homebrew e devi farlo git config --unset-all http.proxy
nottinhill
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.