GitHub es una plataforma de alojamiento, propiedad de Microsoft, que ofrece a los desarrolladores la posibilidad de crear repositorios de código y guardarlos en la nube de forma segura, usando un sistema de control de versiones llamado Git.
Facilita la organización de proyectos y permite la colaboración de varios desarrolladores en tiempo real. Es decir, nos permite centralizar el contenido del repositorio para poder colaborar con los otros miembros de nuestra organización.
GitHub esta basada en el sistema de control de versiones distribuida de Git, por lo que se puede contar con sus funciones y herramientas, aunque GitHub ofrece varias opciones adicionales y su interfaz es mucho más fácil de manejar, por lo que no es absolutamente necesario que las personas que lo usan tengan un gran conocimiento técnico. Aquí puedes conocer más sobre su historia.
Si tú ya has utilizado este servicio de alojamiento para tus proyectos, cuéntame en los comentarios qué tal te ha funcionado y cuáles son tus mejores tips. Si aún no lo conoces o te gustaría aprovecharlo mejor, recuerda que en Platzi tenemos un curso de GitHub ideal para ti y que puedes empezar sin costo.
Existe un gran número de razones que convierten a GitHub en una gran opción para el control y gestión de tus proyectos de código. Aquí algunas de ellas:
GitHub te permite subir tus repositorios de código para que sean almacenados en la nube a través del sistema de control de versiones de Git y participar también en el desarrollo de proyectos de terceros, lo que significa que cualquiera en el mundo que use GitHub puede encontrar tu código, aprender de él y, por qué no, mejorarlo. Al igual que tú puedes acceder a los repositorios de código de otras personas.
Se le llama control de versiones a la administración de los cambios que se realizan sobre los elementos o la configuración de algún proyecto. En otras palabras, el control de versiones sirve para conocer y autorizar los cambios que realicen los colaboradores en tu proyecto, guardando información de qué incluyen los cambios y cuándo se hicieron. Este control comienza con una versión básica del documento y luego va guardando los cambios que se realicen a lo largo del proyecto.
El control de versiones es una herramienta valiosísima, pues con ella puedes tener acceso a las versiones anteriores de tu proyecto si es que en algún momento no llega a funcionar de forma correcta.
Es el sistema de control de versiones más moderno y popular del mundo. Fue creado por Linus Torvalds para garantizar la eficiencia y confiabilidad del mantenimiento íntegro de versiones de un proyecto, aun cuando este tenga un gran número de archivos o ramas en su código fuente.
Git proporciona herramientas que facilitan el desarrollo del código entre un equipo de desarrolladores de manera rápida e inteligente. Además, podrás comparar los cambios realizados a lo largo del tiempo, ver quién modificó algo en el código del software y conocer en qué momento se introdujo un cambio que generó un error en tu proyecto, facilitando la opción de revertirlo.
Debes tener en cuenta que Git es un sistema que permite establecer un control de versiones, mientras que GitHub es una plataforma que ofrece un grupo de funciones que facilitan el uso de Git y la colaboración en tiempo real, así como el almacenamiento en la nube.
GitHub gana su popularidad gracias a que es la principal plataforma para la creación de trabajos colaborativos. De igual manera, no censura o discrimina lenguaje de programación alguno, los acepta a todos sin inconveniente, por lo que le facilita el trabajo a la gran mayoría de los desarrolladores. En esta plataforma viven y crecen millones de proyectos de código abierto que te permiten aprender y colaborar en la creación de grandes iniciativas.
También es considerada una gran red social, pues esta herramienta te permite conocer otros perfiles, unirse a sus proyectos, ver su trabajo y realizar trabajo colaborativo.
Una vez que ya conocimos todo sobre GitHub y sus bondades, es hora de ponernos manos a la obra para adentrarnos en este interesante mundo:
Lo primero que debes tener es una cuenta creada en GitHub. Registrarse es gratuito. Una vez que tengas la cuenta, inicia sesión con tu usuario y clave. Luego, sigue estos pasos:
En la esquina superior derecha de cualquier página, encontrarás un signo de + que sirve para realizar las acciones de la página. Das clic en el símbolo y creas un nuevo repositorio (new repository).
Una vez realizado eso, debes llenar los datos que se solicitan a continuación. Darle un nombre, que de preferencia debe ser claro, definir si será público o privado y colocar una pequeña descripción sobre tu repositorio. Este campo es opcional, pero te recomiendo que lo llenes para organizarte mejor y que los demás usuarios tengan una idea sobre lo que trata el repositorio que estás creando.
Activa el checkbox que dice iniciar tu repositorio con un README, este será tu primer archivo, la presentación de tu proyecto.
Presiona el botón de “crear repositorio” y listo. Ya tienes tu primer repositorio creado.
Conoce aquí una guía de buenas prácticas para trabajar con GitHub.
Branch se puede ver como el mapa lineal de los commits que has realizado al archivo. Cuando empezamos un proyecto con GitHub, automáticamente nos crea una rama llamada master, a partir de la cual comenzaremos a crear nuestras propias ramas.
Por acá encontrarás tips y trucos para GitHub que te harán ser un pro del control de versiones.
Commit es la denominación que se le da a los cambios guardados en Github. En otras palabras, commit es la acción de subir los archivos con los cambios realizados en tus repositorios y guardarlos.
Para realizar el commits de Github debes seguir los siguientes pasos:
1.- Se debe verificar el estado de nuestro repositorio ejecutando el siguiente comando:
git status
Una vez realizado el comando anterior, te aparecerá una lista con los archivos que fueron modificados y con los que están agregados al índice, listos para subir.
gitadd
De esta forma se añaden todos los cambios pendientes.
3.- Ahora vamos a generar el commit ejecutando el siguiente comando:
git commit -m "Un comentario de los cambios realizados"
Es importante que en este paso agregues una descripción clara, esta se guardará en el historial y podremos entender mejor los cambios más adelante. Cuando no se describen bien los cambios que se realizaron, volver a reparar un bug (error) puede ser una pesadilla.
Y eso es todo. Son pasos bastante sencillos, pero nunca está demás revisar un par de veces lo que vamos a subir a nuestro repositorio remoto y seguir practicando.
Las solicitudes de extracción o pull requests son el formato para contribuir con los cambios que realizaste a un código base para que sean fusionados.
Los pasos que debes seguir son los siguientes:
gitadd
git commit
gitpush
Si bien es cierto que GitHub es la plataforma para gestión de proyectos más popular y utilizada del mundo, te quiero presentar algunas alternativas que te podrían interesar.
Es la plataforma que quizás más competencia le ofrezca a Github. Es una página donde los usuarios pueden subir sus repositorios y contar con un sistema de seguimiento de errores en el proyecto con un detalle adicional: permite instalar su plataforma en los servidores particulares de quienes la usan, esto para garantizar mayor seguridad y privacidad a los contenidos alojados. Mira nuestra guía de estrategias de distribución en GitLab.
GitLab también proporciona el almacenamiento de repositorios públicos y privados de forma ilimitada y completamente gratuita. Además, tiene soporte para integrarse a cualquier sistema operativo, al igual que en servidores alojados en la nube.
Creada por Atlassian, esta plataforma permite crear repositorios gratuitos para grupos pequeños de hasta 5 personas. Tiene funciones que la hacen interesante a los ojos de los usuarios, como la posibilidad de poder intercambiar archivos a través de la misma plataforma y poder decidir entre usar el espacio de almacenamiento de sus servidores o instalarlo en tu propio servidor.
Otra gran alternativa para complementar a Github es Sourceforge, una plataforma que permite almacenar repositorios únicamente de proyectos con código abierto. Tiene gran compatibilidad con la mayoría de los lenguajes de programación, por lo que proporciona una gran libertad a los usuarios. Permite también la creación de páginas web estáticas con subdominios, por lo que de esta manera los usuarios pueden mostrar de forma más sencilla los proyectos que llevan a cabo dentro de la plataforma.
Tenía instalado Github, sin embargo no tenía la menor idea de como utilizarlo.
Ahora ya tengo la noción básica
😎
El curso de Git y GitHub que da Freddy es super bueno, muy recomendado yo no conocía nada de la herramienta y aprendiendo desde cero hoy ya los proyectos que realizo en las clases de los cursos que estoy viendo los subo a GitHub y adicional esta GitHub pages que te permite publicar tus proyectos y tener un url para verlos en la web es genial para crear un portafolio y mostrar lo que has aprendido
Excelente post Diego
Aprendí mucho de Github solo en este post
Buen aporte! 😁
Qué excelente Blog Diego.
¡Gracias Diego! Me ha permitido entender mejor la dinámica con GitHub. Súper buena intro para empezar a utilizar la plataforma.