GITHUB control de versiones, para el manejo de repositorios versionados
1.
2. SISTEMA CONTROL DE
VERSIONES
Sistema que registra los cambios
realizados sobre un archivo o
conjunto de archivos a lo largo del
tiempo, de modo que puedas llevar
el historial del ciclo de vida de un
proyecto, comparar cambios a lo
largo del tiempo, ver quién los
realizó o revertir el proyecto entero
a un estado anterior.
3. GIT
• Git esta optimizado para guarden cambios de
forma incremental
• Permite contar con un historial, regresar a una
versión anterior y agregar funcionalidades
• Lleva un registro de los cambios que otras
personas realicen en los archivos.
Sistema de control de versiones
distribuido, diseñado por Linus
Torvald. Esta pensado en la
eficacia y la confiabilidad del
mantenimiento de versiones de
aplicaciones cuando estas tiene
un gran numero de archivos de
código Fuente
4. GITHUB
• GitHub permite alojar proyectos en repositorios de forma
gratuita y pública, pero tiene una forma de pago para
privados.
• Se puede compartir fácilmente tus proyectos.
• Permite colaborar para mejorar los proyectos de otros y a
otros mejorar o aportar a los tuyos.
• Ayuda a reducir significativamente los errores humanos, a
tener un mejor mantenimiento de distintos entornos y a
detectar fallos de una forma más rápida y eficiente.
• Es la opción perfecta para poder trabajar en equipo en un
mismo proyecto.
• Ofrece todas las ventajas del sistema de control de
versiones Git, pero también tiene otras herramientas que
ayudan a tener un mejor control de los proyectos.
Plataforma de desarrollo
colaborativo para alojar proyectos
utilizando el sistema de control de
versiones Git. Se emplea
principalmente para la creación de
código fuente de programas de
computadora.
5. COMANDOS MAS USADOS EN GIT
Git clone: comando para descargar
el código fuente existente desde
un repositorio remoto (como
Github, por ejemplo)
Git branch: para crear (git branch ),
listar (git branch --list)y eliminar
(git branch -d <nombre-de-la-
rama>) ramas de trabajo.
Git checkout: se usa
principalmente para cambiarte de
una rama a otra, Hay también un
comando de acceso directo que te
permite crear y cambiarte a esa
rama al mismo tiempo (git
checkout -b <nombre-de-tu-
rama>).
Git status: nos da toda la
información necesaria sobre la
rama actual.
Git add: para incluir los cambios
del o de los archivos en tu
siguiente commit, (git add -A)
Git commit: Es para establecer un
punto de control en el proceso de
desarrollo al cual puedes volver
más tarde si es necesario.
6. COMANDOS MAS USADOS EN GIT
Git push: envía tus commits al
repositorio remoto. si tu rama ha sido
creada recientemente, puede que
tengas que cargar y subir tu rama con
el siguiente comando: git push -u
origin <nombre-de-tu-rama>
Git pull: e utiliza para recibir
actualizaciones del repositorio remoto.
Este comando es una combinación
del git fetch y del git merge lo cual
significa que cundo usemos el git pull
recogeremos actualizaciones del
repositorio remoto (git fetch) e
inmediatamente aplicamos estos
últimos cambios en local (git merge).
Git revert: A veces, necesitaremos
deshacer los cambios que hemos
hecho. Hay varias maneras para
deshacer nuestros cambios en local y/o
en remoto (dependiendo de lo que
necesitemos), pero necesitaremos
utilizar cuidadosamente estos
comandos para evitar borrados no
deseados.
Git merge: Cuando ya hayas
completado el desarrollo de tu
proyecto en tu rama y todo funcione
correctamente, el último paso es
fusionar la rama con su rama padre
(dev o master).
Git log: muestra la historia de commit
Git show: muestra el historial de
commit, especificando las diferencias
por rama
7. COMANDOS QUE NOS AYUDAN A RESOLVER
CONFLICTOS
Git status: durante una
fusión ayudará a identificar
los archivos con conflictos.
Git log –merge: se creará
un registro con una lista de
confirmaciones que entran
en conflicto entre las ramas
que se van a fusionar.
Git diff: ayuda a encontrar
diferencias entre los
estados de un
repositorio/unos archivos.
Esto es útil para predecir y
evitar conflictos de fusión.
8. COMANDOS QUE NOS AYUDAN PARA CUANDO NO
INICIA UNA FUSION
Git checkout: puede
utilizarse
para deshacer cambios
en los archivos o para
cambiar ramas
Git reset –mixed:
puede utilizarse para
deshacer cambios en
el directorio de trabajo
y el entorno de
ensayo.
Git merge –abourt: se
saldrá del proceso de
fusión y volverá a
poner la rama en el
estado que tenía antes
de que empezara la
fusión.
Git reset: puede
utilizarse durante un
conflicto de fusión
para restablecer los
archivos conflictivos a
un estado que se sabe
que es adecuado
9. COSAS QUE NO DEBES HACER NUNCA EN GIT
1. NUNCA hacer commit directamente a 'master': El no usar una rama aislada para trabajar en
nuevas características sobre un código hará mucho más difícil y peligroso el sincronizar las
ramas de trabajo
2. NUNCA hacer git push --force: Lo correcto en estos casos es que se sincronice el repositorio
local en primer lugar, haciendo pull de los cambios y una vez sincronizado el repositorio local
y estando seguro de que todo funcione bien proceder a hacer un push.
3. NUNCA subir archivos binarios: Los datos acerca de cambios en archivos binarios hacen
imposible leer los commits. Sin embargo, otra muy buena razón para dejarlos fuera de el
repositorio y es que, generalmente estos archivos como imágenes, binarios compilados o
incluso videos son mucho más grandes que los archivos de texto de nuestro código y si
hacemos commit de ellos a nuestro repositorio, el tamaño de este se volverá muy grande.