Mostrar la lista de archivos modificados en confirmaciones recientes en un directorio específico

3 minutos de lectura

avatar de usuario de sumek
sumek

en Subversión, svn log muestra mensajes de registro de confirmación (referencia).

¿Cómo puedo hacer lo siguiente en git?

svn log -v -l 10 ./

avatar de usuario de htanata
htanata

Este es más similar al comando svn, ya que muestra el estado del archivo: agregado (A), copiado (C), eliminado (D), modificado (M), renombrado (R) y otros.

git log --name-status -10 path/to/dir

Vale la pena mirar la página de documentación completa para git log. Ahí aprenderás que -10 se refiere a los últimos 10 compromisos, y -p te dará el parche completo, entre una variedad de otras cosas.

  • Para completar: el conjunto comúnmente utilizado de opciones similares es -p (parche completo), --stat (números de líneas cambiadas), --numstat (me gusta --stat pero legible por máquina), --name-statusy --name-only (sólo los nombres de archivo).

    – Cascabel

    5 de noviembre de 2010 a las 18:04

  • Para cualquiera que llegue a esta pregunta sin saberlo, el -10 se refiere a la cantidad de confirmaciones que desea mostrar. Si necesita una lista completa de confirmaciones, intente hacer que el número sea inusualmente grande, como -1000 o más, según sea necesario.

    – julián soro

    08/01/2015 a las 20:07

  • ¿También es posible ver el historial desde una confirmación o etiqueta específica? Hace cientos de confirmaciones, así que tratando de contar eso…

    – Señor Fox

    13 de julio de 2016 a las 8:16


  • @Señor Fox git log <from revision>..p.ej git log abc123... Lea más sobre el formato de rango aquí: kernel.org/pub/software/scm/git/docs/…

    – htanata

    13 de julio de 2016 a las 17:38

Para mostrar todos los archivos modificados en las últimas 10 confirmaciones, sin ninguna información de confirmación, haga lo siguiente:

git diff --name-only HEAD~10..HEAD yourdir

  • Solución perfecta para reabrir archivos en su editor.

    – cdosborn

    28 de julio de 2015 a las 16:54

  • Esta solución solo enumera las rutas de los archivos, no comentarios, lo cual es muy apreciado sobre la respuesta aceptada. Si todo lo que desea es una lista de los archivos que han cambiado en las confirmaciones especificadas, y esta solución hace exactamente eso.

    – Gran rico

    21 de enero de 2020 a las 12:10

  • Un inconveniente es que comprueba las últimas 10 confirmaciones de todo el repositorio, no solo las últimas 10 de “yourdir”

    – Slartibartfast

    13 oct a las 12:09

Intenta hacerlo

git log -p -10 yourdir/

Deberia de funcionar.

  • El OP solicitó una lista de archivos modificados, no el parche completo.

    – Cascabel

    5 de noviembre de 2010 a las 12:19

  • Si desea cambiar la lista de archivos, puede hacer –stat en lugar de -p

    – azul112

    5 de noviembre de 2010 a las 12:22

Avatar de usuario de Sayan Biswas
Sayan Biswas

Para mostrar todos los commit de su rama (reciente y antigua), debe contar la cantidad de confirmaciones en la rama

git rev-list --count branch_name

Una vez que obtenga todo el recuento de confirmaciones, puede ejecutar

git log --name-status -countNumber /path

He tenido mucha suerte con esto:

$ git reflog --name-status -10 <path/to/folder/of/interest>

Encuentra cosas log no es. Canalice la salida a grep si conoce parte de un nombre.

Avatar de usuario de Manvendra_0611
Manvendra_0611

git show $commitId$ –solo nombre

Dará como resultado los archivos que se modifican durante este compromiso.

¿Ha sido útil esta solución?