Esta es el arreglo más correcta que encomtrarás aportar, sin embargo estúdiala pausadamente y analiza si se adapta a tu proyecto.
Solución:
Hay dos formas de conectar SourceTree a cualquier SSH.
1: La forma más sencilla
La forma más sencilla es utilizando su nombre de dominio, nombre de usuario y contraseña proporcionados por su proveedor de alojamiento web:
Simplemente use la siguiente sintaxis: ssh://[email protected]/
– SourceTree le pedirá que ingrese su contraseña cada vez que ingrese a ese SSH:
Si revisas el Remember password
casilla de verificación, su contraseña se guardará y no se le volverá a solicitar. Puede editar o eliminar la contraseña almacenada en un momento posterior yendo a Tools > Options > Authentication
como se muestra en la imagen a continuación:
Nota: En mi caso (1&1 Shared Hosting), el nombre de usuario y la contraseña eran los mismos que los de mi cuenta FTP principal.
2: La forma más compleja
La forma más compleja es mediante el uso de un par de claves públicas/privadas:
Esto implica generar dos keys (uno “privado” y otro “público”) usando el “Generador de claves PuTTY” (en SourceTree ir a Tools > Create or Import SSH Keys
).
Una vez generado, guarde el privado key a un .ppk
y cárguelo en SourceTree (Tools > Create or Import SSH Keys > Load
). Todavía no ha terminado: ahora debes agregar al público key a su servidor. Para hacer eso, agréguelo al siguiente archivo en su servidor web: /.ssh/authorized_keys
.
Si este archivo no existe, guarde su público key a un archivo llamado authorized_keys
y súbelo a tu servidor a través de FTP. Debe cargarlo en un directorio llamado /.ssh/
ubicado en la raíz (si no existe, simplemente créelo).
Nota: asegúrese de utilizar el principal Cuenta FTP de su cuenta de hosting. Si no funciona, ajuste los permisos (chmod) del authorized_keys
archivo y configúrelo en 777
utilizando su software FTP (Right-click on "authorized_keys" > File permissions
):
No hay necesidad de línea de comando en absoluto.
Tuve que hacer un trabajo adicional a partir de la respuesta de Patoshi.
En Herramientas > Opciones > General > Configuración del cliente SSH, tuve que apuntarlo a id_rsa keyy seleccione OpenSSH como cliente SSH (Putty/PLink está seleccionado de forma predeterminada).
Luego, cada vez que inicie SourceTree, aparecerá un mensaje solicitando la frase de contraseña para descifrar el id_rsa key (suponiendo que lo haya creado con una frase de contraseña para cifrarlo). Esto se ve así:
En ese momento, podría ir a la página Clonar, pegar la dirección SSH de mi proyecto Gitlab ([email protected]:Blah/Whatever.git) y lo clonó. No hay solicitudes adicionales para el nombre de usuario o la contraseña (ya que está usando SSH keys).
Tuve algunos problemas para que SourceTree funcionara con un repositorio de git existente que residía en gitlab. También tuve que averiguar por qué no se conectaba cuando estaba usando puttygen para generar el keys.
Asegúrese de que después de generar su keys para exportarlo al formato OpenSSH
Coloque este archivo en su carpeta c:userMYUSERNAME.ssh como el archivo:
- id_rsa
- id_rsa.pub
el id_rsa es el privado key archivo y .pub es el público key archivo que pega en su otra aplicación, que en mi caso fue gitlab.
valoraciones y comentarios
Si posees algún aprieto y forma de ascender nuestro ensayo te insinuamos dejar una observación y con gusto lo observaremos.