Vous cherchez git diff
. Selon votre situation exacte, il existe trois façons utiles de l'utiliser:
# show differences between index and working tree
# that is, changes you haven't staged to commit
git diff [filename]
# show differences between current commit and index
# that is, what you're about to commit
# --staged does exactly the same thing, use what you like
git diff --cached [filename]
# show differences between current commit and working tree
git diff HEAD [filename]
Cela fonctionnera récursivement sur les répertoires, et si aucun chemin n'est indiqué, il affiche toutes les modifications.
[filename]
indiquent un argument facultatif.) Avec le*
vous laissez le shell lister tous les fichiers, donc si vous êtes dans un sous-répertoire, vous n'aurez que des choses dans ce sous-répertoire (pas le repo entier), et vous ' ll manquera des changements dans les fichiers cachés.git add -p
est une alternative pour inspecter tous les fichiers.git diff --staged [filename]
votre réponse principale car il s'agit d'une situation plus souvent nécessaire.Utilisation
git-diff
:la source
git diff filename
la source
Pour moi,
git add -p
c'est le moyen le plus utile (et destiné à mon avis par les développeurs de git?) À passer en revue toutes les modifications non mises en scène (il montre le diff pour chaque fichier), choisissez un bon ensemble de modifications qui devraient aller avec une validation, puis lorsque vous avez tous ces éléments, puis utilisezgit commit
et répétez l'opération pour le prochain commit. Ensuite, vous pouvez faire de chaque commit un ensemble de modifications utiles ou significatives même si elles ont eu lieu dans différents fichiers. Je suggérerais également de créer une nouvelle branche pour chaque ticket ou activité similaire, et de basculer entre eux en utilisantcheckout
(peut-être en utilisantgit stash
si vous ne voulez pas vous engager avant de changer), bien que si vous effectuez de nombreux changements rapides, cela peut être pénible. N'oubliez pas de fusionner souvent.la source
git diff
la source
N'oubliez pas que vous effectuez des modifications , pas des fichiers.
Pour cette raison, il est très rare que je n'utilise pas
git add -p
(ou l'équivalent magit) pour ajouter mes modifications.la source
chemin peut être votre chemin système complet jusqu'au fichier ou
si vous êtes dans le projet, vous collez le chemin du fichier modifié également
pour les fichiers modifiés avec utilisation du chemin:
git status
la source
Eh bien, mon cas lorsque vous ne voulez pas vous soucier de la liste des fichiers. Montrez-les tous.
Lorsque vous avez déjà exécuté
git add
votre liste de fichiers:Dans les versions plus récentes de
git
, vous pouvez--staged
également utiliser , qui est un synonyme de--cached
.La même chose peut être utilisée pour les fichiers non ajoutés mais sans
--cached
option.Alias de commande Git pour l'option "en cache":
la source
Accédez à votre dépôt git respectif, puis exécutez la commande ci-dessous:
git diff filename
Il ouvrira le fichier avec les modifications marquées, appuyez sur la touche Entrée / Retour pour faire défiler le fichier.
Le nom de fichier PS doit inclure le chemin complet du fichier, sinon vous pouvez exécuter sans le chemin complet du fichier en allant dans le répertoire / dossier respectif du fichier
la source
Vous pouvez également utiliser un éditeur de texte convivial pour git. Ils affichent des couleurs sur les lignes qui ont été modifiées, une autre couleur pour les lignes ajoutées, une autre couleur pour les lignes supprimées, etc.
Un bon éditeur de texte qui fait cela est Atom 1.0 de GitHub .
la source