177 votes

git: convertit les URL "git" en "http"

Je suis derrière un proxy http. Je suis en train de clone Android source de l'arbre à l'aide de leurs "repo" de l'outil.

Cet outil insiste sur l'utilisation de "git:// URLs, même si "http:// Url. Cela provoque en moi de ne pas être en mesure de télécharger de la source.

Est-il possible de forcer git de toujours utiliser les Url http?

Merci.

Edit: mon http_proxy est configuré correctement. Par exemple, cela fonctionne:

git clone http://android.git.kernel.org/platform/manifest.git

Mais ce n'est pas (errno=Connection timed out):

git clone git://android.git.kernel.org/platform/manifest.git

Si cette réponse n'a pas vraiment m'aider.

361voto

Tobu Points 10101

Voici un exemple de réécriture du protocole par défaut pour GitHub:

 git config --global url.https://github.com/.insteadOf git://github.com/
 

36voto

Jakub Narębski Points 87537

Je ne sais pas comment ce repo outil utilise Git (et si vous le pouvez configurer 'repo' pour utiliser le protocole http), mais vous pouvez essayer de le tromper en utilisant url.<base>.insteadOf variable de configuration (voir git-config et git-récupère les pages de manuel).

Avez-vous essayé d'utiliser core.gitProxy pour passer à travers les pare-feu, si c'est le problme avec l'aide de protocole git?

27voto

crcastle Points 337

J'ai eu ce même problème avec récursivement arriver submodules dans un dépôt git. Je suis derrière un fou pare-feu n'autorise pas les connexions sortantes sur le git de port. Certains des submodules des submodules ont été codées comme "git://github.com/bla/bla.git". Ce qui a tué mon récursive de la population de submodules. La solution est la suivante:

git config --global url."https://<GITUSERNAME>@".insteadOf git://

Cela remplace "git://" par "https://@" dans tous les sous-module référentiel Url. Vous avez besoin de la remplacer par votre propre nom d'utilisateur git. Notez également que l' --global est nécessaire; il suffit d'ajouter cette configuration à la base du répertoire de dépôt ne fonctionne pas.

1voto

John Paulett Points 9021

Voir cette réponse précédente .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X