¿Qué Es Git?

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 10

Git+ GitHub

¿Qué es Git?
Es un sistema (herramienta) de control de versiones. Lleva un
registro de todos los cambios y avances de tu proyecto

Configuración de la terminal

Git config –-global user.name “Antonio-eli”

Git config –-global user.email “[email protected]

Git config –-global -e nos permite visualizar las configuraciones que


hemos realizado

Para salir de esa ventana: q enter

Primeros pasos en git

Para empezar el repositorio local se utiliza Git init de esta manera Git
lleva un rastro de todo lo que se realiza en el proyecto

Git status nos indica modificaciones en los archivos

Otras maneras de ver el estado del proyecto

 git status -s nos arroja información resumida de lo que se ha


modificado
 git status -s -b esta instrucción nos indica el estatus y la rama de
nuestro proyecto
Git add . añade todos los archivos

Otras maneras de agregar los archivos

 git add - -all agrega todos los archivos


 git add index.html específicas que archivos vas añadir
 git add *.png solo se agregan los archivos con extensión .png del
directoria actual
 git add “*.txt” agrega todos los archivos .txt de todo el proyecto
 git add css/ añade toda la carpeta css
 git add pdf/*.pdf añade todos los pdfs de la capeta pdf
 git add -A todo lo que se ha modificado
 git reset *.xml excluye al archivo con extensión .xlm del stage
Git commit -m “primer commit” es un registro histórico en la rama
maestra (On Branch master)

Otras maneras de escribir mensajes

 Git commit con este comando de pueden escribir mensajes


multilínea para poder agregar contenido apretamos la tecla a y
para salir apretamos la tecla ESC después tecleamos :wq
Git log con esto puedes ver los commit creados de los más recientes a
los mas viejos. El head es el último commit creado

Otras maneras de revisar commit creados

 Git log - - oneline nos muestra los commit de una forma


resumida, esto es muy útil si se tienen muchos commit creados
 Git log --oneline --decorate --all --graph este comando nos
ayuda de ver de una manera más agradable los commit

Alias en Git
Para crear alias usamos el siguiente comando

git config --global alias.lg “log --oneline --decorate --all --graph”

Con esto cada vez que quieras ver un commit detallado en vez que
teclear toda la sintaxis de color azul solo tendremos que teclear git lg

Creando nuestros propios alias

 Git config --global alias.s “status -s -b” === Git s


Para ver todas las configuraciones realizadas usamos el
siguiente comando
Git config --global -e modo escritura se pueden modificar las
configuraciones

Git config --global -l modo de lectura

Un poco más allá de los fundamentos


Visualizar los cambios realizados

 Git diff nos indica los cambios realizados en el proyecto


 Git diff -stage nos indica los cambios realizados en el proyecto
que estén en el stage
Para quitar archivos del stage

 Git reset HEAD index.html


Para restaurar los cambios realizados en el proyecto

 Git checkout -- index.html


Actualizar mensaje del commit, revertir los commit y borrarlos

 Git commit --amend -m “Actualizar el mensaje del commit, por


si escribiste mal algo lo puedes arreglar”
 Git commit --amend si solo tecleamos este comando se nos
abrirá la consola multilínea
 Gitt reset --soft HEAD^ Con este comando podemos eliminar el
ultimo commit realizado para así poder agregar mas
modificaciones a ese commit el símbolo ^ sirve para apuntar al
commit anterior, si se desea actualizar el commit actual no se
utiliza
Agregar todos los archivos al stage y simultáneamente agregar un
commit

 Git commit -am “Agrega todos los archivos y al mismo tiempo


coloca un mensaje”

Viajes en el tiempo
 Git reset --soft HEAD^ o 39ae8e6 permiten  deshacer  cambios
en un determinado tiempo es el menos destructivo
 Git reset --mixed 39ae8e6
 Git hard --mixed 39ae8e6

Diferencias

Para deshacer los cambios git nos brinda un registro de respaldo y para
acceder a dicho respaldo digitamos el siguiente comando

 Git reflog nos muestra el historial de cambios que hemos


efectuado en nuestro repositorio
 Git reset --hard 39ae8e6 con este comando revertimos las
acciones que realizamos en nuestro repositorio
Cambiar el nombre y eliminar archivos mediante git
 Git mv proyecto.txt proyectoTerminado.txt este comando nos
permite renombrar el archivo
 Git rm proyecto.txt este comando nos permite eliminar archivos
 Git add -u nos permite realizar una actualización es como si
refrescáramos el navegador en este caso nuestro repositorio

Ignorando archivos no deseados


Tenemos que crear un archivo con la siguiente extensión .gitignore y
en ese archivo añadimos todos los archivos que no necesitamos darles
seguimiento ejemplo: *.txt

Ramas, uniones, conflictos y tags


En git trabajamos inicialmente en la rama principal conocido como
master, como avanzan los proyectos se van agregando nuevas
funcionalidades, pero a veces analizando los requerimientos del
sistema se puede llegar a la conclusión que esa funcionalidad no es tan
necesaria y es aquí donde el concepto de ramas toma un gran impacto.
Si trabajamos siempre en la rama master y nos piden que agreguemos
funcionalidades en nuestro proyecto y 6 meses después llegamos a la
conclusión que es funcionalidad no es necesaria tendríamos que checar
que partes del proyecto se modificaron y seria un trabajo muy duro, sin
embargo, si usamos ramas solo tendríamos que eliminar esa rama sin
tocar el proyecto original y es mucho más rápido
Merge: fast-forward
 Git Branch rama-agregando-funcionalidades este comando
nos permite crear una rama nueva
 Git checkout rama-agregando-funcionalidades este comando
nos permite movernos a la rama creada también con este
comando podemos volver a la rama master solo basta con poner
el nombre de la rama
o Git checkout -b rama-agregando-funcionalidades este
comando nos permite crear una rama y automáticamente
cambiarnos de rama
 Git Branch este comando nos permite visualizar en que rama nos
encontramos y con git s confirmamos que hemos cambiado de
rama
 Git diff rama-agregando-funcionalidades master este
comando nos permite ver las diferencias que tienen las dos
ramas
 Git merge rama-agregando-funcionalidades este comando nos
permite unir las ramas debes tener en cuenta que tienes que estar en la
rama master para que este proceso se realice correctamente. También debes
tener en cuenta que cuando unes la rama secundaria a la rama master ya no
tendría sentido seguir conservando la rama secundaria para esta razón
debemos eliminar dicha rama esto es para tener buenas practicas
 Git Branch -d rama rama-agregando-funcionalidades este
comando nos permite borrar las ramas creadas

TAGS
Son referencias a un commit especifico en el tiempo y nos permite
referenciar en que versión del proyecto nos encontramos

 Git tag versión-1 este comando nos permite crear un tag


pueden ser números o un nombre
o Git tag -a v1.0.0 -m “versión alfa” este comando nos
permite crear tags de forma detallada, dándole una
anotación y también un mensaje
o Git tag -a v1.1.0 323d7de -m “versión 1.1.0”
 Git tag este comando nos lista el nombre de todos los tags
o Git show tag v1.0.0 Este comando nos lista todos los
tags de forma detallada
 Git tag -d versión-1 este comando nos permite eliminar los
tags

Stash
Se trata de un comando que “congela” el estado en el que se
encuentra el proyecto en un momento determinado, con todos los
cambios que tenemos “sin comitear", y lo guarda en una pila
provisional brindando la posibilidad de poder recuperarlo más
adelante.

Un ejemplo más concreto podría ser... bug en producción mientras


estamos a medio desarrollo de una funcionalidad de e-commerce en
nuestro entorno local. Nos encontramos ante la necesidad de dejar los
cambios en los que estamos trabajando y pasar a otra rama para tratar
el bug, pero no queremos comitear el código que tenemos a medias.
 Git stash este comando nos permite inicializar el stash
 Git stash list este comando nos permite visualizar todos los
trabajos en progreso que hay
 Git stash pop Este comando nos permite recuperar los cambios
recién guardados y borrarlos del stash a la vez
 Git stash drop este comando nos permite eliminar el ultimo
registro que se encuentra en el stash
GitHub Básico
GitHub Avanzado
¿Qué es un Fork?
La palabra fork se traduce al castellano, dentro del contexto que nos ocupa, como
bifurcación. Cuando hacemos un fork de un repositorio, se hace una copia exacta
en crudo (en inglés «bare») del repositorio original que podemos utilizar
como un repositorio git cualquiera. Después de hacer fork tendremos dos
repositorios git idénticos pero con distinta URL. Justo después de hacer el fork,
estos dos repositorios tienen exactamente la misma historia, son una copia
idéntica. Finalizado el proceso, tendremos dos repositorios independientes que
pueden cada uno evolucionar de forma totalmente autónoma. De hecho, los
cambios que se hacen el repositorio original NO se transmiten automáticamente a
la copia (fork). Esto tampoco ocurre a la inversa: las modificaciones que se hagan
en la copia (fork) NO se transmiten automáticamente al repositorio original.
¿Para qué sirve Fork?
Tiene varios usos. El más común es el de permitir a los desarrolladores contribuir
a un proyecto de forma segura.

Diferencia un Fork de un clon

Cuando hacemos un clon de un repositorio, te bajas una copia del mismo a tu


máquina. Empiezas a trabajar, haces modificaciones y haces un push. Cuando haces
el push estás modificando el repositorio que has clonado.

Cuando haces un fork de un repositorio, se crea un nuevo repositorio en tu cuenta


de Github o Bitbucket, con una URL diferente (fork). Acto seguido tienes que hacer
un clon de esa copia sobre la que empiezas a trabajar de forma que cuando haces
push, estás modificando TU COPIA (fork). El repositorio original sigue intacto.

¿Qué es un pull request?

Un pull request es una petición que el propietario de un fork de un repositorio


hace al propietario del repositorio original para que este último incorpore los
commits que están en el fork.

Actualizando nuestro Fork


 Git remote add upstream <repo original>
 Git fetch upstream

También podría gustarte