lab 10 Historial
Metas
- Aprender a ver el historial de un proyecto.
La función del comando git log
es obtener el listado de qué cambios se han realizado.
Ejecute:
git log
Deberá ver …
Salida:
$ git log commit 40543214b69016a1f079a0d95ff88cc7421e9b54 Author: Jim Weirich <jim (at) edgecase.com> Date: Tue Mar 6 16:12:08 2012 -0500 Added a comment commit 1b754e9e5d528ed7a7d82c3b380fa2b2faa3ce00 Author: Jim Weirich <jim (at) edgecase.com> Date: Tue Mar 6 16:12:08 2012 -0500 Added a default value commit 30534911b25d1fab76d13d269ff6215b4c4acddd Author: Jim Weirich <jim (at) edgecase.com> Date: Tue Mar 6 16:12:08 2012 -0500 Using ARGV commit 3cbf83b6899697985d2b4fcfae9b254ab6d0ddf7 Author: Jim Weirich <jim (at) edgecase.com> Date: Tue Mar 6 16:12:07 2012 -0500 First Commit
Ésta es la lista de los cuatro cambios que hemos hecho en el repositorio hasta ahora.
Historias en una línea 01
Se tiene un gran reto de controlar exactamente qué despliega el comando log
. En lo personal, me gusta en formato de una sola línea:
Ejecute:
git log --pretty=oneline
Deberá ver …
Salida:
$ git log --pretty=oneline 40543214b69016a1f079a0d95ff88cc7421e9b54 Added a comment 1b754e9e5d528ed7a7d82c3b380fa2b2faa3ce00 Added a default value 30534911b25d1fab76d13d269ff6215b4c4acddd Using ARGV 3cbf83b6899697985d2b4fcfae9b254ab6d0ddf7 First Commit
Controlando cuáles entradas se muestran 02
Existen muchas opciones para seleccionar cuántas entradas se muestran en el log. Juegue con alguna de las siguientes opciones:
git log --pretty=oneline --max-count=2 git log --pretty=oneline --since='5 minutes ago' git log --pretty=oneline --until='5 minutes ago' git log --pretty=oneline --author=<your name> git log --pretty=oneline --all
Vea man git-log para todos los detalles.
Embelleciéndolo 03
Aquí está lo que uso para revisar los cambios hechos en la última semana. Agregaría --author=jim
si sólo quisiera ver los cambios que yo he hecho..
git log --all --pretty=format:"%h %cd %s (%an)" --since='7 days ago'
Lo último en formatos de Log 04
Conforme pase el tiempo, he decidido que me gusta el siguiente formato para el log en la mayoría de mis trabajos.
Ejecute:
git log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short
Se vería así:
Salida:
$ git log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short * 4054321 2012-03-06 | Added a comment (HEAD, master) [Jim Weirich] * 1b754e9 2012-03-06 | Added a default value [Jim Weirich] * 3053491 2012-03-06 | Using ARGV [Jim Weirich] * 3cbf83b 2012-03-06 | First Commit [Jim Weirich]
Mirémoslo a detalle:
--pretty="..."
define el formato de la salida.%h
es el hash abreviado del Commit%d
son algunos decorados en el Commit (por ejemplo, la cabecera del branch heads o los tags)%ad
es la fecha en que se realizó%s
el comentario%an
el nombre del autor--graph
informa a git que despliegue el arbol de Commit en un layout gráfico en código ASCII--date=short
mantiene la fecha en formato bonito y corto
Esto es mucho como para escribir en cada ocasión que desee ver el log. Afortunadamente aprenderemos sobre los alias en git en el próximo laboratorio.
Otra herramientas 05
Tanto gitx
(para Macs) y gitk
(cualquier plataforma) son útiles para explorar el historial.