10 εντολές Git κάθε προγραμματιστής πρέπει να γνωρίζει

Το Git είναι ένα σημαντικό μέρος του καθημερινού προγραμματισμού (ειδικά εάν εργάζεστε με μια ομάδα) και χρησιμοποιείται ευρέως στη βιομηχανία λογισμικού.

Δεδομένου ότι υπάρχουν πολλές διαφορετικές εντολές που μπορείτε να χρησιμοποιήσετε, η εκμάθηση του Git απαιτεί χρόνο. Αλλά ορισμένες εντολές χρησιμοποιούνται πιο συχνά (μερικές καθημερινές). Έτσι, σε αυτήν την ανάρτηση, θα μοιραστώ και θα εξηγήσω τις 10 πιο χρησιμοποιούμενες εντολές Git που κάθε προγραμματιστής πρέπει να γνωρίζει.

Σημείωση: Για να κατανοήσετε αυτό το άρθρο, πρέπει να γνωρίζετε τα βασικά του Git.

1. Κλώνος Git

Το Git clone είναι μια εντολή για λήψη του υπάρχοντος πηγαίου κώδικα από ένα απομακρυσμένο αποθετήριο (όπως το Github, για παράδειγμα). Με άλλα λόγια, ο κλώνος Git δημιουργεί βασικά ένα πανομοιότυπο αντίγραφο της τελευταίας έκδοσης ενός έργου σε ένα αποθετήριο και το αποθηκεύει στον υπολογιστή σας.

Υπάρχουν μερικοί τρόποι λήψης του πηγαίου κώδικα, αλλά κυρίως προτιμώ τον κλώνο με τον τρόπο https :

git clone 

Για παράδειγμα, εάν θέλουμε να κατεβάσετε ένα έργο από το Github, το μόνο που χρειάζεται να κάνουμε είναι να κάνουμε κλικ στο πράσινο κουμπί (κλώνος ή λήψη), να αντιγράψετε τη διεύθυνση URL στο πλαίσιο και να την επικολλήσετε μετά την εντολή git clone που έχω δείξει σωστά πάνω από.

Αυτό θα δημιουργήσει ένα αντίγραφο του έργου στον τοπικό χώρο εργασίας σας, ώστε να μπορείτε να ξεκινήσετε να εργάζεστε με αυτό.

2. Υποκατάστημα Git

Τα υποκαταστήματα είναι εξαιρετικά σημαντικά στον κόσμο της git. Χρησιμοποιώντας υποκαταστήματα, αρκετοί προγραμματιστές μπορούν να εργαστούν παράλληλα στο ίδιο έργο ταυτόχρονα. Μπορούμε να χρησιμοποιήσουμε την εντολή git branch για τη δημιουργία, καταχώριση και διαγραφή κλάδων.

Δημιουργία νέου κλάδου:

git branch 

Αυτή η εντολή θα δημιουργήσει έναν κλάδο τοπικά . Για να προωθήσετε το νέο κλάδο στο απομακρυσμένο αποθετήριο, πρέπει να χρησιμοποιήσετε την ακόλουθη εντολή:

git push -u  

Προβολή κλάδων:

git branch or git branch --list

Διαγραφή υποκαταστήματος:

git branch -d 

3. Παραγγελία Git

Αυτή είναι επίσης μια από τις πιο χρησιμοποιούμενες εντολές Git. Για να εργαστείτε σε ένα υποκατάστημα, πρώτα θα πρέπει να το μεταβείτε Χρησιμοποιούμε το git checkout ως επί το πλείστον για εναλλαγή από το ένα υποκατάστημα στο άλλο. Μπορούμε επίσης να το χρησιμοποιήσουμε για τον έλεγχο αρχείων και δεσμεύσεων.

git checkout 

Υπάρχουν μερικά βήματα που πρέπει να ακολουθήσετε για την επιτυχημένη εναλλαγή μεταξύ κλάδων:

  • Οι αλλαγές στον τρέχοντα κλάδο σας πρέπει να πραγματοποιηθούν ή να αποθηκευτούν πριν από την εναλλαγή
  • Το υποκατάστημα που θέλετε να δείτε πρέπει να υπάρχει στην τοπική σας περιοχή

Υπάρχει επίσης μια εντολή συντόμευσης που σας επιτρέπει να δημιουργήσετε και να μεταβείτε σε έναν κλάδο ταυτόχρονα:

git checkout -b 

