Está en la página 1de 7

Uso básico de git https://diego.com.

es/uso-basico-de-git

Diego Lázaro Angular Libro de PHP 


Diego Lázaro Contacto Angular Libro de PHP

Uso básico de git


Guía con los principales comandos para iniciarse en el uso
de git, el sistema de control de versiones más popular

Git proporciona una nueva forma de gestionar el código para los desarrolladores .
Git es un sistema muy potente de control de versiones que agiliza y facilita el
desarrollo especialmente a equipos , pero también a programadores en proyectos
individuales.

En este artículo explico los comandos más básicos de git , que permiten utilizar la
herramienta y empezar a experimentar sus grandes beneficios. Es recomendable
haber leído la guía oficial de git o tener una idea de cómo funciona para que esta
guía sea de utilidad.

Una vez instalado en el servidor, para iniciar git en un proyecto sólo hay que
escribir el comando:

git init

Si quieres obtener una copia de un proyecto que se encuentra en un repositorio


público :

git clone [url]

1 de 7 20/05/2022 11:24 a. m.
Uso básico de git https://diego.com.es/uso-basico-de-git

Añadir archivos al área de ensayo, git add


Diego Lázaro Angular Libro de PHP 
El funcionamiento de git se basa en hacer capturas o instantáneas ( snapshots ) de
un proyecto para después poder trabajar con ellas o compararlas. Git tiene un
index que actúa como área de ensayo (staging area ) de las instantáneas. Esto
permite construir series de instantáneas de los archivos creados o modificados en
el proyecto antes de guardarlos en el historial del proyecto. Cuando finalmente se
quiere guardar y agrupar estos cambios, se guardan en el historial mediante
commits .

En Git los archivos primero se añaden al área de ensayo antes de poder guardarlos
en el historial, ya sean nuevos en el proyecto o sean archivos ya existentes pero con
nuevas modificaciones. Para ello se escribe el comando:

git add archivo.txt

El archivo ahora estará en el área de ensayo, preparado para formar parte del
historial del proyecto .

Si se han hecho cambios en varios archivos, se pueden añadir todos juntos al área
de ensayo con el siguiente código:

git add .

Sólo los cambios que están añadidos en el área de ensayo podrán enviarse al
historial. Esto significa que si se hace una modificación en un archivo y se añade al
área de ensayo, si posteriormente se hacen más cambios en el archivo, habría que
añadirlos otra vez al área de ensayo para que después formen parte del historial en
la misma instantánea.

Ver los archivos que se han modi�cado, git status

Para ver los cambios que se han hecho en el proyecto se utiliza el código:

git status

Al escribir este comando aparece una lista con los archivos creados, modificados o
eliminados que aún no se encuentran en el área de ensayo (en color verde).

Para ver los cambios de forma más esquematizada :

2 de 7 20/05/2022 11:24 a. m.
Uso básico de git https://diego.com.es/uso-basico-de-git

git status -s
Diego Lázaro Angular Libro de PHP 

Con el comando esquematizado, dependiendo de las modificaciones que se hayan


hecho y si se han añadido o no al área de ensayo, aparecerá una letra en color
verde o rojo :

A Archivo creado y añadido M Archivo modificado y añadido M Archivo modificado y


no añadido D Archivo eliminado UU Conflicto entre ramas

Ver el contenido modi�cado de los archivos, git diff

git diff

Sirve para ver las diferencias con los archivos anteriores de los archivos que no se
han añadido al área de ensayo . Esto código muestra exactamente los cambios que
se han realizado dentro de los archivos . Se suele utilizar después de ver los
cambios que ha habido en los archivos con el comando status . Puedes emplear git
diff [archivo] para precisar la muestra.

git diff --chached

El comando git diff --cached mostrará el contenido que se ha añadido al área de


ensayo , es decir, los cambios que se incluirán en el historial si se hace commit.

Si no queremos ver todo el contenido de los cambios del comando diff , podemos
emplear el comando git diff --stat que muestra un sumario de los cambios :

git diff --stat

Registrar cambios en el historial, git commit

Ahora que hemos visto como incluir y ver cambios en el área de ensayo , vamos a
ver cómo trabajar con el historial del proyecto para poder ver el funcionamiento de
las instantáneas. Con el comando git commit se registran los cambios y se añaden
al historial. Es necesario indicar el nombre y email de la persona que registra los
cambios con los siguientes comandos:

git config --global user.name "Mi nombre"


git config --global user.email "miemail@ejemplo.com"

Si tenemos cambios añadidos en el área de ensayo, bastará con poner el siguiente

3 de 7 20/05/2022 11:24 a. m.
Uso básico de git https://diego.com.es/uso-basico-de-git

comando:
Diego Lázaro Angular Libro de PHP 

git commit -m "Mis nuevos cambios"

