TortoiseGit salva autenticação / credenciais do usuário


286

Existe uma maneira de economizar GITHUB's user credentialscom o TortoiseGit?

Ele sempre aparece na caixa de diálogo abaixo sempre que eu pressiono / empurro.

Gostaria de salvar minhas informações de credencial do usuário em algum lugar, como fiz com o TortoiseSVN.

insira a descrição da imagem aqui



Você também pode usar o Credential Manager para salvar / gerenciar credenciais. stackoverflow.com/a/31782500/730676
user730676 11/11

Respostas:


351

Para o TortoiseGit 1.8.1.2 ou posterior, existe uma GUI para ativar / desativar o auxiliar de credenciais.

Suporta git-credential-wincrede git-credential-winstore.

TortoiseGit 1.8.16 adiciona suporte para git-credential-manager(Git Credential Manager, o sucessor de git-credential-winstore)

Na primeira vez que você sincroniza, é solicitado o usuário e a senha, insira-os e eles serão salvos no armazenamento de credenciais do Windows. Não solicitará usuário ou senha na próxima vez que você sincronizar.

Para usar: Clique com o botão direito do mouse em → TortoiseGit → Configurações → Git → Credencial. Selecione Auxiliar de credencial: wincred - somente este repositório / wincred - usuário atual do Windows

insira a descrição da imagem aqui


40
Arrumado. Agora como eu o uso?
BlueRaja # Danny Pflughoeft 16/08

16
Clique com o botão direito do mouse -> TortoiseGit -> Configurações -> Git -> Credencial. Selecione Credential helper: wincred - this repository only/wincred - current Windows user
linquize

33
Não, você deve ativar o assistente de credencial primeiro. Na primeira vez que você sincroniza, é solicitado o usuário e a senha, insira-os e eles serão salvos no armazenamento de credenciais do Windows. Não solicitará usuário ou senha na próxima vez que você sincronizar.
linquize

7
Nota: isso não funcionará se o seu nome de usuário contiver um @! Pelo menos para mim, também este é um bug relatado: github.com/msysgit/msysgit/issues/258
OschtärEi

5
Para o TortoiseGit 1.8.16 e superior, instale o Git Credential Manager para Windows - github.com/Microsoft/Git-Credential-Manager-for-Windows - e siga as instruções acima. O GCM também lida com as necessidades do git no Cygwin / babun, o que é bom.
precisa saber é o seguinte

68

Se você vai reduzir o voto desta resposta

Escrevi isso alguns meses antes da inclusão da credencial git no TortoiseGit. Dado o número de grandes falhas de segurança encontradas nos últimos anos e o quanto aprendi sobre segurança de rede, recomendo que você use uma chave SSH exclusiva (no mínimo 2048 bits RSA) para cada servidor ao qual você se conectar.

A sintaxe abaixo ainda está disponível, embora existam ferramentas muito melhores disponíveis hoje em dia, git-credentialpois a resposta aceita informa como usar. Faça isso em vez disso.


Tente alterar a URL remota para https://username@github.com/username/repo.gitonde usernameestá seu nome de usuário no github e repoé o nome do seu repositório.

Se você também quiser guardar a sua password (não recomendado), o URL ficaria assim: https://username:password@github.com/username/repo.git.

Também há outra maneira de armazenar a senha neste artigo de ajuda do github: https://help.github.com/articles/set-up-git#password-caching


Onde posso ver o URL remoto? Em Configurações -> Remoto -> URL está vazio. Mas i dada url git quando eu faço clone primeira vez
Murali Murugesan

2
Clique em "origem" no menu Remoto para abrir a URL
Robert Rouhani

Eu acho que está funcionando, mas não é possível verificar como estou recebendo 'o git não saiu corretamente (código de saída 128)' #
Murali Murugesan

opa, extraiu o URL de um exemplo antigo. Uma rápida olhada em um dos meus repositórios mostra que o URL realmente deve estar: https://username@github.com/username/repo.gitonde ambas as instâncias usernamesão seu nome de usuário. Atualizado a resposta.
Robert Rouhani

1
Isso resolveu o problema muito mais rápido e de maneira mais simples: stackoverflow.com/questions/8846972/tortoisegit-asking-password
ShloEmi

25

Nenhuma das respostas acima funcionou para mim usando o git versão 1.8.3.msysgit.0 e o TortoiseGit 1.8.4.0.

Na minha situação específica, tenho que me conectar ao repositório remoto do git por HTTPS, usando um endereço de email completo como nome de usuário. Nesta situação, wincrednão pareceu funcionar.

O uso do endereço de e-mail como parte do URL do repositório também não funcionou, pois o software parece estar confuso com a aparência dupla do caractere '@' no URL.

Consegui superar o problema usando winstore. Aqui está o que eu fiz:

Isso copiará o arquivo git-credential-winstore.exepara um diretório local e adicionará duas linhas ao seu global .gitconfig. Você pode verificar isso examinando o seu global .gitconfig. Isso é mais fácil através do botão direito do mouse em uma pasta "TortoiseGit> Configurações> Git> Editar global .gitconfig". O arquivo deve conter duas linhas como:

    [credential]
        helper = !'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
  • Nenhuma outra configuração do TortoiseGit é necessária em "Rede" ou "Credencial". Em particular: o menu suspenso "Auxiliar de credencial" em "Credencial" ficará em branco como resultado dessas linhas de configuração, pois o TortoiseGit não reconhece o novo auxiliar. Não defina o menu suspenso para outro valor ou o .gitconfig global será substituído por um valor incorreto! (*)

