Usando o SSH
A abordagem comum para lidar com a autenticação do git é delegá-lo ao SSH. Normalmente, você define sua chave pública SSH no repositório remoto ( por exemplo, no GitHub ) e, em seguida, usa que sempre que você precisar autenticar. Você pode usar um agente de chave, é claro, manipulado pelo ambiente de área de trabalho ou manualmente com ssh-agent
e ssh-add
.
Para evitar precisar especificar o nome de usuário, você também pode configurá-lo no SSH, em ~/.ssh/config
; por exemplo eu tenho
Host git.opendaylight.org
User skitt
e depois eu posso clonar usando
git clone ssh://git.opendaylight.org:29418/aaa
(observe a ausência de um nome de usuário).
Usando gitcredentials
Se a abordagem SSH não se aplica ( por exemplo você está usando um repositório acessado via HTTPS), o git tem seu próprio jeito de lidar com credenciais, usando gitcredentials
(e normalmente git-credential-store
). Você especifica seu nome de usuário usando
git config credential.${remote}.username yourusername
e o auxiliar de credencial usando
git config credential.helper store
(especifique --global
se você quiser usar esta configuração em qualquer lugar).
Então, na primeira vez que você acessar um repositório, o git pedirá sua senha e ela será armazenada (por padrão, em ~/.git-credentials
). Acessos subseqüentes ao repositório usarão a senha armazenada em vez de perguntar a você.