Αυτή η εντολή δημιουργεί έναν νέο κλάδο στην τοπική σας (-b σημαίνει κλάδος) και ελέγχει τον κλάδο σε νέο αμέσως μετά τη δημιουργία του.

4. Κατάσταση Git

Η εντολή κατάστασης Git μας παρέχει όλες τις απαραίτητες πληροφορίες σχετικά με τον τρέχοντα κλάδο. 

git status

Μπορούμε να συλλέξουμε πληροφορίες όπως:

  • Εάν το τρέχον υποκατάστημα είναι ενημερωμένο
  • Είτε υπάρχει κάτι να δεσμευτεί, να σπρώξει ή να τραβήξει
  • Είτε υπάρχουν αρχεία σταδιακά, unstaged ή unracked
  • Είτε υπάρχουν αρχεία που έχουν δημιουργηθεί, τροποποιηθεί ή διαγραφεί

5. Git add

Όταν δημιουργούμε, τροποποιούμε ή διαγράφουμε ένα αρχείο, αυτές οι αλλαγές θα συμβούν στην τοπική μας και δεν θα συμπεριληφθούν στην επόμενη δέσμευση (εκτός αν αλλάξουμε τις διαμορφώσεις).

Πρέπει να χρησιμοποιήσουμε την εντολή git add για να συμπεριλάβουμε τις αλλαγές ενός αρχείου στην επόμενη δέσμευσή μας. 

Για να προσθέσετε ένα μόνο αρχείο:

git add 

Για να προσθέσετε τα πάντα ταυτόχρονα:

git add -A

Όταν επισκέπτεστε το παραπάνω στιγμιότυπο οθόνης στην 4η ενότητα, θα δείτε ότι υπάρχουν ονόματα αρχείων που είναι κόκκινα - αυτό σημαίνει ότι είναι αρχεία χωρίς στάδια. Τα αρχεία χωρίς στάδια δεν θα συμπεριληφθούν στις δεσμεύσεις σας.

Για να τα συμπεριλάβουμε, πρέπει να χρησιμοποιήσουμε το git add:

Σημαντικό: Η εντολή git add δεν αλλάζει το αποθετήριο και οι αλλαγές δεν αποθηκεύονται μέχρι να χρησιμοποιήσουμε το git commit.

6. Git δεσμεύστε

Αυτή είναι ίσως η πιο χρησιμοποιημένη εντολή του Git. Μόλις φτάσουμε σε ένα συγκεκριμένο σημείο της ανάπτυξης, θέλουμε να αποθηκεύσουμε τις αλλαγές μας (ίσως μετά από μια συγκεκριμένη εργασία ή ζήτημα).

Το Git commit είναι σαν να θέτετε ένα σημείο ελέγχου στη διαδικασία ανάπτυξης στο οποίο μπορείτε να επιστρέψετε αργότερα, αν χρειαστεί.

Πρέπει επίσης να γράψουμε ένα σύντομο μήνυμα για να εξηγήσουμε τι έχουμε αναπτύξει ή αλλάξει στον πηγαίο κώδικα.

git commit -m "commit message"

Σημαντικό: Το Git commit αποθηκεύει τις αλλαγές σας μόνο τοπικά.

7. Git ώθηση

Αφού πραγματοποιήσετε τις αλλαγές σας, το επόμενο πράγμα που θέλετε να κάνετε είναι να στείλετε τις αλλαγές σας στον απομακρυσμένο διακομιστή. Το Git push ανεβάζει τις δεσμεύσεις σας στο απομακρυσμένο αποθετήριο.

git push  

Ωστόσο, εάν το υποκατάστημα σας δημιουργήθηκε πρόσφατα, τότε πρέπει επίσης να ανεβάσετε το υποκατάστημα με την ακόλουθη εντολή:

git push --set-upstream  

ή

git push -u origin 

Σημαντικό: Το Git push ανεβάζει μόνο αλλαγές που έχουν δεσμευτεί.

8. Τραβήξτε το Git

Η εντολή git pull χρησιμοποιείται για τη λήψη ενημερώσεων από το απομακρυσμένο repo. Αυτή η εντολή είναι ένας συνδυασμός git fetch και git merge που σημαίνει ότι, όταν χρησιμοποιούμε git pull, λαμβάνει τις ενημερώσεις από απομακρυσμένο αποθετήριο (git fetch) και εφαρμόζει αμέσως τις τελευταίες αλλαγές στο τοπικό σας (git merge).

