18 de septiembre de 2017

Instalar un repositorio Git remoto en Windows

Cómo instalar repositorios remotos de BitBucket bajo el sistema operativo Windows.
BitBucket es un popular servicio para alojar repositorios Git, que a diferencia de GitHub brinda la posibilidad de mantener a nivel privado, en las cuentas gratuitas.
En este artículo veremos cómo instalar localmente nuestros repositorios Git alojados en BitBucket, en un computador funcionando con Windows, es específico, con el sistema operativo Microsoft Windows 7.
Podemas usar practicamente el mismo procedimiento para instalar repositorio remotos sobre otras versiones más modernas de sistema operativo windows.
Los requisitos son:
  • Tener una computadora con el sistema operativo windows 7 y suficiente espacio en disco.
  • Contar con algún repositorio alojado en el servicio BitBucket.
  • Tener instalado la versión de Git para Windows con acceso a la consola GitBash.
Es importante tener en nuestra instalación de Git el acceso a la terminal GitBash, pues es desde ese lugar donde se operará.

Primeros pasos

Necesitamos instalar Git localmente, para tal efecto descargaremos Git para Windows desde: https://git-for-windows.github.io/, la instalación es muy sencilla no requiere mayor explicación.
Después de instalado Git, abrir la consola GitBash en windows, esta se encuentra en la instalación de Git.
Nos ubicarnos en un directorio donde instalaremos el repositorio remoto. Si ese directorio se encuentra en una unidad de almacenamiento distinta a la principal (‘C’), entonces desde la terminal necesitaremos ejecutar el comando para conocer las unidades disponibles en el sistema:
df
En el caso, que la unidad de almacenamiento deseada sea la ‘g’, entonces nos cambiaremos de unidad con:
cd /g
Luego nos ubicaremos en el directorio donde recuperamos el repositorio remoto, ejecutamos el comando:
cd path/to/folder/
Donde path/to/folder/ es la ruta al directorio.

Crear las llaves SSH

La conexión desde nuestro computador al servicio bitBucket, requiere algún nivel de seguridad, pues sería impensable que cualquier extraño con un computador pudiese tener acceso remoto a nuestros repositorios Git.
Por lo general, necesitaremos establecer una conexión segura con el servicio de GitBucket junto con proveer una identificación apropiada. Para tal efecto se establece la comunicación mendiante el empleo de certificados digitales.
Si no disponemos de los certificados digitales, por medio de la consola GitBash, podemos crearlos pero necesitamos ejecutarla con privilegios de administrador.
Los certificados digitales son creados por el programa openssl.exe.
El comando para crear los certificados digitales en Windows desde la consola GitBas:
ssh-keygen
Esto creará una llave pública y una privada, localizadas generalmente en el directorio /c/Users/nombre_usuario/.ssh/. De ese directorio, necesitaremos las llave pública de nombre id_rsa.pub.
Más información acerca de Cómo generar llaves SSH para Bitbucket: https://confluence.atlassian.com/bitbucket/set-up-an-ssh-key-728138079.html.

Registrar la llave pública en Bitbucket

Bitbucket permite registrar claves públicas en la cuenta del usuario, con el propósito de acceder de forma segura entre el repositorio del usuario y uno o varios computadores.
Desde nuestra cuenta (no desde el repositorio) en la página web del servicio Bitbucket, hacer click en la opción SSH Keys -> AddKey. Así ingresaremos al formulario donde se nos perdirá agregar una etiqueta o nombre de la clave, junto con el contenido de la clave. La etiqueta no forma parte de la clave pública, sino que nos ayudará a determinar a qué equipo corresponde a la clave.
Notar: Debemos agregar la clave SSH desde la cuenta de usuario, pues hay otra opción para agregar claves SSH de sólo lectura que es propio para un repositorio individual, así no confundirse.
El contendido de la clave pública, la encontramos en nuestro computador en C:/Users/nombre_usuario/.ssh/id_rsa.pub. Bastará con seleccionar y copiar todo el contenido de texto del archivo id_rsa.pub y pegarlo en el formulario de bitbucket.

Clonando un repositorio remoto

Dado que ya estamos en el directorio donde vamos instalar un repositorio remoto Git desde BitBucket, sólo nos basta ejecutar el comando:
git clone git@bitbucket.org:nombre_usuario/nombre_repositorio.git

Finalmente, para chequear que no hay problemas de conexión entre la máquina local y el servidor de Bitbucket.org, correr desde la terminal GitBash:

ssh -T git@bitbucket.org
Eso es todo!... espero que este artículo les sea de utilidad.

Otros enlaces relacionados

Instalar Git desde el paquete para descarga de Git para Windows.
Criptografía de clave pública: https://en.wikipedia.org/wiki/Public-key_cryptography.
Cómo gestionar claves SSH en windows: https://docs.microsoft.com/es-es/azure/virtual-machines/linux/ssh-from-windows.
Cómo generar llaves SSH para Bitbucket: https://confluence.atlassian.com/bitbucket/set-up-an-ssh-key-728138079.html.
Otros recursos: https://www.enmimaquinafunciona.com/pregunta/62/como-puedo-decirle-a-git-para-windows-donde-encontrar-mi-clave-privada-rsa.