Liste de tous les fichiers modifiés dans un pull request dans Git/GitHub
Est-il un moyen (à partir de la ligne de commande) pour lister les noms de tous les fichiers modifiés dans un PR de Git/GitHub? Ce serait utilisée pour trouver ce que les tests doivent être exécutés dans un Travis CI à construire pour que le PR.
CI build exécute ces commandes avant d'appeler notre script:
git clone --depth=50 git://github.com/jekyll/jekyll.git jekyll/jekyll
cd jekyll/jekyll
git fetch origin +refs/pull/2615/merge
git checkout -qf FETCH_HEAD
OriginalL'auteur Alfred Xing | 2014-08-01
Vous devez vous connecter pour publier un commentaire.
En général, vous pouvez afficher la liste des fichiers modifiés entre les deux s'engage avec
git diff --name-only
:Comment afficher uniquement les noms de fichier qui a changé entre les deux commits?
(Édité basé sur la clarification.)
Le problème ici semble être la détermination de la "fusion". Si toutes les branches proviennent de maître, alors vous pourriez le faire:
git --no-pager diff --name-only FETCH_HEAD $(git merge-base FETCH_HEAD master)
Cela va vous montrer les changements entre le point où le
FETCH_HEAD
est ramifiée à partir demaster
à l'actuelFETCH_HEAD
. J'ai testé en local, et le PR branches sont coupées à partir demaster
je crois qu'il devrait travailler.git diff
... Si des modifications demaster
ont été faites après que le PR a été présenté, cette commande comprennent ces changements? (Je ne veux pas qu'ils soient inclus)Vrai, mais vous ne voudriez pas de tester ces changements? Si Un été changé dans le PR et B passe sur master depuis la PR, il peut y avoir une interaction entre A et B tels que des tests pour Un passerait, mais les tests sur B échouer.
Point valide. Mais précisément, ce ne serait pas le cas ici puisque les deux parties n'interagissent pas du tout. Je suis en train de voir si le PR a ou n'a pas modifié le
site
répertoire dans le repo, et si il a, exécutez HTML::Étuve sur elle.Vous pouvez réellement écrire ce beaucoup plus simple:
git --no-pager diff --name-only FETCH_HEAD...master
(notez les trois points). Pour plus d'informations, voir ici.ostrokach: dites-vous que
git --no-pager diff --name-only FETCH_HEAD...master
est équivalent àgit --no-pager diff --name-only FETCH_HEAD $(git merge-base FETCH_HEAD master)
? J'ai essayé cette localement et n'a pas obtenu les mêmes résultats.OriginalL'auteur zanerock
De recherche Google m'a envoyé ici, mais c'est légèrement différente de la question.
Cette question [détails] a la ligne de commande.
Cependant, j'ai besoin de la liste des fichiers, son ok si je peux voir dans le GUI
Ici une façon de voir la liste des fichiers dans l'interface utilisateur:
ouvrir la pull request
cliquez sur le bouton [Fichiers modifiés] onglet
cliquez sur la liste déroulante après 'n des fichiers dans les dessous de la ligne de [Fichiers modifiés]
(cliquez sur la v, déroulant une fois que les fichiers dans la ligne ci-dessus)
OriginalL'auteur Manohar Reddy Poreddy
Je ne pouvais pas trouver un moyen pour voir la liste des fichiers modifiés dans GitHub (c'est à dire sans le diff et les commentaires), mais il peut être fait avec ce one-liner dans le navigateur de la console:
Ce sera l'effondrement de toutes les diff blocs en laissant uniquement les noms de fichiers.
OriginalL'auteur this.lau_
Chrome console...
Remarque: Il se casse si Github changements les tags/classes/Id dans la page.
OriginalL'auteur AdamHickey