git pull 

Αυτή η λειτουργία μπορεί να προκαλέσει διενέξεις που πρέπει να επιλύσετε χειροκίνητα.

9. Επαναφορά Git

Μερικές φορές πρέπει να αναιρέσουμε τις αλλαγές που κάναμε. Υπάρχουν διάφοροι τρόποι για να αναιρέσετε τις αλλαγές μας τοπικά ή απομακρυσμένα (εξαρτάται από αυτό που χρειαζόμαστε), αλλά πρέπει να χρησιμοποιήσουμε προσεκτικά αυτές τις εντολές για να αποφύγουμε ανεπιθύμητες διαγραφές.

Ένας ασφαλέστερος τρόπος με τον οποίο μπορούμε να αναιρέσουμε τις δεσμεύσεις μας είναι χρησιμοποιώντας το git revert . Για να δούμε το ιστορικό δεσμεύσεών μας, πρώτα πρέπει να χρησιμοποιήσουμε το git log - online:

Τότε πρέπει απλώς να καθορίσουμε τον κωδικό κατακερματισμού δίπλα στη δέσμευσή μας ότι θα θέλαμε να αναιρέσουμε:

git revert 3321844

Μετά από αυτό, θα δείτε μια οθόνη όπως παρακάτω - απλώς πατήστε το πλήκτρο shift + q για έξοδο:

Η εντολή επαναφοράς Git θα αναιρέσει τη δεδομένη δέσμευση, αλλά θα δημιουργήσει μια νέα δέσμευση χωρίς να διαγράψει την παλαιότερη:

Το πλεονέκτημα της χρήσης git revert είναι ότι δεν αγγίζει το ιστορικό δεσμεύσεων. Αυτό σημαίνει ότι εξακολουθείτε να βλέπετε όλες τις δεσμεύσεις στην ιστορία σας, ακόμη και τις ανεστραμμένες. 

Ένα άλλο μέτρο ασφαλείας εδώ είναι ότι όλα συμβαίνουν στο τοπικό μας σύστημα, εκτός εάν τα ωθήσουμε στο απομακρυσμένο repo. Γι 'αυτό το git revert είναι ασφαλέστερο στη χρήση και είναι ο προτιμώμενος τρόπος για να αναιρέσετε τις δεσμεύσεις μας.

10. Συγχώνευση Git

Όταν ολοκληρώσετε την ανάπτυξη στον κλάδο σας και όλα λειτουργούν καλά, το τελευταίο βήμα είναι η συγχώνευση του κλάδου με τον γονικό κλάδο (dev ή master). Αυτό γίνεται με την git mergeεντολή.

Το Git merge ενσωματώνει βασικά τον κλάδο χαρακτηριστικών σας με όλες τις δεσμεύσεις του πίσω στον κλάδο dev (ή master). Είναι σημαντικό να θυμάστε ότι πρέπει πρώτα να βρίσκεστε στον συγκεκριμένο κλάδο που θέλετε να συγχωνεύσετε με τον κλάδο λειτουργιών.

Για παράδειγμα, όταν θέλετε να συγχωνεύσετε τον κλάδο χαρακτηριστικών σας στον κλάδο dev:

Πρώτα πρέπει να μεταβείτε στον κλάδο dev:

git checkout dev

Πριν από τη συγχώνευση, πρέπει να ενημερώσετε το τοπικό υποκατάστημα dev:

git fetch

Τέλος, μπορείτε να συγχωνεύσετε τον κλάδο λειτουργιών σας σε dev:

git merge 

Συμβουλή: Βεβαιωθείτε ότι το υποκατάστημα dev έχει την πιο πρόσφατη έκδοση προτού συγχωνεύσετε τα καταστήματά σας, διαφορετικά ενδέχεται να αντιμετωπίσετε διενέξεις ή άλλα ανεπιθύμητα προβλήματα.

Αυτές είναι λοιπόν οι 10 εντολές git που χρησιμοποιούνται πιο συχνά που συναντώ στον καθημερινό προγραμματισμό μου. Υπάρχουν πολλά περισσότερα πράγματα που πρέπει να μάθετε για το Git και θα τα εξηγήσω αργότερα σε ξεχωριστά άρθρα.

Αν θέλετε να μάθετε περισσότερα σχετικά με την ανάπτυξη ιστού, μη διστάσετε να με ακολουθήσετε στο Youtube !

Ευχαριστούμε που το διαβάσατε!