Styles

samedi 14 janvier 2017

Ne plus avoir à saisir son mot de passe git sous OpenBSD

Par défaut, git demande votre login et mot de passe à chaque fois que vous accédez à un dépôt git protégé en HTTPS. Plusieurs techniques existent pour ne pas avoir à ressaisir le mot de passe, comme par exemple l'utilisation de clés SSH à la place de HTTPS. Cette dernière que je ne détaillerai pas ici, nécessite de mettre en place un agent SSH.

Je vous propose dans cet article de configurer votre OpenBSD pour les dépôts git sous HTTPS. Que vous soyez sous XFCE ou Gnome, c'est la même méthode vu qu'elle est à base de gnome-keyring. Si vous êtes sous KDE, allez voir du côté du KDE Wallet.

Etape 1: Ajouter les paquets suivants:

pkg_add -iv gnome-keyring
pkg_add -iv libgnome-keyring
pkg_add -iv gmake

Si vous êtes sous XFCE: Sous le compte utilisateur :
- Cliquer sur le menu XFCE Applications/Settings/Session and Startup
- Dans la boîte de dialoge "Session and Startup", cliquer sur l'onglet "Advanced"
- Dans l'onglet "Advanced" cliquer sur l'option "Launch GNOME services on startup"
- Cliquer ensuite sur "Close" et fermer votre session XFCE puis rouvrez-en une.

Etape 2: Compiler git-credential-gnomekeyring

git clone https://github.com/shugo/git-credential-gnomekeyring.git
cd git-credential-gnomekeyring
gmake
mkdir ~/bin
# Normalement ~/bin est déjà dans le PATH: à vérifier.
cp git-credential-gnomekeyring ~/bin

git config --global credential.helper gnomekeyring

Maintenant Git fait appel à Gnome Keyring pour stocker les mots de passe. A la première utilisation Gnome Keyring demande un mot de passe pour protéger le Keyring. Tout cela marche très bien aussi sous Emacs avec magit ou sous n'importe qu'elle application qui utilise les commandes git.

ATTENTION
Toujours mettre le username sur l'URL utilisée lors du git clone. Par exemple: git clone https://jradix@github.com/jradix/.emacs.d Sinon, git continuera toujours de vous demander avec quel compte vous souhaitez vous connecter.

Si vous souhaitez modifier l'URL du dépôt pour ajouter le username par exemple, faire, dans un répertoire du dépôt en question : git remote set-url origin https://jradix@github.com/jradix/.emacs.d

Aucun commentaire: