Como eu faço push para o GitHub https repos usando minha chave ssh?

2

Eu posso enviar para [email protected]:wting/repo.git links sem um prompt de senha, pois ele está usando meu ssh-agent. No entanto, quando eu pressiono para https://github.com/wting/repo.git , ele sempre pede nome de usuário e senha.

O problema pode ser aliviado com o uso do cache de senhas , mas prefiro não usar isso .

Isso aparece principalmente ao usar os gists porque eles mostram apenas um link https (por exemplo, https://gist.github.com/123.git ). Eu não quero modificar o URL de cada essência que eu clonei para usar a versão [email protected]:123.git .

Como faço para configurá-lo para que o git use meu ssh-agent ao enviar para um endereço https?

URL relevante: Por que o GitHub recomenda HTTPS sobre SSH?

    
por wting 19.01.2013 / 18:05

3 respostas

1

Eu recorri a escrever uma função de wrapper git:

function gc {
    if [[ ${1} =~ "github.com" ]] && [[ ${1} =~ "https" ]]; then
        git clone ${${1/https:\/\//git@}/\//:} ${@:2}
    else
        git clone ${@}
    fi
}
    
por 19.01.2013 / 19:20
0

Defina-o na sua conta do GitHub.

De acordo com o seu próprio link parece não ser suportado, eu acho que você poderia escrever uma pequena função em .bashrc para reescrever os controles remotos no estilo git.

    
por 19.01.2013 / 18:18
0
  1. insira sua chave pública em github.com
  2. use ssh -T [email protected] para identificar se a chave pública funciona
  3. no repo, git remote set-url origin [email protected]:<user>/<project>.git
  4. git push
por 02.06.2017 / 07:32

Tags