2009-09-17 24 views
22

me gusta mucho el formato de registro corto git donde puedo ver el autor, la fecha y la descripción cambio como éste:Git cómo guardar un registro git preestablecido --format

git log --pretty=format:"%h%x09%an%x09%ad%x09%s" 

que da salida:

fbc3503 mads Thu Dec 4 07:43:27 2008 +0000 show mobile if phone is null... 
    ec36490 jesper Wed Nov 26 05:41:37 2008 +0000 Cleanup after [942]: Using timezon 
    ae62afd tobias Tue Nov 25 21:42:55 2008 +0000 Fixed #67 by adding time zone supp 
    164be7e mads Tue Nov 25 19:56:43 2008 +0000 fixed tests, and a 'unending appoi 

(de la pregunta stackOverflow "link text")

Ahora, la pregunta es, ¿Cómo puedo guardar esto como un nuevo formato en mi máquina así que sólo tengo que escribir algo como, por ejemplo:

git log --format=jespers_favourite 
+0

He solucionado la respuesta, después de su comentario. – VonC

Respuesta

20

Considerando la página del manual git log menciones:

--pretty[=<format>] 
--format[=<format>] 

Pretty-imprimir el contenido de los registros de comprometerse en un formato determinado, donde puede ser uno de oneline, a corto, medio lleno , más completo, correo electrónico, sin formato y formato :. Cuando se omite, el formato predeterminado es medio.

<format> solo pueden tener valores predefinidos.
Eso solo le deja la posibilidad de define an alias como un acceso directo para ese comando.

[alias] 
     jespers_favourite = log --pretty=format:"%h%x09%an%x09%ad%x09%s" 

o

[alias] 
     compactlog = log --pretty=format:"%h%x09%an%x09%ad%x09%s" 
+0

@ftassi Buen punto. He restaurado el enlace (con el que mencionas). – VonC

+0

Necesitaba escapar de las comillas también, para hacer que esto funcione – ftassi

+0

@ftassi, necesitaba escapar de la cita en un comando 'git config alias.xxx ...'? ¿No está en el archivo '.config'? – VonC

28

En las nuevas versiones de Git (confirmados con v1.7.8) es posible establecer nombrados formatos de registro bastante-impresión usando git config pretty.named_format. Se pueden establecer en un en toda la máquina, usuario o archivo de nivel con el argumento <file-option>.

para crear un formato de registro denominado jespers_favourite o todo el uso de la máquina --system

git config --system pretty.jespers_favourite "%h%x09%an%x09%ad%x09%s" 

Para el uso de un solo usuario '--global'

git config --global pretty.jespers_favourite "%h%x09%an%x09%ad%x09%s" 

deja en blanco el argumento <file-option> tome por defecto la configuración del archivo de configuración del repositorio actual, .git/config a menos que se defina lo contrario.

+2

Esto es casi correcto, pero hay un par de advertencias importantes: el nombre no puede contener un guión bajo (al menos en Git 1.7.10), y el formato personalizado debe comenzar con "formato:" (o consultar uno de los formatos incorporados). – RJHunter

0

Puede configurar el formato bonito predeterminado usando git-config. De la documentación git-config:

format.pretty 
      The default pretty format for log/show/whatchanged command, See git-log(1), git-show(1), git-whatchanged(1). 

Por ejemplo:

git config --add format.pretty fuller

o formato deseado de su creador original:

git config --add format.pretty "%h%x09%an%x09%ad%x09%s"

Al igual que con otros ajustes git config, el formato. pretty se puede configurar en el alcance global, del sistema o del repositorio (predeterminado).

Cuestiones relacionadas