Qual é a maneira correta de usar o git com o gnome-keyring e o http (s) repos?

23

Atualmente, sempre que eu git pull ou git push para um repositório http (s), obtenho o seguinte:

$ git pull
Username for 'https://gitrepos.reposdomain.com': me@mydomain.com
Password for 'https://me@mydomain.com@gitrepos.reposdomain.com': 

Isso é aceitável para uso pouco frequente, mas começa a se tornar muito irritante muito rapidamente. Infelizmente, a mudança para o ssh não é uma opção neste caso.

Eu li que versões anteriores de git forneciam uma "loja" e "cache" de credenciais, mas isso não era aconselhável porque armazenava a senha em texto simples.

MAS

As versões mais recentes de git aparentemente armazenam credenciais do git no gnome-keyring , mas ele precisa ser configurado corretamente.

Eu tentei seguir outras respostas (não Ubuntu) no SO para que isso funcionasse (ou seja, este ), mas eu ainda sou apresentado com o prompt de nome de usuário e senha.

Qual é a maneira correta e segura de armazenar git credenciais para http (s) repos e como fazê-las funcionar no Ubuntu?

    
por tudor 17.05.2016 / 02:12

2 respostas

11

gnome-credential-helper agora está obsoleto.

Em vez disso, use libsecret. Se ainda não estiver no seu Ubuntu, use o seguinte procedimento:

  1. Você pode instalar libsecret e as bibliotecas de desenvolvimento com:

    sudo apt-get install libsecret-1-0 libsecret-1-dev

  2. Então você precisa criar o gerenciador de credenciais

    cd /usr/share/doc/git/contrib/credential/libsecret

    sudo make

  3. Finalmente, você deve apontar git para o arquivo recém-criado em sua configuração:

    git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret

Mais detalhes no link

    
por eddygeek 26.09.2017 / 18:31
34

Você precisa configurar o git credential helper com o Gnome Keyring:

Instale e compile o desenvolvimento do Gnome Keyring:

sudo apt-get install libgnome-keyring-dev
sudo make --directory=/usr/share/doc/git/contrib/credential/gnome-keyring

E configure a credencial:

git config --global credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring
    
por user98829 23.05.2016 / 13:14