Usando SSH
L'approccio comune per la gestione dell'autenticazione git è delegarlo a SSH. In genere si imposta la chiave pubblica SSH nel repository remoto ( ad es. Su GitHub ), quindi la si utilizza ogni volta che è necessario eseguire l'autenticazione. Ovviamente puoi usare un agente chiave, gestito dall'ambiente desktop o manualmente con ssh-agente ssh-add.
Per evitare di dover specificare il nome utente, è possibile configurarlo anche in SSH, in ~/.ssh/config; per esempio ho
Host git.opendaylight.org
User skitt
e quindi posso clonare usando
git clone ssh://git.opendaylight.org:29418/aaa
(notare l'assenza di un nome utente lì).
utilizzando gitcredentials
Se l'approccio SSH non si applica ( ad es. Stai usando un repository a cui si accede tramite HTTPS), git ha il suo modo di gestire le credenziali, usando gitcredentials(e in genere git-credential-store). È possibile specificare il nome utente utilizzando
git config credential.${remote}.username yourusername
e l'helper delle credenziali utilizzando
git config credential.helper store
(specificare --globalse si desidera utilizzare questa configurazione ovunque).
Quindi la prima volta che accedi a un repository, git chiederà la tua password e verrà memorizzata (per impostazione predefinita in ~/.git-credentials). Gli accessi successivi al repository useranno la password memorizzata invece di chiederti.
credential.${remote}ecredential.helper. C'è della documentazione che potresti segnalare in quanto questa è la prima volta che sto leggendo a riguardo.