57 votes

git : liste tous les fichiers ajoutés/modifiés un jour (ou une semaine/mois...)

Étant donné une période de temps (par exemple un jour, une semaine, un mois), est-il possible de lister tous les fichiers qui ont été modifiés ou ajoutés pendant cette période ?

52voto

inger Points 4841

J'utiliserais diff pour générer directement la liste des fichiers, par exemple :

 git diff --name-only "@{3 days ago}" "@{2 days ago}"

changelog.txt
newfile.txt

Au cas où vous seriez curieux de savoir quel fichier a été modifié ou ajouté, utilisez plutôt --name-status :

 git diff --name-status "@{3 days ago}" "@{2 days ago}"

M       changelog.txt
A       newfile.txt

47voto

manojlds Points 96599

Peut être ça:

   git log --since="1 day ago" --name-only --pretty=format: | sort | uniq

Incluez --until si vous voulez pour une journée, une semaine, etc.

35voto

anshuman Points 1630

J'utilise ceci pour obtenir une liste propre :

 git whatchanged --since '04/14/2013' --until '05/22/2014' --oneline --name-only --pretty=format: | sort | uniq >> changedlist.txt

12voto

Dan Cruz Points 7016

Git whatchanged devrait vous donner ce que vous voulez, en répertoriant les fichiers qui ont été modifiés.

Voici un exemple utilisant la source Git :

 $ git --version
git version 1.7.8.rc0.35.gee6df
$ git whatchanged --since '10/27/2011' --until '10/30/2011' --oneline
55e7c0a (squash) test for previous
:100755 100755 dbf623b... 53905a2... M  t/t8006-blame-textconv.sh
2564aa4 blame.c: Properly initialize strbuf after calling, textconv_object()
:100644 100644 173f286... e39d986... M  builtin/blame.c
e8e1c29 Update draft release notes to 1.7.8
:100644 100644 3045245... ddb8d37... M  Documentation/RelNotes/1.7.8.txt
8debf69 clone: Quote user supplied path in a single quote pair
:100644 100644 488f48e... efe8b6c... M  builtin/clone.c

6voto

metal4people Points 111

En voici une de plus sans lignes vides :

 git log --after="2015-11-05T16:36:00-02:00" --before="2015-11-15T16:36:00-02:00" --pretty=format:"" --name-only | sed '/^\s*$/d' | sort | uniq -u

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X