Détail de changement après la commande Git pull
Après un Git pull, sa sortie en donne un résumé sur le montant de la modification.
Comment puis-je voir les uns ou quelques-uns des fichiers détaillé des changements?
Ok, voici ma question pour Jefromi:
-
Comment puis-je savoir si j'ai été tirant à maîtriser? Tout ce que je fait est "git pull".
-
Ce qui n'a point de maître et quelle est la différence entre le maître et la TÊTE, les deux têtes par défaut de Git?
-
Comment puis-je voir le détail du changement dans un fichier spécifique?
-
Comment puis-je voir le changement dans le résumé de sortie par le dernier
git pull
de nouveau? -
Quelle est la différence entre
git diff
etgit whatchanged
?
- Bon d'accord, c'répétées de l'ajout de nouvelles questions par l'intermédiaire de modifications n'est pas exactement la façon dont le système est destiné à être utilisé. Vous pouvez aussi très facilement répondre à beaucoup de vos questions en regardant les pages de manuel ou tout simplement en essayant des choses. Par exemple,
git diff
clairement les sorties de diff, tandis quegit whatchanged
clairement affiche une liste de commettre des informations, chacun contenant une liste de ce que les fichiers modifiés. - Probablement à cause de votre faible rep.
- Il ne prend que 50 rep à laisser des commentaires, et de 15 à upvote.
- Sur mon portable avec Ubuntu, il travaille parfois parfois ne le font pas. J'ai temporairement trouvé un autre ordinateur avec Centos et fais ce commentaire. Sur les deux ordinateurs, je suis en utilisant Firefox.
- Très bizarre. Vous pourriez vouloir à la tête de plus de meta et de voir si c'est un problème connu/le signaler.
- TL;DR:
git diff HEAD@{1} HEAD
(TÊTE sensible à la casse)
Vous devez vous connecter pour publier un commentaire.
Supposons que vous êtes en tirant à maîtriser. Vous pouvez vous référer à la position précédente de
master
parmaster@{1}
(ou mêmemaster@{10.minutes.ago}
; voir la spécification des révisions de la section de la git-rev-parse la page de manuel), de sorte que vous pouvez faire des choses commeVoir tous les changements:
git diff master@{1} master
Voir les modifications apportées à un fichier donné:
git diff master@{1} master <file>
De voir tous les changements dans un répertoire donné:
git diff master@{1} master <dir>
Voir le résumé des changements:
git diff --stat master@{1} master
Quant à votre question "comment puis-je savoir si je suis sur le master"... eh bien, à l'aide de branches est une partie importante du workflow Git. Vous devriez toujours être conscient de ce que la direction générale, vous êtes - si vous avez tiré des modifications, vous pouvez tirer sur eux à la branche de droite! Vous pouvez voir une liste de toutes les branches, avec un astérisque les extraits, avec la commande
git branch
. L'actuel nom de la branche est également imprimé avec la sortie degit status
. Je recommande fortement l'écrémage dans les pages de manuel des commandes à utiliser - c'est un excellent moyen pour lentement ramasser quelques connaissances.Et votre dernière question:
HEAD
est le nom de l'extrait de la branche. En effet, vous pouvez utiliserHEAD
etHEAD@{1}
dans ce contexte, mais c'est un peu plus robuste pour utiliser les branches, car si vous aller et découvrez une autre branche.HEAD
est maintenant que la deuxième branche, etHEAD@{1}
est maintenantmaster
- pas ce que vous voulez!Pour éviter de devoir poser un tas de petites questions comme celle-ci, vous devriez jeter un coup d'oeil à un Git tutoriel. Il existe des millions sur le web, par exemple:
git diff master@{1} master
, sinon le changement est indiqué "à l'envers", c'est à dire les insertions devenir suppressions etc.git diff master@{1} master
n'a pas fonctionné pour moi au lieugit diff master~1 master
a fait le travail pour moi.git reflog master
à comprendre ce qu'.Dire vous faire un git pull comme ceci:
Vous pouvez voir la diff de ce qui a changé en utilisant le numéro de révision:
git diff --stat a407564..9f52bed
" ou juste un "résumé de lagit diff --summary a407564..9f52bed
"La commande elle-même fonctionne comme ceci:
et par défaut réfère à la branche courante. Vous pouvez vérifier vos branches en utilisant
Ce sera la liste de vos locaux et à distance des branches comme pour l'e.g alors (Ajout d'une
---
comme séparateur entre le local et le distant pour le rendre plus clair)Lorsque vous jetez un coup d'œil à une distance repo, vous verrez à quoi vous faites allusion:
liste comme suit:
Il est donc assez facile d'être sûr de savoir où tirer et de pousser à.
La plus simple et la la plus élégante façon (omi) est:
Cela vous donnera deux pâtés de maisons de l'information sur les changements dans votre traction une l'état actuel des travaux. Exemple de sortie (j'ai ajouté un
---
comme séparateur entre--stat
et--dirstat
de sortie pour le rendre plus clair):De cette façon est une sorte de hacky, mais il va vous permettre d'utiliser des outils graphiques comme
gitk
ougitg
ougit-gui
:La réponse avec le plus upvotes donne le meilleur moyen à l'aide de l'outil git, mais je utiliser cette méthode parce que je peux ensuite utiliser des outils avec une interface graphique pour voir les changements 😛
J'avais alors l'étape supplémentaire de faire un
git checkout .
et ensuite de fairegit pull
à nouveau alors que j'ai bien tirer et fusionner, mais j'ai de la valeur à la capacité d'examiner les différences dans une interface graphique assez à faire avec le surplus de deux étapes.