Usando SSH
A abordagem comum para lidar com a autenticação git é delegá-la ao SSH. Normalmente, você define sua chave pública SSH no repositório remoto ( por exemplo, no GitHub ) e usa-a sempre que precisar se autenticar. É claro que você pode usar um agente-chave, manipulado pelo ambiente da área de trabalho ou manualmente com ssh-agent
e ssh-add
.
Para evitar a necessidade de especificar o nome de usuário, você também pode configurá-lo no SSH, no ~/.ssh/config
; por exemplo eu tenho
Host git.opendaylight.org
User skitt
e então 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 aplicar ( por exemplo, você está usando um repositório acessado por HTTPS), o git tem sua própria maneira 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ê deseja usar esta configuração em qualquer lugar).
Então, na primeira vez que você acessar um repositório, o git solicitará 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ê.
credential.${remote}
ecredential.helper
. Existe alguma documentação que você possa apontar, pois é a primeira vez que estou lendo sobre isso.