with what deploy git github gist

what - git push with ssh key



¿Cómo clonar un Github Gist a través del protocolo SSH? (5)

Github realmente parece querer que usemos el protocolo HTTPS para usar Gists, por ejemplo, solo listan la URL HTTPS en una página Gist, por ejemplo, https://gist.github.com/donatello/5834862

¿Es posible clonar un Gist usando el protocolo SSH?



El menú desplegable en las páginas principales ahora tiene las opciones Insertar / Compartir / Clonar HTTPS / Clonar SSH:

que muestra que el truco no obvio es omitir el nombre de usuario:

  • Clon HTTPS:
    https://gist.github.com/b6f4a53fac485f75afb9150d03efb2f6.git
    Funciona para mí con o sin .git , y con o sin el nombre de usuario: https://gist.github.com/cben/b6f4a53fac485f75afb9150d03efb2f6 (como es habitual en github, la URL de navegación canónica también funciona para git)

  • Clon SSH:
    [email protected]:b6f4a53fac485f75afb9150d03efb2f6.git
    AKA
    ssh://[email protected]/b6f4a53fac485f75afb9150d03efb2f6.git
    Funciona para mí con o sin .git , pero no funciona con el nombre de usuario.

Permití github 2FA, lo que hace que HTTPS sea doloroso, así que siempre quiero SSH; el siguiente ~/.gitconfig hace la traducción de todos los gists en push:

[url "ssh://[email protected]/"] # In case I just copy-pasted with username: # [only works for my (cben) gists, but those are the ones I can push] pushInsteadOf = https://gist.github.com/cben/ # For gists cloned with official no-username URL: pushInsteadOf = https://gist.github.com/

Y para los repositorios regulares (no-gist):

[url "ssh://[email protected]/"] pushInsteadOf = https://github.com/ [url "ssh://[email protected]/"] pushInsteadOf = https://bitbucket.org/ [url "ssh://[email protected]/"] pushInsteadOf = https://gitlab.com/


Sí, es posible:

git clone [email protected]:5834862.git

Simplemente reemplaza con tu propia identificación de Gist, por supuesto.


Si lo desea, puede tomar this script y ubicarlo en algún lugar de su $PATH . Una vez hecho esto, puedes hacer lo siguiente:

  1. gist.github.com cualquier gist.github.com desde gist.github.com usando HTTPS (o si ya tienes un gist.github.com clonado, simplemente continúa con el siguiente paso)
  2. En cualquier parte del árbol de directorios git de la lista, ejecute el comando

git-change-url --to-ssh

Ahora, siempre que su clave pública esté cargada en su cuenta de github (debe aparecer here ), debería poder trabajar con la esencia a través de SSH , sin tener que ingresar sus credenciales de github.

Mucho menos propenso a errores que editar archivos de configuración de git a mano.

Ps: Si encuentra algún error en el script, o tiene alguna adición que hacer, no dude en bifurcar: D