Inicio Informática Git, el sistema de gestión de código fuente descentralizado (Vol.3)

Git, el sistema de gestión de código fuente descentralizado (Vol.3)

Publicado por entreunosyceros

AVISO: Esta entrada tiene más de dos años desde su publicación. Es posible que el contenido esté desactualizado.

Una vez más aquí. En esta ocasión vamos a continuar la serie de artículos sobre el sistema de gestión de código fuente descentralizado llamado git. En el último artículo lo dejamos en Cómo borrar archivos borrados accidentalmente, por lo que vamos a continuar en Cómo recuperar versiones.

Recuperar versiones

Para ejecutar esta recuperación de versiones vamos a suponer que ya hemos efectuado diferentes cambios sobre un fichero, pero supongamos que necesitamos recuperar un código que escribimos anteriormente. Git nos va a permitir situarnos en el momento del commit que nos interesa.

listar commits para recuperar versiones

Para hacer esto, es imprescindible indicar un número de commit que corresponde con ese momento. Por eso, para empezar necesitaremos listar esos momentos con git log. Justo para esto resultan importantes los mensajes que hayamos escrito a la hora de realizar el commit, ya que nos pueden resultar identificativos del momento del proyecto.

Recuperar con git chekout

En la última captura de pantalla se puede ver que cada commit cuenta con un código hash único. Este código nos servirá si lo utilizamos con git checkout para movernos a ese punto en concreto del tiempo. Hay que decir que no necesitaremos poner el código entero, basta con utilizar los primero caracteres.

En este ejemplo vamos a movernos al commit que indica que se ha añadido el archivo README.md. Para hacerlo sobre habría que utilizar el comando:

git checkout número de commit
git checkout 447d9d

Al hacer esto, git se encuentra en modo detached. Esto nos permitirá mirar, hacer cambios y guardarlos o bien ignorarlos y crear nuevos cambios con un nuevo checkout.

Para salir de ese estado, basta con hacer:

git checkout master
git checkout master

Recuperar con git show

Otra forma de recuperar archivos de otros commits es utilizando el comando git show. Este comando va a mostrar contenidos de ramas, commits, etc … y permite recuperar contenidos de archivos.

Por defecto git show muestra información del último commit:

git show por defecto
git show

Además también se puede indicar un commit concreto. Esto nos ofrecerá toda la información y cambios del mismo:

git show número de commit
git show 447d9d

Para recuperar un archivo en concreto, bata con indicar la ruta del mismo:

git show 447d9d:README.md

El anterior comando nos mostrará el contenido del archivo, por lo que podremos guardar ese contenido copiando la salida y guardándola con una redirección:

git show 447d9d:README.md > README.md

Diferencias

Creo que ya he mencionado anteriormente que el comando para mostrar diferencias es git diff. Además este también permite comparar diferencias entre distintos commits. Esto lo conseguiremos indicando los identificadores de los commits que queramos comparar.

Para obtener los identificadores, solo necesitaremos ejecutar:

git log --pretty --oneline

Ahora que ya los tenemos, vamos a comparar los dos últimos que se han listado:

comparar dos commits con git diff
git diff 50afabd 447d9da

Eliminar el repositorio

Esta parte es la más sencilla de todo lo visto hasta ahora. Podemos cargarnos el repositorio de un proyecto de git borrando el directorio .git que encontramos dentro del directorio sobre el que estamos trabajando con el comando:

rm -rf .git

Para ejecutar esto, hay que tenerlo muy claro, ya que si lo llevamos a cabo nos cargaremos todo el trabajo que hemos realizado hasta ahora.

Hasta aquí el volumen 3 de esta serie del sistema de gestión de código fuente descentralizado. Pronto llegará la siguiente entrega, en la que hablaremos sobre el uso de ramas o branches.

También te puede interesar ...

Deja un comentario

* Al utilizar este formulario, aceptas que este sitio web almacene y maneje tus datos.

Resumen de privacidad
cookies entreunosyceros

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible.

La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudarnos a comprender qué secciones de la web encuentras más interesantes y útiles.

Nunca almacenamos información personal de ningún tipo.

Tienes toda la información sobre privacidad, derechos legales y cookies en nuestra página sobre la política de privacidad o en la página sobre nuestra política de cookies.

Cookies necesarias

Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.

Si desactivas esta cookie no podremos guardar tus preferencias. Esto significa que cada vez que visites esta web tendrás que activar o desactivar las cookies de nuevo.

Cookies de terceros

Esta web utiliza las siguientes cookies adicionales:

- Mailchimp: Recordar si ya estás suscrito al boletín de noticias y sino ofrecértelo al salir.

- Accesibilidad: Para saber tus ajustes de accesibilidad en cada visita.

- Comentarios: Saber si has leído y aceptado nuestra política de privacidad a la hora de dejar un comentario en la web.

- Google Analytics: Localización para recopilar información anónima tal como el número de visitantes del sitio, o las páginas más populares.

- Goggle Adsense: Anuncios personalizados según tu geolocalización y preferencias.

Dejar estas cookies activadas nos permite mejorar nuestra web.

Adblock Detectado!!

Ayúdanos deshabilitando la extensión AdBlocker de tu navegador para visitar esta web.
Si no sabes hacerlo en Chrome, consulta el siguiente enlace. Si utilizas Firefox, puedes consultar este otro enlace.
Esto mejorará tu experiencia en este sitio web.