
Qué es GitHub y comandos esenciales de Git
Además de ser un gran repositorio de código, GitHub es un sistema control de versiones y seguimiento de proyectos, que por medio de sus funciones “social” se convierte en una red colaborativa para para desarrolladores. Cuenta con una interfaz web amigable, está hecho en Ruby y ha estado ganando popularidad constantemente desde su aparición el año 2010.
Es normal que si te relacionas con desarrolladores o con personas que se dediquen a algo relacionado con el desarrollo de sitios web y apps, hayas escuchado hablar acerca de GitHub. Lo más probable es que cuando presencies una conversación acerca del tema, se trate de elogios, de lo fácil que es de utilizar, y oirás cosas como: “Oye, te comparto mi repo”, “copia el código y pégalo” o “ayer lo dejé documentado”. ¡Y no es para menos! A partir de su lanzamiento, la vida de los desarrolladores ha cambiado sustancialmente, haciendo que su trabajo de coding sea más fácil, comprensible y organizado.
Antes de ir a GitHub, ¿Qué es Git?
Antes de posar nuestra mirada sobre GitHub, veamos de qué se trata Git. Git es un sistema de control de versiones de código abierto que fue creado por Linus Trovalds, el creador de Linux. Por si no sabías lo que significa un control de versiones, los desarrolladores aplican cambios en sus códigos todo el tiempo. Primero para las versiones beta, luego vienen las versiones estables o definitivas, y también luego del lanzamiento de la aplicación o sitio web que están codeando.
Los sistemas de control de versiones mantienen estas revisiones documentadas, almacenando las modificaciones usando un repositorio central. Esto permite a los desarrolladores hablar un mismo idioma y entenderse fácilmente, ya que pueden descargar una nueva versión del soft que estén programando, realizar cambios y cargar la última revisión. Cada desarrollador puede ver estos nuevos cambios, descargarlos y contribuir.
¿Qué es Github y qué lo hace tan especial?
Al inicio de esta nota, te contamos superficialmente de qué trata: GitHub es un aplicación web para control de cambios y documentación, que funciona a la vez como hosting de código y red social entre desarrolladores. ¿Qué es lo que lo hace tan especial? Bien, estas son algunas de las principales razones por las que a los dev les gusta usar GitHub:
Funciona a modo de repositorio
En la jerga es conocido como “repo”, y es una ubicación en donde se almacenan todos los archivos y códigos de un proyecto. Cada proyecto tiene un espacio dedicado y es accesible desde una dirección web. Los repositorios pueden ser públicos o privados. También permite bifurcar (o hacer “branch”) nuevos proyectos a partir de los existentes de manera de tener correlación entre ellos o añadir nuevas funciones.
El aspecto social de GitHub
Su similitud con las redes sociales es tal vez el aspecto más poderoso de GitHub. En GitHub cada desarrollador cuenta con un usuario privado que actúa como un perfil, mostrando sus trabajos anteriores, contribuciones a los proyectos en los que participó y más. Tanto en los proyectos públicos como privados, se pueden discutir diferentes aspectos de tal forma que permite aportar conocimientos y mejoras para poder avanzar mejor en el desarrollo. ¿Imaginas qué tedioso podría ser llevar un proyecto si tienes que contactarte con otros desarrolladores, por ejemplo vía correo electrónico? Pues bien, hasta no hace mucho tiempo esto sucedía.
Control de cambios
Cuando varios desarrolladores colaboran en un proyecto es difícil hacer un seguimiento de las rev o versiones, quién cambió qué, cuándo y dónde se almacenan esos archivos. Afortunadamente GitHub se ocupa de este problema haciendo un seguimiento de todos los cambios que se han guardado en el repositorio. Si algo va mal, podrás volver a la versión anterior.
Documentación de proyectos
GitHub permite documentar y dar seguimiento a todo lo que ocurre en la cocina de una aplicación. Desde agregar comentarios a los códigos, hasta proporcionar guías con procedimientos específicos para implementación, fix de problemas e información que sea considerada relevante.
No es solo para desarrolladores
Pese a que en mayoría lo utilizan los desarrolladores y la industria del software en general, GitHub permite almacenar cualquier tipo de archivo y a veces es más cómodo para compartir una aplicación o documento público o privado. Un ejemplo es una compañía que comercializa un software de gestión, y pone a disposición cada versión para que sus clientes la descarguen, incluyendo documentación visible, pasos para instalar, y demás.
Es seguro
Tus códigos privados estarán protegidos al máximo de manera que solo tú seas quien decida a quien dar acceso para poder ver o editar sin que se filtre nada accidentalmente. GitHub mantiene los más altos estándares de seguridad.
Comandos esenciales de Git
Ahora que conocemos más acerca de GitHub, si eres de los valientes, veamos cuáles son los comandos más esenciales para trabajar con él. Git trabaja a modo de repositorio local, y al finalizar cada cambio podrás guardar en el repositorio remoto de GitHub. Si te gusta más trabajar con entornos gráficos, más abajo te mostraremos tres opciones para que puedas trabajar con Git más fácil.
Git init
Este comando crea el repositorio Git en local para que puedas empezar a trabajar
git init
Git add
Utiliza git add para agregar archivos al índice del proyecto. Este comando se utiliza agregando al final el nombre del archivo con un espacio al final del comando como lo ves en el ejemplo debajo.
git add archivo.php
Git commit
Guarda los cambios realizardos utilizando git commit. Al guardar podrás especificar un mensaje para identificar el cambio que realizaste o agregar un comentario.
git commit -m "mensaje de referencia"
Git branch
Este comando se usa para listar, crear o borrar ramas. Para listar todas las ramas utiliza:
git branch
Git stash
Utiliza git stash para guardar cambios que son temporales.
git stash
Git log
Con git log podrás ver una lista de los commits realizados.
git log
Git tag
Se utiliza para etiquetar commits específicos, por ejemplo:
git tag 1.0.1 <id de commit>
Git diff
Usa git diff para ver la lista de conflictos existentes.
git diff
Git merge
Este comando se usa para fusionar un branch activo con otro.
git merge <nombre del branch>
git remote add
Agrega un repositorio remoto.
git remote add origin https://github.com/user/repo.git
Git clone
Este comando se usa con el propósito de revisar repositorios.
git clone
Git push
Envía los cambios que se han realizado.
git push origin master
Git pull
Fusionar todos los cambios que se han hecho en el repositorio local.
git pull
Git fetch
Busca todos los recursos de un repositorio remoto que actualmente no están en el directorio local.
git fetch origin
Entornos gráficos para Git
Habrás notado que trabajar Git por consola, más si estás iniciándote, puede ser engorroso. Es por eso que te propondremos estas 3 aplicaciones para simplificar tu trabajo y conectar con tus repos en GitHub.
Github Desktop
Github Dekstop es la aplicación de escritorio más elegida para trabajar online con tus repositorios online, extendiendo el flujo de trabajo más allá de la consola y el navegador web. Lo mejor de todo es que es nativa de GitHub y es compatible con PC y Mac.
Visual Studio Code
Visual Studio Code es la aplicación de Microsoft que te permitirá codear tus aplicaciones, con comandos Git integrados, listos para usar desde el editor.
Sourcetree
Sourcetree pertenece al fabricante de software Atlassian, es gratis y limpia a la vista. Definida por el desarrollador como simple para el principiante, y potente para usuarios de nivel experto.
Conclusión
Si perteneces a un equipo de desarrollo, o estás por desarrollar una aplicación en grupo, Github aliviará tus tareas de control, edición y documentación entre los miembros de tu team. Existen otras herramientas similares como GitLab o BitBucket. ¿Estás utilizando alguna de ellas? ¡Cuéntanos!
¿Sabias que todos nuestros planes de Hosting soportan Git?
Conecta tus repositorios y trabaja 100% online. ¡Con WNPower es más fácil!