Agora você está pronto para ir:

  • Tente puxar do repositório remoto. Você notará um pop-up de autenticação solicitando seu nome de usuário e senha; o pop-up deve ser visualmente diferente do pop-up padrão do TortoiseGit. Este é um bom sinal e significa winstoreobras. Digite a autenticação correta e a solicitação será bem-sucedida.
  • Tente o mesmo comando novamente e seu nome de usuário e senha não deverão mais ser solicitados.

Feito! Aproveite suas interações com o repositório remoto enquanto winstorecuida da autenticação.

(*) Como alternativa, se você não gostar da seleção em branco no menu suspenso auxiliar de configurações da Credencial do TortoiseGit, poderá usar a opção "Avançado":

  • Vá para "TortoiseGit> Configurações> Credencial"
  • Selecione Auxiliar de credencial "Avançado"
  • Clique no "G" (para global) em Helpers
  • Digite o caminho do auxiliar como abaixo. Nota: uma notação de caminho regular do Windows (por exemplo, "C: \ Users ...") não funcionará aqui, você deve replicar a linha exata que a instalação winstorecriou no global .gitconfsem o bit "helper =".

    !'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
    
  • Clique no botão "Adicionar novo / Salvar"


Você me apontou na direção certa. Só era necessário usar "wincred - usuário atual do Windows" e inserir o nome de usuário, NÃO o endereço de email. Isso resolveu tudo.
razze

Estou feliz por ter ajudado você no caminho certo! No entanto, o ponto no meu caso tem a ver exatamente com o uso de um endereço de email. Este contém um "@" e causará problemas se você tentar uma das outras receitas.
Patrick Agon

2
Hum,% 40 é o código para '@'. Se você tentou ' myEmail%40gmail.com@github.com/username/repo.git ', poderá colocar seu endereço de email no .config. Ainda não é recomendado, mas, é possível.
Tom Padilla

Esta é a maneira correta e correta de fazer isso. Faça o download do instalador em Microsoft / Git-Credential-Manager-for-Windows / releases , clique com o botão direito do mouse no setup.exearquivo e execute como administrador.

8

Para o msysgit 1.8.0, baixe o git-credential-wincred.exe em https://github.com/downloads/msysgit/git/git-credential-wincred.zip e coloque em C: \ Arquivos de Programas \ Git \ libexec \ git -testemunho

Para o msysgit 1.8.1 e posterior, o exe está embutido.

no git config, adicione as seguintes configurações.

ajudante [credencial] = wincred


Onde você encontrou o Tortoise Git 1.8.1.2? Eu só vejo 1.8.1.0 em seu site
Ken Sykora

O TortoiseGit 1.8.1.2 é uma versão Preview.
linquize 12/03/2013

8

Salvando nome de usuário e senha com o TortoiseGit

Salvar seus detalhes de login no TortoiseGit é bastante fácil. Economiza a necessidade de digitar seu nome de usuário e senha toda vez que você puxa ou empurra.

  1. Crie um arquivo chamado _netrc com o seguinte conteúdo:

    máquina github.com
    login yourlogin
    senha yourpassword

  2. Copie o arquivo para C: \ Users \ (ou outro local; isso é apenas onde eu o coloquei)

  3. Vá para o prompt de comando, digite setx home C: \ Users \

Nota: se você estiver usando algo anterior ao Windows 7, o comando setx pode não funcionar para você. Use set em vez disso e adicione a variável de ambiente doméstico ao Windows usando as Configurações avançadas em Meu computador.

CRÉDITO PARA: http://www.munsplace.com/blog/2012/07/27/saving-username-and-password-with-tortoisegit/


2
Essa é a melhor solução! Mas você pode explicar a relação entre o arquivo _netrc e o git? Este arquivo pode armazenar mais de uma região?
Alex Byrth


8

Se você é um usuário do Windows 10 + TortoiseGit 2.7:

  1. para o primeiro login, basta seguir as instruções para inserir suas credenciais e salvar a senha.
  2. Se você precisar atualizar suas credenciais, não perca tempo nas configurações do TortoiseGit. Em vez disso, procure no Windows> Credential Manager> Credenciais do Windows> encontre sua entrada git> Editar.

Esta é a resposta que você está procurando, se você alterou sua senha do Windows e a autenticação Git não funciona mais ... No Windows alemão, pesquise "Anmeldeinformationsverwaltung".
20919 Andre Andre

omg obrigado. eu sei que não devemos adicionar comentários com agradecimento. mas OBRIGADO !!
Stephen Hazel

6

Tente o seguinte:

  1. Acesse sua pasta de repositório
  2. Clique com o botão direito do mouse no espaço vazio Tortise Git -> Setting
  3. Obter credenciais (geralmente localizadas na barra lateral no menu Git)
  4. No auxiliar de credenciais, selecione Wincred, todos os usuários do Windows
  5. Clique em Aplicar

ele solicitará sua senha apenas uma vez.


Por favor, use o termo "TortoiseGit".
Yue Lin Ho

0

Vá para o repo do projeto, clique com o botão direito do mouse -> 'Git Bash Here'

Nas janelas do git bash, digite

cd ~
pwd

eu recebo algo assim

/c/Users/<windows_username>

Agora copie suas chaves públicas e privadas para esse caminho

C:\Users\<windows_username>\.ssh

eu tenho os arquivos abaixo

id_rsa
id_rsa.pub
known_hosts

aqui

Agora, sempre que precisar usar as credenciais, ele usará esses arquivos e solicitará a senha, se necessário.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.