Maison > outils de développement > git > le corps du texte

Utilisation correcte de git diff

WBOY
Libérer: 2023-05-20 15:39:39
original
2625 Les gens l'ont consulté

En tant que programmeur, Git est presque un outil indispensable pour nous. En tant que système de contrôle de version, Git nous aide à gérer les modifications de fichiers et le suivi des versions. Surtout lors du développement de projets logiciels à grande échelle, Git peut aider à gérer la fusion de code entre les membres de l'équipe et à éviter des problèmes tels que des conflits et des pertes de code.

Dans Git, la commande diff est l'un des outils importants qui nous aide à comparer les différences entre les fichiers et les versions, et est souvent utilisée par les programmeurs. Cependant, bien que la commande diff semble simple, il reste encore de nombreux détails à prendre en compte dans son utilisation spécifique. Cet article présentera en détail l'utilisation correcte de la commande git diff.

  1. Syntaxe de base

La syntaxe de base de Git diff est la suivante :

git diff [<options>] [<commit>] [--] [<path> ...]
Copier après la connexion

Parmi elles, les options sont facultatives, commit est l'une des deux versions comparées, la valeur par défaut est HEAD et path est le chemin spécifié, qui est facultatif.

Remarque : « -- » est le séparateur et le chemin suivant représente le fichier ou le dossier.

Par exemple, comparez les différences entre l'espace de travail et la version actuelle :

git diff
Copier après la connexion

Comparez les différences d'un certain fichier entre l'espace de travail et la version actuelle :

git diff file1.txt
Copier après la connexion

Comparez les différences entre deux commits spécifiés :

git diff abc123 def456
Copier après la connexion
  1. Détaillé explication des paramètres

Il existe de nombreux paramètres facultatifs pour la commande git diff Voici quelques-uns des plus importants :

  • --cached : comparez la différence entre la zone de préparation et la dernière version de la branche actuelle. Par exemple :
git diff --cached
Copier après la connexion
  • --staged : identique à l'option --cached. est une autre utilisation des options ci-dessus.
git diff --staged
Copier après la connexion
  • --shortstat : affiche de courtes informations statistiques, notamment le nombre de fichiers modifiés, le nombre de lignes insérées, le nombre de lignes supprimées, etc. Par exemple :
git diff --shortstat
Copier après la connexion

Résultat :

2 files changed, 10 insertions(+), 5 deletions(-)
Copier après la connexion
  • -w ou --ignore-all-space : ignore les différences dans les espaces et les touches de tabulation. Si l'option -w est utilisée seule, les différences entre les fichiers stockés dans l'espace de travail actuel et la branche actuelle seront comparées ; si elle est utilisée avec d'autres paramètres, les différences entre les versions spécifiées seront comparées ; Par exemple :
# 比较工作区和当前版本的差异,忽略空格和tab键的变化
git diff -w

# 比较某两个提交之间的差异,忽略空格和tab键的变化
git diff -w abc123 def456
Copier après la connexion
  • --name-only : affiche uniquement le nom du fichier modifié, sans afficher le contenu de différence spécifique. Par exemple :
git diff --name-only
Copier après la connexion

Sortie :

file1.txt
file2.txt
Copier après la connexion
  • --name-status : affiche le nom du fichier et le type de changement du fichier modifié (c'est-à-dire modification, ajout, suppression, etc.). Par exemple :
git diff --name-status
Copier après la connexion

Sortie :

M file1.txt
A file3.txt
D file4.txt
Copier après la connexion
  • -U/--unified= : Affiche le nombre de lignes du contexte de différence. Si non spécifié, la valeur par défaut est 3. Par exemple :
# 显示有变化的文件的5行差异上下文内容
git diff -U5

# 比较某两个提交之间的差异,显示10行差异上下文
git diff -U10 abc123 def456
Copier après la connexion
  1. Autres usages

En plus des usages introduits ci-dessus, Git diff a également d'autres usages, tels que :

  • Comparez les différences entre deux branches :
git diff branch1..branch2
Copier après la connexion
  • Comparez deux balises Le différence entre :
git diff tag1..tag2
Copier après la connexion
  • Comparez la différence entre un certain commit et la branche actuelle :
git diff commit-id
Copier après la connexion
  • Sortie au format blog :
git diff --no-prefix > myfile.patch
Copier après la connexion

Utilisez la commande ci-dessus pour afficher la sortie diff dans un format de blog commun .

  • Comparez différentes branches ou différents référentiels :
git diff origin/master..HEAD
Copier après la connexion

Parmi eux, origin/master est la branche distante. Cette commande peut comparer simultanément des branches distantes et des branches locales, ou comparer les différences entre deux branches locales.

  1. Résumé

La commande Git diff est l'un des outils très importants du contrôle de version Git. Cet article présente en détail la syntaxe et les paramètres de base de git diff, et donne quelques utilisations particulières.

Lorsque vous utilisez Git diff, vous devez prêter attention aux besoins réels et choisir les paramètres appropriés pour éviter les impacts inutiles. Soyez également prudent lorsque vous comparez différentes branches ou différents référentiels.

Enfin, l'utilisation correcte de Git diff pendant le processus de développement peut aider les développeurs à mieux gérer le code, à mieux organiser le processus de développement et à améliorer l'efficacité du développement des projets.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!