jueves, 17 de marzo de 2016

Sincronizando GitLab en GitHub Cliente


Buenas, ¿como han estado?, para hoy trataremos un poco con el control de versiones y trabajo colaborativo, y el plato fuerte es integrar GitLab con el cliente de escritorio GitHub, vamos a ello.

Ya es común escuchar la palabra “GIT”, o decir “si eres desarrollador debes tener tu código subido en GitHub, o sea!!!, si no estás out”, saben, eso me molestas, mi código de destruir el sistema no puede estar en ningun lado (siii como noo, jeje, ya quisiera), pero hay que aceptarlo, es una forma de que vean cómo trabajas, es algo asi como el portafolio de un diseñador; hoy en día está ampliamente difundido el tema de control de versiones y trabajo colaborativo, esto se hace más fácil con las herramientas que están disponibles en la web, sólo mencionaré tres que uso normalmente, no es que las use a cada rato, y que todo lo tenga en esos ambientes, es más, a mi me gusta usar mas las carpetas virtuales en la nube, para subir cualquier archivo tal como drive o onedrive, y mantener mi control de versiones mental (“ja que ingeniero, no”, si, si lo entiendo, jeje).

Como mencionaba, las tres plataformas de trabajo colaborativo de software, que mas o menos he usado son GitHub, GitLab y visual studio online, estas plataformas fucionan como SaaS, las tres son gratuitas hasta el momento y ofrecen muchos servicios sobre el tema de trabajo colaborativo de sofware y control de versiones, una que me ha llamado mucho la atención es visual studio online se puede seleccionar entre control de versión Git o team foundation version control que es de microsof, la interfaz de usuario me ha gustado mucho, pero se limita al numero de usuarios que pueden participar en el proyecto, cosa que no pasa con GitHub y GibLab entre estos dos me agrada mas GitLab ya que se puede crear tanto proyectos privados como publicos en la version gratuita, en GitHub en la version gratuita no se pueden crear proyectos privados.

Después de esa pequeña presentación (he tratado de no extenderme como suelo hacer siempre), vamos al tema en concreto del que vamos a hablar, el cual es sincronizar un proyecto en GitLab desde el cliente que nos ofrece en la página de GitHub (GitHub Desktop), que para mi esta genial como aplicación de escritorio para sincronizar todo nuestro trabajo con el servidor de GitHub, y lo crean o no funciona tambien para GitLab, anteriormente escribí un post sobre GitHub una introduccion basica aqui dejo el link por si lo quieren ver (Guía GitHub).

Para comenzar, usa tu cuenta de GitHub o crea una aqui, despues de eso descarga el cliente aqui, la instalas y la configuras con tu cuenta de GitHub.

Seguido, entra a GitLab, y usas tu cuenta o crea una cuenta. Seguido a esto creamos un nuevo proyecto.


Algo así



Ahora va el truco, al instalar el cliente de GitHub, se crea un archivo con un ssh key para usar con la cuenta de GitHub, creo yo, que funciona con lo de llave pública y privada, para establecer conexión, lo que vamos a realizar es copiar esa clave para configurarla en el proyecto creado en GitLab.


Por defecto y en mi caso, dicho archivo se encuentra en la siguiente C:\\Usuarios\[usuario]\.ssh\github_rsa.pub, [usuario] es la carpeta usuario con la que inicias tu sistema en windows, abrimos el archivo con un editor de texto, copiamos todo el contenido.

Ahora regresamos a GitLab, vamos Go to dashboard 




Luego Profile Settings, ups, pero tachan, me salio esto.




Bueno, esperamos mientras actualizan (esto no hace parte de la guia) ……

Ahora si a Profile Settings.





Siguiente en SSH Keys


Luego agregamos la clave que se copió del archivo de GitHub y le damos clic a Add key.


Después de agregar el SSH Key, vamos dashboard




Seleccionamos el proyecto, hay una sección para seleccionar la ruta de acceso, debemos seleccionar la de https.


Quedaria asi


Abrimos el clientes de GitHub


Ahora lo que hacemos es, arrastrar la url que se creó, al cliente GitHub, si todo sale bien debería aparecer la siguiente pantalla

Junto con un cuadro de diálogo para seleccionar el directorio donde deseas alojar el proyecto. Si por algún motivo llega a salir error, se repite la operación, y listo ya esta sincronizado nuestro proyecto en GitLab con el GitHub cliente.


Como prueba voy a crear un archivo de texto dentro de la carpeta nombrado archivoPrueba.txt, y digito en el archivo “prueba”.
 



Si miramos en el cliente de GitHub veremos lo siguiente




Al proteger el cambio, o bueno en términos git hacemos commit y luego publicamos.




Al seleccionar el botón Publish, nos pide usuario y contraseña de la cuenta GitLab, realizamos este procedimiento para que quede el cambio en el servidor, listo, si ocurre algún error, algo que funciona es cerrar el cliente y abrir de nuevo, ahora miremos en el servidor.





Bueno eso todo por el momento


Solo decir y dejarlo al publico que ya voy fallando en uno de los propósitos de este año, el cual es, mmmm, bueno era, escribir un post por mes, y es que en febrero no cree el post, en este mes escribire dos para compensar el de febrero.

no siendo mas, me despido y...
happy coding :)




@drincastX