git push / pull continua tentando produzir a janela GUI

0

Toda vez que tento fazer o git push ou pull em um de nosso servidor de trabalho recebo um aviso "Erro: Não é possível abrir a exibição:", a menos que eu faça login com o encaminhamento -X, nesse caso, alguns 90s aparece para eu digitar minha senha.

Existe alguma configuração para suprimir esse comportamento? Estou completamente perplexo e não consigo encontrar nada no Google ...

Editar: A janela que aparece quando o encaminhamento X está ativado é mostrada abaixo:

    
por Edward Grefenstette 23.05.2014 / 21:09

2 respostas

3

Você pode definir o comando askpass desejado usando git config . A chave de configuração relevante é chamada core.askpass .

Para alterá-lo: git config --global core.askpass /path/to/command

O valor definido na sua configuração do Git pode ser substituído usando a variável de ambiente GIT_ASKPASS .

Se core.askpass não estiver definido, primeiro tenta o comando definido na variável de ambiente SSH_ASKPASS . O próximo (e último) na ordem de fallback é um simples prompt de senha embutido.

Fonte e detalhes: Documentação do git-config (procure por core.askpass )

    
por 24.05.2014 / 14:57
2

Isso soa como se você estivesse usando o programa pinentry para inserir sua senha de login git, da qual existem várias variantes. No seu caso, o padrão selecionado parece ser o pinentry-gtk2, que é de fato feio pra caramba. :)

Tente a sua sorte com

ls -l /usr/bin/pinentry*

para ver quais variantes estão instaladas. Provavelmente haverá um dos binários com links simbólicos, que é o "padrão". Você pode escolher outro programa de pinentry reconectando o link simbólico, embora isso possa confundir seu gerenciador de pacotes. Apenas para ver se esse é o problema real, exclua o link simbólico / usr / bin / pinentry ou revincule-o para pinentry-curses para ver se o comportamento muda.

Engraçado é que eu não me lembro de usar o programa de pinentry, mas o gnupg faz. Talvez você tenha alguma configuração envolvendo gpg-agent, chaves SSH e efetivamente GnuPG pedindo uma frase-senha via pinentry?

Se você não tiver privilégios para mexer diretamente com o link simbólico, tente editar a configuração do agente gpg:

mkdir -p ~/.gnupg   # may fail if dir already exists
echo 'pinentry-program /usr/bin/pinentry-curses' >> ~/.gnupg/gpg-agent.conf

Isso deve instruir o gpg-agent a usar o programa pinentry-curses baseado em cli. É um tiro longo, mas vale a pena tentar.

    
por 23.05.2014 / 21:17

Tags