Ahora los cambios se han guardado en forma de instantánea y formarán parte del
historial, que tendrá un número de referencia , y será un estado del proyecto al que
se podrá acceder posteriormente si se precisa. Si ahora se utiliza el comandogit
status se verá que no hay cambios que manejar, estamos en una instantánea ya
registrada. Se puede utilizar git commit sin la -m y sin el mensaje, de esta forma se
abre el editor vim para escribir el mensaje del commit, pero para commits con
mensajes cortos es más práctico el comando anterior.

Es muy importante registrar los cambios con una separación lógica del código ,
especialmente si se trabaja en equipo. Esto es añadir cambios agrupados de forma
que se pueda describir el cambio que se ha realizado.

Existe un comando que te permite añadir los cambios realizados en el proyecto


directamente en el área de ensayo y en el historial (que es como saltarse el área
de ensayo):

git commit -am "Nuevos cambios"

Deshacer cambios en el área de ensayo y en el historial, git reset

git reset

Este comando permite quitar los archivos añadidos al área de ensayo . Si has
añadido dos archivos pero quieres que cada uno aparezca en un commit distinto,
puedes emplear este código para que los dos archivos vuelvan al estado normal en
el área de trabajo y añadirlos independientemente, o emplear git reset [archivo]
para precisar el archivo que quieres quitar del área de ensayo.

El comando hace que los cambios que se hayan realizado desde el último commit
se eliminen de la lista del área de ensayo.

git reset --hard

Este comando hace que se deshagan todos los cambios y se vuelva al estado en el
que se estaba en el commit anterior. Hay que tener cuidado y estar muy seguro al
ejecutar este comando ya que borra todos los cambios y archivos nuevos que se
hayan realizado desde el commit anterior.

4 de 7 20/05/2022 11:24 a. m.
Uso básico de git https://diego.com.es/uso-basico-de-git

Eliminar archivos del área de ensayo, git rm


Diego Lázaro Angular Libro de PHP 
git rm

Elimina los archivos del área de ensayo. El código anterior git reset simplemente
quita de la lista del área de ensayo los archivos modificados, en cambio git rm
directamente los elimina. Este comando no sólo elimina los archivos de ser
rastreados por git, sino que también los elimina del área de trabajo .

Guardar cambios hechos en el área de trabajo en el área de ensayo para después, git
stash

Este comando es útil cuando estás en mitad de un cambio pero no puedes


terminarlo, o de repente ocurre un error que tiene mayor prioridad, pero no quieres
hacer commit o perder los cambios hasta ahora.

git stash

Esto hará que los cambios en el área de trabajo y de ensayo se amacenen, por lo
que volverás de nuevo al estado del último commit .

Si existen archivos que todavía no están en el área de trabajo, git stash no los
incluirá. Puedes añadirlos con git add antes de hacer stash o puedes emplear el
siguiente comando:

git stash -u

Esto hará que se añadan todos los cambios primero al área de ensayo.

Para ver cuales son los almacenes que tenemos, podemos usar:

git stash list

Mostrará una lista con todos trabajos almacenados .

Para retomar un almacén y aplicarlo al área de trabajo actual:

git stash apply

5 de 7 20/05/2022 11:24 a. m.
Uso básico de git https://diego.com.es/uso-basico-de-git

Por defecto se retomará el último stash que se hizo, pero puedes retomar otros
Diego Lázaro Angular Libro de PHP 
almacenes haciendo referencia a sus códigos que aparecen cuando escribes el
comando git stash list . Estos son del tipo: stash@{0}, stash@{1}...

git stash apply stash@{1}

Para eliminar un almacén directamente, puedes aplicar el comando:

git stash drop

Al igual que en el caso anterior, por defecto eliminará el último almacén creado,
pero puedes añadir el códido de referencia del almacén que quieres eliminar.

Por último, el comando git stash clear borrará todos los almacenes del proyecto.

PHPStorm y git

Si usas PHPStorm como editor de código , hay ciertos archivos de configuración que
se añaden en el repositorio de git cada vez que haces algún cambio. Se guardan en
el directorio .idea/, como .idea/workspace.xml. Para evitar esto, sigue estos pasos:

• En _Project Settings > Version Control > Ignored Files, _añade el directorio
.idea/
• En el .gitignore de tu proyecto, añade:

.idea/*

• Si ya tenías archivos cacheados, emplea el siguiente código para eliminarlos:

git rm --cached .idea/workspace.xml

Fuentes: gitref.org, git-scm.com

Copyright © Diego Lázaro 2018

6 de 7 20/05/2022 11:24 a. m.
Uso básico de git https://diego.com.es/uso-basico-de-git

Sitio construido con Symfony & Semantic-UI


Diego Lázaro Angular Libro de PHP 

7 de 7 20/05/2022 11:24 a. m.

También podría gustarte