Archivo de registro de salida de registro de Git

82

Estoy haciendo una tarea en un curso universitario y estoy usando git como control de versiones para esta tarea. El juego en el que he estado trabajando está completo, sin embargo, junto con la mano, me gustaría enviar el registro de git, mostrando efectivamente mi progreso durante el tiempo que he estado trabajando en él.

He intentado esto:

git log --stat > log.log

Pero más o menos me da cosas muy ilegibles. ¿Alguien puede ayudarme con un comando para que pueda obtener un buen formato en esto?

Sebastián
fuente
¿En qué quieres que se enfoque la salida? ¿Los mensajes de confirmación? ¿La ramificación? ¿Las fechas? ¿Los archivos? ¿Los cambios?
GoZoner

Respuestas:

132

Recomendaría usar un formato diferente al predeterminado. Mi elección habitual es un resumen con el gráfico, pero el resumen de una línea por sí solo suele ser suficiente.

Opción 1: resumen de una línea con gráfico

git log --pretty=format:'%h : %s' --graph > log.log

Resultados en:

* 2d3acf9 : ignore errors from SIGCHLD on trap
*   5e3ee11 : Merge branch 'master' of git://github.com/dustin/grit
|\  
| * 420eac9 : Added a method for getting the current branch.
* | 30e367c : timeout code and tests
* | 5a09431 : add timeout protection to grit
* | e1193f8 : support for heads with slashes in them
|/  
* d6016bc : require time for xmlschema

Opción 2: resumen de una línea sin gráfico

git log --pretty=format:'%h was %an, %ar, message: %s' > log.log

Resultados en:

a6b444f was Scott Chacon, 5 days ago, message: dammit, this is the second time this has re
49d77f7 was Scott Chacon, 8 days ago, message: modified index to create refs/heads if it i
9764edd was Hans Engel, 11 days ago, message: Add diff-lcs dependency
e1ba1e3 was Hans Engel, 11 days ago, message: Add dependency for Open4
0f87b4d was Scott Chacon, 12 days ago, message: merged recent changes

Puede encontrar más opciones de formato en los documentos aquí.

Rápido
fuente
Obtengo el uso '-' para separar las rutas de las revisiones
Marian Klühspies
1
Puede encontrar los marcadores de posición de formato en git-scm.com/docs/git-log . Búsqueda de subtítulos "formatos bonitos"
Eric Majerus
FYI: Sé que esta respuesta es antigua, pero el enlace "docs" está roto. Ciertamente no voy a hacer lo que otros me han hecho: votar en contra de mi respuesta 3, 4 o más de 5 años después debido a que el enlace se estropea más adelante. Envié una edición para que apunte a git-scm.com ( git-scm.com/docs/pretty-formats ) FYI.
Erick Brown
Nombre de objeto no válido% h
Contenedor codificado
10

Prueba esta línea

git log > log.txt

Mayur
fuente
1
Esta es la respuesta básica, todo lo que necesitaba.
Jonathan
1
git log solo mostrará etiquetas y ramas (todas las ramas, incluidas las ramas remotas) en la consola. Sin embargo, git log> log.txt no tendrá esa información de etiqueta / rama. Realmente quiero saber cómo hacer que sean iguales (es decir, obtener resultados con información de etiqueta / rama)
Robin Hsu
4
git log --oneline --decorate > log.txt
OSITO DE PELUCHE
fuente