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-agent
e 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 --global
se 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.