Comment répertorier tous les fichiers que j'ai engagés dans une branche spécifique? J'ai engagé plus de 40 fichiers dans une branche et je dois trouver les noms de fichiers, car j'essaie de déboguer quelque chose, difficile à faire lorsque je ne me souviens pas des noms de fichiers.
git log
me donne seulement une longue liste de commits mais pas les fichiers réels.
Avez-vous essayé git ls-tree?
git ls-tree --name-only -r <branch_name>
--name-only vous donne uniquement les noms de fichiers. - r revient dans des sous-répertoires.
Si vous souhaitez que le nom du sous-répertoire soit répertorié avant d'y revenir, ajoutez -t à la liste des arguments.
Si votre branche a été dérivée de master
, vous pouvez utiliser cette commande pour répertorier tous les nouveaux fichiers ajoutés après la création d'une branche:
git diff master...new-branch --name-status --diff-filter=A
Les filtres disponibles pour --diff-filter
sont:
Added (A), Copied (C), Deleted (D), Modified (M), Renamed (R)
git log --name-only
a travaillé pour moi.
La commande git ls-files
répertorie tous les fichiers présents dans la dernière validation de la branche en cours.
Vous pouvez également utiliser git diff --name-only
pour afficher une liste des fichiers différents entre deux commits quelconques.
git log --name-status
donnera les noms et le statut des fichiers modifiés dans chaque commit
git log --name-only A travaillé pour moi.
Celui-ci peut être utile si vous voulez connaître tous les fichiers distincts qui ont été modifiés depuis le branchement:
git log --name-status develop ... branchname | grep -E "^ [AMD]\s" | trier -u
Et cette variante listera le sous-ensemble d’entre eux que vous a modifié:
git log -name-status develop ... branchname --author = | grep -E "^ [AMD]\s" | trier -u
essayez d'utiliser smartgit . c'est un client gui pour git. il a une interface utilisateur très utile et est gratuit pour une utilisation non commerciale.