Come usare git con l’integrazione di gnome-keyring

Git 1.8.0 supporta l’integrazione con gnome-keyring.

http://www.h-online.com/open/news/item/Git-1-8-0-can-access-Windows-and-GNOME-keyrings-1733879.html

Dopo aver letto i documenti sugli helper delle credenziali git: http://git-scm.com/docs/gitcredentials.html

Non ero in grado di trovare un modo per utilizzare questa nuova funzionalità. Come posso integrarlo? Sto usando Archlinux con git installato dal repository di Archlinux. (git 1.8.0)

    @ La risposta di Marcosdsanchez è per Arch (che risponde alla domanda originale) ma io sono su Ubuntu 13.04, quindi ecco cosa dovevo fare:

    sudo apt-get install libgnome-keyring-dev cd /usr/share/doc/git/contrib/credential/gnome-keyring sudo make git config --global credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring 

    Git 1.8.0 viene fornito con il supporto per gnome-keyring ma il binario deve essere compilato per la tua piattaforma.

    Questo è quello che mi ha risolto in Archlinux:

     $ sudo pacman -S libgnome-keyring $ cd /usr/share/git/credential/gnome-keyring $ make $ git config --global credential.helper /usr/share/git/credential/gnome-keyring/git-credential-gnome-keyring 

    La soluzione @VonC era vicina, ma il comando git config dovrebbe puntare all’eseguibile. Ecco perché non stava funzionando per me.

    Aggiornamento Q4 2016:

    • Unix, Mac (Git 2.11+)

       git config --global credential.helper libsecret 

    (Vedi ” Errore durante l’utilizzo di helper di credenziali Git con gnome-keyring “)

    • Finestre:

       git config --global credential.helper manager 

    (Vedi ” Come uscire nella console di Git Bash in Windows? “: Questo è Git per Windows che utilizza l’ultimo Microsoft Git Credential Manager per Windows )


    Risposta originale (2012)

    Gli helper delle credenziali, per piattaforms Windows, Mac e Unix, sono stati introdotti per primi nel repository “git-credential-helper” , che ora è stato incluso nella distribuzione git :

    Questo repository contiene l’insieme di helper per le credenziali di Git ( gitcredentials (7)) che fanno parte di git (o che si intende contribuire in futuro).

     $ git clone git://github.com/pah/git-credential-helper.git $ BACKEND=gnome-keyring # or any other backend $ cd git-credential-helper/$BACKEND $ make $ cp git-credential-$BACKEND /path/to/git/crendential 

    quando è compilato, dovrebbe essere installato nella directory /path/to/git/credential .

    Per utilizzare questo back-end, puoi aggiungerlo alla tua configurazione Git (globale) impostando

    (qui per Unix):

     git config --global credential.helper /path/to/git/credential/gnome-keyring/git-credential-gnome-keyring 

    Nota per Windows:

    Suppongo che potresti creare un programma in esecuzione su Windows e chiamare una libreria come ” pypi keyring 0.10 .
    Ma questo è il back-end e non lo usi direttamente da Git.

    Quello che stai usando è un “assistente di credenziali” (che, a sua volta, chiamerà qualsiasi API credenziale che vuole su Windows ).

    GitHub per Windows fornisce un tale helper (come un eseguibile chiamato … github) e può memorizzare le tue credenziali per la durata della sessione di Windows.
    Avvia una shell da quella finestra di “GitHub per Windows”, e vedrai, digitando “git config –system -l”:

     C:\Users\VonC\Documents\GitHub\test [master +2 ~0 -0 !]> git config --system -l credential.helper=!github --credentials 

    La parte credential.helper=!github --credentials chiamerà l’helper di credenziali ‘ github ‘.

     $ git config [--global] credential.helper $BACKEND 

    Per chiunque su Fedora, ho modificato leggermente la risposta di James Ward:

     sudo yum install libgnome-keyring-devel cd /usr/share/doc/git/contrib/credential/gnome-keyring sudo make git config --global credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring 

    Basta aggiungere queste due linee al tuo file ~/.gitconfig :

     [credential] helper = gnome-keyring 

    La prossima volta che ti verrà richiesta una password da Git, la password inserita verrà salvata su Gnome Keyring (puoi vederlo con lo strumento seahorse ), e in seguito non ti verrà più richiesta la password.

    Questo presuppone che la tua versione di Git sia sufficientemente nuova (come 2.1.0) e tu sei sotto Linux Fedora, RHEL o CentOS. Per le versioni precedenti o altri SO / distro controlla le altre risposte.