Que es git y github

Qué es git y github en hindi

Esta introducción ha crecido hasta convertirse en un artículo independiente que podría ser una mejor introducción en este momento. Hasta que lo vuelva a fusionar, considera la posibilidad de leer el artículo en su lugar: “Disculpe, ¿tiene un momento para hablar del control de versiones?” https://dx.doi.org/10.7287%2Fpeerj.preprints.3159v2.

Git es un sistema de control de versiones. Su propósito original era ayudar a grupos de desarrolladores a trabajar en colaboración en grandes proyectos de software. Git gestiona la evolución de un conjunto de archivos -llamado repositorio- de forma sana y muy estructurada. Si no tienes ni idea de lo que estoy hablando, piensa que es como las funciones de “Seguimiento de cambios” de Microsoft Word con esteroides.

Git ha sido reutilizado por la comunidad de científicos de datos. Además de usarlo para el código fuente, lo utilizamos para gestionar la variopinta colección de archivos que componen los típicos proyectos de análisis de datos, que a menudo consisten en datos, cifras, informes y, sí, código fuente.

Un analista de datos en solitario, que trabaje en un solo ordenador, se beneficiará de la adopción del control de versiones. Pero no lo suficiente como para justificar el dolor de la instalación y la alteración del flujo de trabajo. Hay formas mucho más sencillas de obtener copias de seguridad versionadas de tus archivos, si eso es lo único que te preocupa.

Introducción a Github

Git es un sistema de control de versiones distribuido entre pares. Cada nodo de la red es un peer, que almacena repositorios enteros que también pueden actuar como copias de seguridad distribuidas en varios nodos. No existe un concepto específico de servidor central, aunque los nodos pueden estar sin cabeza o “desnudos”, asumiendo un papel similar al del servidor central en los sistemas de control de versiones centralizados.

Git en sí se centra realmente en las tareas esenciales del control de versiones. Mantiene un historial de confirmaciones, permite revertir los cambios mediante los comandos reset y revert, y permite compartir el código con otros desarrolladores mediante los comandos push y pull. Creo que esas son las características esenciales que todo desarrollador quiere de una herramienta de control de versiones.

Pero una cosa sobre Git es que realmente se centra en el control del código fuente y nada más. Eso es impresionante, pero también significa que la herramienta carece de muchas características que las organizaciones quieren. Por ejemplo, no hay instalaciones de gestión de usuarios integradas para autenticar quién se conecta y confirma el código. La integración con cosas como Jira o Jenkins se deja en manos de los desarrolladores para que la resuelvan a través de cosas como los ganchos. Básicamente, hay un montón de lugares en los que se podrían integrar las funciones. Ahí es donde entran organizaciones como GitHub y GitLab.

Tutorial de Github

¿Eres nuevo en git? Sigue los siguientes pasos para sentirte cómodo haciendo cambios en el código base, abriendo un pull request (PR), y fusionando el código en la rama principal. Todos los términos importantes de git y GitHub están en negrita con enlaces a los materiales de referencia oficiales de git.

Sigue las instrucciones aquí para instalar git (si no está ya instalado). Ten en cuenta que para este tutorial usaremos git sólo en la línea de comandos. Aunque hay algunas buenas GUIs (interfaces gráficas de usuario) de git, creo que es más fácil aprender git usando primero los comandos específicos de git y luego probar una GUI de git una vez que te sientas más cómodo con el comando. Una nota: el 95% de los demás recursos y discusiones sobre git en línea serán también para la interfaz de línea de comandos.

Para usar git usaremos la terminal. Si no tienes mucha experiencia con la terminal y los comandos básicos, echa un vistazo a este tutorial (Si no quieres/necesitas una breve lección de historia, salta al tercer paso).

Para empezar, abre una terminal y ve al lugar donde quieres colocar el proyecto en tu máquina local usando el comando cd (cambiar directorio). Por ejemplo, si tienes una carpeta de “proyectos” en tu escritorio, harías algo así:

Para qué sirven git y github

GitUna sesión de línea de comandos que muestra la creación de un repositorio, la adición de un archivo y la sincronización remotaAutor(es) original(es)Linus Torvalds[1]Desarrollador(es)Junio Hamano y otros[2]Versión inicial7 de abril de 2005; hace 16 años (2005-04-07)Versión estable2.35.0[3]

Git (/ɡɪt/)[7] es un software para el seguimiento de los cambios en cualquier conjunto de archivos, normalmente utilizado para coordinar el trabajo entre los programadores que desarrollan el código fuente en colaboración durante el desarrollo de software. Sus objetivos incluyen la velocidad, la integridad de los datos y el apoyo a los flujos de trabajo distribuidos y no lineales (miles de ramas paralelas que se ejecutan en diferentes sistemas)[8][9][10].

Git fue creado por Linus Torvalds en 2005 para el desarrollo del kernel de Linux, con otros desarrolladores del kernel contribuyendo a su desarrollo inicial[11] Desde 2005, Junio Hamano ha sido el mantenedor principal. Al igual que la mayoría de los sistemas de control de versiones distribuidos, y a diferencia de la mayoría de los sistemas cliente-servidor, cada directorio de Git en cada ordenador es un repositorio completo con un historial completo y capacidades de seguimiento de versiones, independientemente del acceso a la red o de un servidor central[12] Git es un software libre y de código abierto distribuido bajo la licencia GPL-2.0-only.