¿Hay alguna forma de generar un registro de confirmación de git para el último mes y exportarlo como un archivo CSV? Estoy buscando algo que pueda ejecutar desde la línea de comandos o una aplicación de terceros. Me gustaría las siguientes columnas: autor, fecha de confirmación, asunto, archivo editado y hash.¿Cómo puedo generar un registro de compromiso de git para el último mes y exportarlo como CSV?
Respuesta
Usted puede utilizar la opción --since
y --pretty
de git log
, por ejemplo:
git log --since="last month" --pretty=format:'%h,%an,%ar,%s' > log.csv
, consultar la sección FORMATOS BONITAS del Git log man page para más opciones.
Este comando crea un archivo CSV con formato que contiene hachís, usuario, fecha/hora, descripción, archivos cambiados, inserciones, supresiones
git log --pretty=format:'"%h","%an","%aD","%s",' --shortstat --no-merges | paste - - - > log.csv
los commits de fusión estaban estropeando la salida, añadiendo el parámetro '--no-merges' ayudado con eso. También usé '% x09' para un separador de pestañas en lugar de coma para aquellos textos de confirmación que contienen comas. –
Para añadir, si se desea aplicar el intervalo de fechas, añadir o --after --antes en este formato "aaaa-mM-d"
git log --before="2016-12-1" --pretty=format:'"%h","%an","%ae","%aD","%s",' --shortstat --no-merges | paste - - - > log.csv
- 1. ¿Escribir en el archivo CSV y exportarlo?
- 2. Cómo eliminar temporalmente el último compromiso con Git?
- 3. git ¿puedo acelerar el compromiso?
- 4. Obtener el último registro de cada mes en MySQL ...?
- 5. ¿Puedo deshacer el último git push?
- 6. fecha de compromiso de Git
- 7. ¿Cómo obtengo el último día de un mes?
- 8. ¿Cómo simplemente creo un parche de mi último compromiso de git?
- 9. Cómo obtener el último día del mes
- 10. ¿Cómo puedo obtener el último día del mes en C#?
- 11. Obtener los padres de un compromiso de fusión en git
- 12. Primer y último día del mes actual
- 13. ¿Cómo puedo obtener el primer y último día del mes con DateTime de Perl?
- 14. ¿Qué es un registro de compromiso?
- 15. Generar un libro de registro de PDF de commit git
- 16. Cómo obtener el último registro
- 17. ¿Cómo puedo hacer que un selector de fecha y hora contenga siempre el último día del mes y solo el mes y el año?
- 18. git reset --soft y volviendo al último commit
- 19. Git: ¿Cómo clonar el primer compromiso?
- 20. GIT y GitHub - ¿Cómo puedo saber quién consiguió un compromiso en un repositorio?
- 21. ¿Git comete un mensaje de compromiso y nada más?
- 22. Calcule el último día de la semana de un mes
- 23. cómo obtener el primer y último día de un mes dado
- 24. ¿Cómo obtener el último registro de Sqlite?
- 25. Gancho de compromiso de validación de código JIRA para 'git'
- 26. Git: recuperar compromiso específico
- 27. Al migrar de Subversion a Git, ¿cómo puedo encontrar un compromiso dado un número de revisión?
- 28. Obtener el último día del mes?
- 29. ¿Cómo obtengo un parche de "registro de git" para una confirmación específica
- 30. Obtener el primero o el último viernes en un mes
¡Funciona perfectamente! Gracias. ¿Hay alguna manera de incluir (en una columna separada) qué archivo fue afectado/editado? –
Esto es más complicado, porque en general, hay más de un archivo afectado por una confirmación. ¿Desea una línea por * archivo * (por lo tanto, varias líneas para la misma confirmación) o una lista (separada por punto y coma) de archivos afectados por confirmación? En cualquier caso, supongo que supondrá un script de shell. – Simon
Esto es bueno. ¿Pero también hay una opción para el último mes desde el 1 ° hasta el último día? –