Κατανόηση και επίλυση του ζητήματος Git Detached Head

Katanoese Kai Epilyse Tou Zetematos Git Detached Head



Στο Git Bash, το HEAD είναι ο κλάδος όπου εργάζεται ο προγραμματιστής. Ως επαγγελματίας χρήστης του Git Bash, μπορεί να έχετε ακούσει για την κατάσταση αποσύνδεσης HEAD. Ορισμένοι χρήστες βρίσκουν αυτή την κατάσταση ανησυχητική στην πραγματικότητα, σημαίνει απλώς ότι το HEAD σας δείχνει τη συγκεκριμένη δέσμευση αντί για τον κλάδο.

Αυτός ο οδηγός περιέχει περιεχόμενο σχετικά με τη βαθιά κατανόηση των κανονικών καταστάσεων αποκολλημένου ΚΕΦΑΛΗΣ και λύσεις για την επίλυση του αποσπασμένου ΚΕΦΑΛΟΥ, συμπεριλαμβανομένου του ακόλουθου περιεχομένου:

Ποια είναι η κανονική κατάσταση ΚΕΦΑΛΗΣ στο Git;

Η κανονική κατάσταση HEAD στο Git είναι όπου το HEAD σας δείχνει προς τον τρέχοντα κλάδο. Όταν ο χρήστης κάνει εναλλαγή μεταξύ διαφορετικών διακλαδώσεων, το HEAD αλλάζει επίσης σε αυτόν τον κλάδο. Δείτε τα παρακάτω βήματα για πρακτική επίδειξη.







Βήμα 1: Εμφάνιση κατάστασης καταγραφής
Ανοίξτε το Git Bash και εμφανίστε το αρχείο καταγραφής του έργου χρησιμοποιώντας το 'git log' εντολή:



αρχείο καταγραφής git



Επί του παρόντος, το ΚΕΦΑΛΙ μας δείχνει το ' κύριος ' κλαδί.





Βήμα 2: Αλλαγή υποκαταστήματος
Τώρα, μεταβείτε σε άλλο τοπικό κλάδο και, στη συνέχεια, ελέγξτε τη θέση του δείκτη HEAD. Για παράδειγμα, εξετάζουμε το « χαρακτηριστικό ' κλαδί:

git checkout χαρακτηριστικό



Το υποκατάστημα έχει αλλάξει σε ' χαρακτηριστικό '.

Βήμα 3: Ελέγξτε το αρχείο καταγραφής
Δείτε ξανά την κατάσταση καταγραφής του αποθετηρίου και ελέγξτε την κατάσταση HEAD για επαλήθευση:

αρχείο καταγραφής git

Σύμφωνα με την ακόλουθη έξοδο, το HEAD μας δείχνει τώρα στον κλάδο 'χαρακτηριστικό':

Έτσι, αυτό είναι το κανονικό σενάριο HEAD στο Git Bash.

Τι σημαίνει Αποσπασμένο Αρχηγό Κράτος;

Όπως αναφέραμε παραπάνω, μια κατάσταση αποσύνδεσης HEAD εμφανίζεται όταν το HEAD δείχνει προς τη δέσμευση αντί για τον κλάδο. Όταν μεταβείτε στην πιο πρόσφατη δέσμευση, το HEAD σας θα δείχνει προς την δέσμευση, και αυτή είναι η κατάσταση αποσύνδεσης HEAD. Για καλύτερη κατανόηση, διαβάστε το πρακτικό εγχειρίδιο.

Βήμα 1: Ελέγξτε την κατάσταση της κεφαλής
Πρώτα, εμφανίστε το αρχείο καταγραφής για να δείτε την κατάσταση HEAD εκτελώντας αυτήν την εντολή στο Git Bash:

αρχείο καταγραφής git --Σε σύνδεση

Επί του παρόντος, το HEAD δείχνει το ' χαρακτηριστικό ' κλαδί.

Βήμα 2: Ελέγξτε το Commit
Ας αλλάξουμε το HEAD στην πιο πρόσφατη δέσμευση χρησιμοποιώντας την ακόλουθη εντολή μαζί με τον κατακερματισμό SHA:

git checkout b8d840c

Θα δείτε ότι η κατάσταση αποσύνδεσης HEAD εμφανίζεται κατά τη μετάβαση στην δέσμευση αντί για τη διακλάδωση.

Βήμα 3: Ελέγξτε ξανά την κατάσταση της κεφαλής
Τώρα, εάν εμφανίσετε το αρχείο καταγραφής για να ελέγξετε την κατάσταση HEAD, θα δείτε ότι δείχνει την δέσμευση:

αρχείο καταγραφής git --Σε σύνδεση

Εδώ είναι η αποσπασμένη κατάσταση ΚΕΦΑΛΗΣ του Git.

Ποιες καταστάσεις δημιουργούν καταστάσεις αποσπασμένου κεφαλιού;

Υπάρχουν δύο περιπτώσεις στις οποίες μπορεί να φανεί μια κατάσταση αποκομμένης ΚΕΦΑΛΗΣ, δείτε τον παρακάτω πίνακα:

Κατάσταση 1 Όταν ο χρήστης μεταβαίνει στη δέσμευση κατακερματισμού SHA αντί για τη διακλάδωση.
Κατάσταση 2 Όταν ο χρήστης μεταβεί στον απομακρυσμένο κλάδο πριν από τη λήψη του.

Πώς να επιλύσετε ζητήματα ΚΕΦΑΛΗΣ αποσύνδεσης Git;

Τώρα, ας δούμε πώς μπορείτε να επιλύσετε το ζήτημα της αποσύνδεσης ΚΕΦΑΛΗΣ. Είναι αρκετά απλό να επιλυθεί, απλώς δημιουργήστε ένα νέο κλάδο, μεταβείτε σε αυτό και πραγματοποιήστε τις αλλαγές. Για να το δείτε πρακτικά δείτε τις οδηγίες που δίνονται.

Βήμα 1: Δημιουργήστε ένα νέο υποκατάστημα
Αρχικά, δημιουργήστε το νέο κλάδο μέσω του “git branch” εντολή:

κλαδί git νέος

Βήμα 2: Μετάβαση στο Created Branch
Μετά από αυτό, μεταβείτε σε αυτό μέσω του 'διακόπτης git' εντολή και πληκτρολογήστε το όνομα του κλάδου:

git διακόπτης καινούργιος

Βήμα 3: Υποβολή αλλαγών
Πραγματοποιήστε τις αλλαγές που εφαρμόστηκαν και καθορίστε το μήνυμα χρησιμοποιώντας ' Μ Ετικέτα ':

git commit 'Μεταλλαγή υποκαταστήματος'

Βήμα 4: Ελέγξτε το αρχείο καταγραφής
Τώρα, ελέγξτε την κατάσταση του HEAD εμφανίζοντας το αρχείο καταγραφής:

αρχείο καταγραφής git

Έτσι μπορείτε να επιλύσετε την κατάσταση αποσύνδεσης ΚΕΦΑΛΗΣ.

συμπέρασμα

Η κατάσταση Git detached HEAD εμφανίστηκε όταν το HEAD έδειχνε την δέσμευση αντί για τον κλάδο. Για να το επιλύσετε, απλώς δημιουργήστε ένα νέο κλάδο, μεταβείτε σε αυτό και πραγματοποιήστε τις αλλαγές. Έχετε μάθει λεπτομερώς για ζητήματα αποσπασμένου HEAD στο Git.