Comment puis-je avoir une liste de tous les fichiers modifiés au cours des 2 derniers jours? Je connais
git log --name-status --since="2 days ago"
mais cela va me montrer des identifiants, des dates et des messages de validation. Tout ce dont j’ai besoin, c’est la liste des noms de fichiers qui ont été modifiés.
Est-ce possible avec git?
git log --pretty=format: --name-only --since="2 days ago"
si certains fichiers se dupliquent dans plusieurs validations, vous pouvez utiliser le canal pour le filtrer
git log --pretty=format: --name-only --since="2 days ago" | sort | uniq
git diff --stat @{2.days.ago}
Court et efficace
Utilisez l’option –raw pour git log:
$ git log --raw --since=2.days
Voir la partie –diff-filter de la page d’aide de git log pour l’explication des indicateurs affichés au format –raw. Ils expliquent ce qu’il advient des fichiers de chaque validation:
--diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]] Select only files that are Added (A), Copied (C), Deleted (D), Modified (M), Renamed (R), have their type (ie regular file, symlink, submodule, ...) changed (T), are Unmerged (U), are Unknown (X), or have had their pairing Broken (B). Any combination of the filter characters (including none) can be used. When * (All-or-none) is added to the combination, all paths are selected if there is any file that matches other criteria in the comparison; if there is no file that matches other criteria, nothing is selected.
Vous pouvez faire un diff d’une version la plus proche d’il y a 2 jours avec:
git diff $(git log -1 --before="2 days ago" --format=%H).. --stat
--stat
vous donne un résumé des changements. Ajouter --name-only
pour exclure toute méta-information et ne --name-only
liste de noms de fichiers.
J’espère que cela t’aides.
git log --pretty="format:" --since="2 days ago" --name-only