J'essaie d'utiliser le transfert de port SSH pour vaincre le pare-feu d'entreprise: et dans un autre terminal i exécuté p> mais je Obtenez l'erreur suivante: P> Réposity Git vide initialisé dans /USERSERS/ABOXER/TMP/GLUCOSIA/.GIT / P>
FATAL: Impossible de rechercher localhost (référencement portuaire) (NODENAME NOR SERVNAME fourni ou non connu) P>
blockQuote> merci! p> p>
4 Réponses :
Je suis sûr que votre problème (ou au moins celui qui cause cette erreur particulière) est ici: si vous regardez le Liste des notations d'URL dans l'homme Git poussez que vous verrez l'exemple correspondant: git clone ssh://[user@]host.xz/path/to/repo.git
git clone ssh://[user@]host.xz/~/path/to/repo.git
git clone ssh://[user@]host.xz/~user/path/to/repo.git
Ouais, la chose drôle est que, quand je ne suis pas derrière le pare-feu, le commandement git clone git: // git_server: référentiels / projet.git fonctionne bien, mais git clone git: //git_server/repostories/project.git ne fait pas
@Jacko: Je suppose que vous voulez dire que la suppression du côlon ici n'aide pas? Aussi, y a-t-il une raison pour laquelle vous ne pouvez pas simplement utiliser git clone ssh: //git_server/path/to/repositories/project.git code>? Le protocole de transport par défaut de GIT est SSH ...
Merci, jefromi. La récupération via SSH comme décrit dans votre édition fonctionne bien.
Legen, attendez-le ... Dary.
Le tunneling SSH est nécessaire pour passer des pare-feu, non? Exemple, si le repo de git est sur un serveur que je ne peux pas atteindre "normalement" mais, plutôt, ne peut que SSH, alors que je n'ai pas besoin de tuner pour accéder à GIT sur ce serveur? (C'est le problème que je possède actuellement.)
@Olie Le dernier paragraphe traite de cela. Vous n'avez jamais vraiment besoin d'utiliser un tunneling SSH avec GIT. Si vous pouvez passer par SSH, vous pouvez simplement accéder au représentant directement via SSH (à l'aide de la syntaxe URL que j'ai mentionnée ici), plutôt que de sauter à travers les cerceaux de tunneling un autre protocole via SSH. Et si vous ne pouvez pas traverser SSH, vous ne pouvez pas utiliser de tunneling SSH.
@Jefromi Malheureusement que ce n'est pas vrai. Si A est derrière un pare-feu, et que vous devez tuer un tunnel à travers Ssh vers A, vous ne pouvez pas giter directement dans A. Supposons que j'ai une session VNC sur A. Je ne peux pas me connecter, à moins que je n'établisse d'un tunnel à moins . Sans le tunnel, ma machine locale ne peut même pas voir A. J'essaie de résoudre ce problème exact maintenant. Il n'y a pas de serveur Web sur A, donc je ne peux pas utiliser https. Le clone git cherche implicitement le port 22 (SSH). Donc, si I Tunnel SSH -L 7000: A: 22 User @ b code>. Ensuite, je ne peux pas simplement giter
localhost:
J'ai écrit une réponse / guide complète ici: http://vladzloteanu.wordpress.com/2010/12/18/git-through-ssh-Port-forwarding-ssh-Tunneling/ . P>
La version courte de la réponse de Vlad Zloeanu:
Configurez le tunnel: p>
git clone ssh://user@localhost:2000/my_repo.git
Voici les étapes qui ont fonctionné pour moi. Mon système est derrière la compagnie pare-feu et c'est un domaine joint: p>
NPM Installez Git P>
git config --global url. https://github.com/.Insteadof GIT: // github.com / p>
Ceci est plus approprié pour Serverfault.
@Ikke: En fait, la réponse (je pense) est entièrement liée à la syntaxe de l'URL GIT et à Stackoverflow a été bien établie comme la place pour des questions sur la manière d'utiliser Git.
Je l'ai compris après. Je pensais que c'était sur la façon de configurer le pare-feu.