web-dev-qa-db-fra.com

Sous-module Git - autorisation refusée

Je ne parviens pas à cloner le sous-module existant dans mon référentiel git privé. J'ai accès à un référentiel entier, 

J'ai utilisé les commandes ci-dessous, mais ça marche, aidez-nous. Quelle est la bonne façon de cloner les sous-modules dans un référentiel existant? 

djrecker$ git submodule update --init --recursive
Submodule 'Path' ([email protected]:Path) registered for path 'App'
Cloning into 'Path'...
Permission denied (publickey).
fatal: Could not read from remote repository.
10
Max

Je faisais face au même problème. Le problème était sur votre repo github, vous utilisez peut-être une ancienne clé ssh. 

Vous devez mettre à jour la clé ssh actuelle.

Steps involved are:

1. vim ~/.ssh/id_rsa.pub
2. copy the ssh key
3. Go to the github settings
4. Select the option ssh keys
5. Remove the old ssh keys not used anymore.
6. Add a new ssh key.
7. Try running the "git submodule update --recursive"

Cela a fonctionné pour moi !!

22
arpiagar

J'ai eu ce problème. Dans mon cas, la clé publique (~/.ssh/id_rsa) n'a pas été configurée correctement sur le serveur.

Assurez-vous que vous obtenez tous les sous-modules:

Référence: Sous-module Git update récursif

# This must be called twice. Once for new and once for existing submodules.
git submodule update --init --recursive
git submodule update --recursive

Pour diagnostiquer les problèmes d’autorisation avec votre clé:

Pour vérifier les détails de vos sous-modules

  • Ouvrez .gitmodules dans le dossier racine du projet et assurez-vous que tout se passe bien. Comme recommandé par @VonC, essayez de les cloner dans un dossier séparé.
  • Vous voudrez peut-être remplacer les sous-modules de SSH par HTTPS. Cela vous permettra de saisir un nom d'utilisateur et un mot de passe. Mais cela peut causer des problèmes avec vos coéquipiers et construire une automatisation. Parlez-leur d'abord.
8
SilentSteel
  • Sous Windows:

Dans mon cas, il s’agissait du même problème lorsque j’utilisais une ligne de commande normale (Git CMD). Ensuite, j'ai essayé avec Git Bash et pas de problème, pas plus. 

3
Cem SOYDING

Fait intéressant, dans une occasion similaire, l’utilisation du lien HTTPS a fonctionné pour moi.

2
angelkar

Dans mon cas, le problème a été causé par la console qui ne m'a pas demandé de mot de passe. La solution a été de changer la console de CMDER à Gitbash. Lorsque j'ai utilisé CMDER, la fenêtre de mot de passe qui a provoqué ce problème d'accès refusé ne s'affiche pas.

0
Čamo