Estou usando o git bash e configuro a chave ssh usando o ssh-keygen e cada vez que faço algo com um repo git, solicite uma senha para /c/Users/jankiewj/.ssh/id_rsa
. Existe uma maneira de desativar essa senha.
Estou usando o git bash e configuro a chave ssh usando o ssh-keygen e cada vez que faço algo com um repo git, solicite uma senha para /c/Users/jankiewj/.ssh/id_rsa
. Existe uma maneira de desativar essa senha.
Respostas:
Você pode executar isso no git bash:
eval `ssh-agent -s`
ssh-add ~/.ssh/*_rsa
ele solicitará a frase secreta no segundo comando, e é isso. Cada ação adicional que você precisará executar (que exigia uma frase secreta) não solicitará a frase secreta (veja um exemplo na captura de tela abaixo):
.bashrc
para que, toda vez que abro o git bash, recebo o prompt e, para essa sessão, esteja tudo pronto.
~/.bashrc
então inserir as linhas do seu post nele e salvar, é isso :) thx!
.bashrc
, eu usaria um script e o colocaria no .bash_profile
ou .profile
. Aqui está um trecho da parte principal do meu .bash_profile
, ele deve resolver isso para quem ainda procura uma resposta; é semelhante a uma resposta abaixo. Na parte superior do script, carrego o meu .bashrc
, que, se não for aplicável, deixará de fora. Nota: você precisará alterar as referências para o id_rsa
que você nomeou sua chave SSH privada e talvez o caminho.
Uma solução um pouco melhor e permanente é iniciar automaticamente o ssh-agent ao abrir o git bash no Windows. Você pode copiar / colar o abaixo em seu .profile ou .bashrc. Eu prefiro colocá-lo no .profile
env=~/.ssh/agent.env
agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
agent_start () {
(umask 077; ssh-agent >| "$env")
. "$env" >| /dev/null ; }
agent_load_env
# agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2= agent not running
agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
agent_start
ssh-add
elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
ssh-add
fi
unset env
Esta solução foi retirada deste artigo de ajuda do github
.bashrc
, como sua solução é diferente? No Windows bash, cada shell é independente, portanto, o agente nunca está em execução quando você executa o shell.
.bashrc
. Solicitando a senha ssh apenas na primeira vez. Safed minha vida. Obrigado.
ssh-add -D
excluir todas as chaves.
Não tenho certeza se quero recomendá-lo, mas quando você cria a chave e pede para definir a senha, basta pressionar Enter e pular a senha.
Dê uma olhada neste link para saber como usar ssh-keygen
:
https://help.github.com/articles/working-with-ssh-key-passphrases/
Talvez ssh-agent
possa ajudá-lo de alguma forma. Mas não tenho certeza sem conhecer seu sistema atual.
mvn release:perform
fase, ele tenta fazer check-out da tag de lançamento sem fornecer a senha. Portanto, apenas limpar a senha resolveu esse problema.
Digite este comando git no seu local de repositório " ssh-keygen -p ". Isso solicitará que você insira o local do arquivo de chaves, a senha antiga e a nova senha (que pode ser deixada em branco para não ter senha). Não insira nada na nova senha e ela removerá a senha