git, GitHub, GitKraken


¿Qué es git?

Control de versiones

`git` es un software (de código abierto) de control de versiones diseñado por *Linus Torvalds*, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente.

Se llama control de versiones a la gestión de los diversos cambios que se realizan sobre los elementos de algún producto o una configuración del mismo. Una versión, revisión o edición de un producto, es el estado en el que se encuentra el mismo en un momento dado de su desarrollo o modificación.

git es independiente de GitHub, y es el programa que se usa para gestionar todos los cambios en las versiones de un proyecto (individual o colaborativo, local o de acceso remoto).

Referencias:

¿Cómo usarlo?

Mostrar en el tutorial que git se puede usar desde la ventana de comandos, nada más para asustarlos.


¿Qué es GitHub?

GitHub es una compañía que ofrece servicios de hosting para repositorios de git, y es la forma más popular para trabajar con el control de versiones que brinda git de forma colaborativa. En pocas palabras, permite que tanto tú como otras personas del mundo trabajen juntos en proyectos, haciendo control de versiones con git.

De forma que usando git y GitHub en conjunto se puede trabajar tanto:

  • De forma local: repositorios en tu equipo, sin necesidad de conexión a internet (usando únicamente git).
  • De forma remota: repositorios remotos (compartidos) que no están necesariamente en tu máquina.

¿Cómo usarlo?

Vamos a seguir la guía oficial para aprender a manejar GitHub.

Para esto, primero nos pedirá crear una cuenta de GitHub.

Importante: se recomienda crear una cuenta seria, no solo porque la vamos a utilizar continuamente en el curso, sino porque probablemente sea parte importante de su carrera profesional.


In [2]:
from IPython.display import HTML
HTML('<iframe src=https://guides.github.com/activities/hello-world/ width=700 height=350></iframe>')


Out[2]:

¿Qué es GitKraken?

Usamos git desde una interfaz gráfica :)

Ya vimos que todos los procedimientos con git se pueden correr desde la consola. Sin embargo, este modo de utilizar git puede ser tedioso para algunos (esto no solo ocurre con git).

Por ello, git viene con algunas herramientas GUI (Graphical User Interface) por defecto con su instalación. Aún así, existen varias GUI desarrolladas por otras compañías para brindar una experiencia más cómoda según el sistema operativo.

GitKraken es entonces una de estas GUI, gratuita para el uso no comercial, que tiene versiones para los sistemas operativos Windows, Mac y Linux. La estaremos usando en el curso por su versatilidad.

Descargar GitKraken

https://www.gitkraken.com/

¿Cómo usarlo?

Se explicará como usar directamente GitKraken con GitHub. Para ello ya deben tener la cuenta de GitHub creada, junto con el repositorio hello-world

Explicación de clase basada en el siguiente webinar de GitKraken en YouTube.


In [1]:
from IPython.display import YouTubeVideo
YouTubeVideo('f0y_xCeM1Rk')


Out[1]:

Receta

  1. Descargar e instalar GitKraken.
  2. Abrir GitKraken. Cuando nos pida autenticación, nos autenticamos con la cuenta existente de GitHub.
  3. Ir a la pestaña superior derecha de Preferences para ver Profiles (por defecto el de GitHub) y Authentication.
    • En Authentication, como estamos autenticados con GitHub ya deberíamos estar conectados.
    • Picarle en Generate SSH key and add to GitHub. Esto nos ahorrará estarnos autenticando en GitHub para cuando queramos actualizar el repositorio remoto.
    • En la parte superior izquierda picarle en Exit Preferences.
  4. Picarle a la carpeta en la esquina superior izquierda. Tres opciones:
    • Open: abrir un repositorio local ya existente.
    • Clone: clonar un repositorio remoto.
    • Init: empezar a hacer control de versiones en un proyecto desde cero.
  5. Picarle en Clone. Como ya estamos autenticados en GitHub, aparecerán todos los repositorios disponibles en nuestra cuenta de GitHub (en este caso solo tendremos hello-world).
    • En Browse, buscar el directorio/carpeta donde quieren que el repositorio sea clonado.
    • Picar en hello-world.
    • Picar en Clone the repo.
  6. Abrir el directorio hello-world, modificar el archivo README.md y guardar los cambios.
    • Cuando volvamos a GitKraken, veremos que se ha actualizado la modificación.
    • Picamos en el paso de la actualización y en la derecha veremos el archivo modificado.
    • Picamos en README.md y podremos ver la modificación que hicimos en el archivo.
    • Antes de llevar a cabo los cambios, ir al repositorio remoto en GitHub y ver que el archivo README.md no se ha modificado. Solo clonamos los archivos en el repositorio local.
    • Volvemos a GitKraken, picamos en Stage file y comentamos los cambios.
    • Picar en Commit.
  7. Revisar el arbol de cambios. Hay un ícono que revela hasta donde están los cambios en GitHub y el otro revela que vamos un paso más adelante en el repositorio local. Este cambio aún no se hace en el repositorio remoto en GitHub.
  8. Para sincronizar los cambios en el repositorio de GitHub debemos picar en Push en la parte superior. Los íconos deberían juntarse.
  9. Ir a GitHub y ver que el cambio en efecto se realizó.

Actividad: ** No dejaré tarea esta vez :). La calificación será de acuerdo a que hayan seguido todos estos pasos en clase.**


Recuento de la clase

Created with Jupyter by Esteban Jiménez Rodríguez.