La méthode d’authentification que je préfère pour accéder à un dépôt Gitlab est l’utilisation d’une clé SSH. Les instructions ci-après ont été testées sous macOS Monterey (12.0.1).
Générer la clé SSH
Ouvrez un terminal et rendez-vous dans le dossier .ssh
cd ~/.ssh
Créez votre clé SSH
ssh-keygen -t rsa -C "votre@adresse-email.com"
Un message va vous demander le nom de fichier pour stocker votre clé SSH. Exemple, saisissez : id_rsa_gitlab_cle
Generating public/private rsa key pair. Enter file in which to save the key (/home/user/.ssh/id_rsa): id_rsa_gitlab_cle
Vous êtes ensuite invité à saisir une phrase secrète (passphrase). Vous pouvez le laisser à vide ou saisir votre meilleure phrase secrète.
Enter passphrase (empty for no passphrase): Enter same passphrase again:
Vous venez de créer votre clé SSH à destination de Gitlab, vous devriez obtenir deux fichiers. Faites :
ls -al
Vous devriez avoir ces deux fichiers :
id_rsa_gitlab_cle // clé privée id_rsa_gitlab_cle.pub // Clé publique
Configuration de SSH Agent
SSH Agent devrait déjà être actif, mais si ce n’est pas le cas :
eval $(ssh-agent -s)
Ajoutez votre clé SSH à SSH Agent.
ssh-add -K ~/.ssh/id_rsa_gitlab_cle
Ouvrez le fichier de configuration SSH
nano ~/.ssh/config
Vous devriez avoir :
Host gitlab.com AddKeysToAgent yes UseKeychain yes # IdentityFile is your ssh key file location IdentityFile ~/.ssh/id_rsa_gitlab_key
À présent, vérifiez que votre clé SSH a bien été ajoutée :
ssh-add -l
Enregistrement de la clé sur Gitlab
Allez sur Gitlab pour enregistrer votre clé publique (le contenu de id_rsa_gitlab_cle.pub) : https://gitlab.com/-/profile/keys
Une fois votre clé SSH enregistrée, retournez dans votre terminal et testez la commande suivante :
ssh -T git@gitlab.com
Si un texte de bienvenue s’affiche, c’est que tout est fonctionnel !
Source : https://dev.to/milhamh95/how-to-set-up-gitlab-ssh-key-on-macos-hf