Git Diff

1 λεπτά

Πίνακας περιεχομένων

  1. Τι είναι το diff;
  2. Προβολή των διαφορών
  3. Τύποι diff
  4. Γρήγορη ανάγνωση
  5. Πρακτικές εντολές

1. Τι είναι το diff;

Git diff = Να δείτε ΑΚΡΙΒΩΣ τι άλλαξε στα αρχεία σας.

Γιατί είναι κρίσιμο;

  • Πριν το commit: επαλήθευση των τροποποιήσεών σας
  • Αποσφαλμάτωση: κατανόηση τι έσπασε
  • Αναθεώρηση: προβολή της εργασίας των συναδέλφων

Με λίγα λόγια: το diff = τα γυαλιά σας για να βλέπετε τις αλλαγές!

Επιστροφή στον πίνακα περιεχομένων

2. Προβολή των διαφορών

bash
mkdir demo-diff && cd demo-diff
git init

echo "print('Version 1')" > app.py
git add . && git commit -m "Version initiale"

# Τροποποίηση του αρχείου
echo "print('Version 2 - Updated!')" > app.py

# Προβολή των αλλαγών
git diff                    # Σύγκριση working directory με τα τελευταία commits

# Προσθήκη στο staging
git add app.py

# Προβολή διαφοράς staged έναντι τελευταίων commits  
git diff --staged

# Προβολή διαφοράς μεταξύ 2 commits
git log --oneline          # Ανάκτηση των hash
git diff <hash1> <hash2>

Επιστροφή στον πίνακα περιεχομένων

3. Τύποι diff

ΕντολήΣυγκρίνει
git diffWorking directory έναντι τελευταίου commit
git diff --stagedStaging area έναντι τελευταίου commit
git diff HEADWorking directory + staging έναντι τελευταίου commit
git diff <commit1> <commit2>Μεταξύ 2 συγκεκριμένων commits
git diff <branche1> <branche2>Μεταξύ 2 κλάδων

Επιστροφή στον πίνακα περιεχομένων

4. Γρήγορη ανάγνωση

Τυπική μορφή:

diff --git a/app.py b/app.py
index abc123..def456 100644
--- a/app.py          # Παλιό αρχείο
+++ b/app.py          # Νέο αρχείο
@@ -1 +1 @@           # Θέση των αλλαγών
-print('Version 1')   # Διαγραμμένη γραμμή (κόκκινο)
+print('Version 2')   # Προστεθειμένη γραμμή (πράσινο)

Γρήγορη ανάγνωση:

  • --- και +++ = αρχεία που συγκρίνονται
  • - = διαγραμμένο (κόκκινο στο τερματικό)
  • + = προστεθειμένο (πράσινο στο τερματικό)

Επιστροφή στον πίνακα περιεχομένων

5. Πρακτικές εντολές

ΕντολήΧρησιμότητα
git diff --name-onlyΜόνο τα ονόματα των τροποποιημένων αρχείων
git diff --statΣτατιστικά των αλλαγών
git diff --word-diffΔιαφορές σε επίπεδο λέξεων
git diff HEAD~1 HEADΤελευταίο commit έναντι προτελευταίου

Diff = ο ανιχνευτής αλλαγών σας. Χρησιμοποιήστε τον ΠΑΝΤΑ!

Επιστροφή στον πίνακα περιεχομένων