Πώς να τραβήξετε τις αλλαγές από το ένα υποκατάστημα στο άλλο στο Git

How Pull Changes From One Branch Another Git



Ένα αποθετήριο git περιέχει έναν ή περισσότερους κλάδους για την αποτελεσματική διαχείριση του κώδικα. Μερικές φορές, οι χρήστες git πρέπει να εργάζονται με τους πολλαπλούς κλάδους ταυτόχρονα και απαιτούν τη μετάβαση από έναν κλάδο σε άλλο κλάδο με τις αλλαγές που έγιναν στον προηγούμενο κλάδο στον τρέχοντα κλάδο πριν από την εκτέλεση. Αυτή η εργασία μπορεί να γίνει χρησιμοποιώντας πολλούς τρόπους στο git. Η εντολή stash μπορεί να χρησιμοποιηθεί από το τερματικό και να συγχωνεύσει τις εντολές από το GitHub Desktop για να τραβήξει τις αλλαγές από έναν κλάδο σε έναν άλλο κλάδο σε αυτό το σεμινάριο.

Προαπαιτούμενα

1. Εγκαταστήστε το GitHub Desktop
Το GitHub Desktop βοηθά τον χρήστη git να εκτελεί γραφικά τις εργασίες που σχετίζονται με το git. Μπορείτε εύκολα να κατεβάσετε το πιο πρόσφατο πρόγραμμα εγκατάστασης αυτής της εφαρμογής για το Ubuntu από το github.com. Πρέπει να εγκαταστήσετε και να διαμορφώσετε αυτήν την εφαρμογή μετά τη λήψη για να τη χρησιμοποιήσετε. Μπορείτε επίσης να ελέγξετε το σεμινάριο για την εγκατάσταση του GitHub Desktop στο Ubuntu για να γνωρίζετε σωστά τη διαδικασία εγκατάστασης.







2. Δημιουργήστε έναν λογαριασμό GitHub
Θα χρειαστεί να δημιουργήσετε έναν λογαριασμό GitHub για να ελέγξετε την εμφάνιση του απομακρυσμένου αποθετηρίου μετά τη δημοσίευση της αλλαγής του τοπικού αποθετηρίου.



3. Δημιουργήστε ένα τοπικό αποθετήριο
Πρέπει να δημιουργήσετε ένα τοπικό αποθετήριο για να ελέγξετε τις εντολές που χρησιμοποιούνται σε αυτό το σεμινάριο.



Χρήση της εντολής stash

Το τοπικό αποθετήριο που ονομάζεται PHP2 έχει χρησιμοποιηθεί σε αυτό το σεμινάριο για να δείξει πώς να τραβάτε αλλαγές από έναν κλάδο σε έναν άλλο κλάδο του αποθετηρίου. Δημιουργήστε ένα αρχείο με όνομα index.html στο αποθετήριο Ανοίξτε το τερματικό και μεταβείτε στο φάκελο αποθετηρίου. Εκτελέστε τις ακόλουθες εντολές για να ελέγξετε τη λίστα κλάδων, να μεταβείτε στον κύριο κλάδο και να εμφανίσετε την κατάσταση του κλάδου.





$ git υποκατάστημα
$ git checkout master
$ git κατάσταση

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση της παραπάνω εντολής. Η έξοδος δείχνει ότι το αποθετήριο περιέχει δύο κλάδους και το κύριο το υποκατάστημα ήταν αρχικά ενεργό. Μετά τη μετάβαση στο κύριος διακλάδωση, η έξοδος της κατάστασης δείχνει ότι ο τρέχων κλάδος είναι ενεργός και το index.html το αρχείο δεν παρακολουθείται.



Εκτελέστε τις ακόλουθες εντολές για να παρακολουθήσετε το μη παρακολουθούμενο αρχείο και να ελέγξετε ξανά την κατάσταση του αποθετηρίου git.

$ git add index.html
$ git κατάσταση

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση των παραπάνω εντολών. Η έξοδος της κατάστασης το δείχνει το index.html το αρχείο προστίθεται στο χώρο αποθήκευσης, αλλά πρέπει να δεσμευτεί.

Εκτελέστε τις ακόλουθες εντολές και ελέγξτε ξανά την κατάσταση του αποθετηρίου git. Η εντολή `git stash` λειτουργεί όπως η εντολή` git commit`. Ο κατάλογος εργασίας του αποθετηρίου θα καθαριστεί μετά την εκτέλεση αυτής της εντολής.

$ git stash
$ git κατάσταση

Η ακόλουθη έξοδος θα εμφανιστεί εκτελώντας τις παραπάνω εντολές.

Αφού εκτελέσετε την εντολή stash για έναν κλάδο, εάν ο χρήστης git θέλει να τραβήξει τις αλλαγές του κλάδου σε άλλο κλάδο, μπορεί να γίνει εύκολα χρησιμοποιώντας την εντολή `git stash pop` που λειτουργεί όπως η εντολή` git merge`. Εκτελέστε τις ακόλουθες εντολές για να μεταβείτε σε το κύριο διακλαδώστε και τραβήξτε τις αλλαγές από το κύριος υποκατάστημα στο κύριος κλαδί.

$ git checkout main
$ git stash pop

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση της παραπάνω εντολής που δείχνει ότι ο τρέχων κλάδος είναι κύριος και το index.html το αρχείο προστίθεται σε αυτόν τον κλάδο.

Εκτελέστε την ακόλουθη εντολή για να εκτελέσετε την προηγούμενη εργασία με το μήνυμα δέσμευσης και ελέγξτε ξανά την κατάσταση.

$ git commit -m 'προστέθηκε αρχείο ευρετηρίου'
$ git κατάσταση

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση των παραπάνω εντολών. Η έξοδος της κατάστασης δείχνει ότι το δέντρο εργασίας είναι καθαρό τώρα μετά την εκτέλεση.

Εάν οι αλλαγές του τοπικού αποθετηρίου προωθηθούν στο απομακρυσμένο αποθετήριο και το απομακρυσμένο αποθετήριο ανοίξει από το github.com, τότε το αποθετήριο θα μοιάζει με την ακόλουθη εικόνα.

Χρήση της εντολής συγχώνευσης

Αυτό το μέρος αυτού του σεμιναρίου δείχνει έναν άλλο τρόπο για να τραβήξετε τις αλλαγές από έναν κλάδο σε έναν άλλο κλάδο. Το τοπικό αποθετήριο που ονομάζεται αρχείο ανάγνωσης χρησιμοποίησε εδώ. Δημιουργήστε ένα αρχείο με το όνομα read.php στη θέση του αποθετηρίου. Εκτελέστε τις ακόλουθες εντολές για να μεταβείτε στον κύριο κλάδο, προσθέστε το αρχείο read.php και εκτελέστε την εργασία. Η εντολή κλάδου θα εμφανίσει τη λίστα κλάδων. Η εντολή checkout θα αλλάξει τον κλάδο σε master. Η εντολή κατάστασης θα εμφανίσει την τρέχουσα κατάσταση του κλάδου. Η εντολή προσθήκης θα προσθέσει το μη παρακολουθούμενο αρχείο στο αποθετήριο. Η εντολή commit θα επιβεβαιώσει την εργασία.

$ git υποκατάστημα
$ git checkout master
$ git κατάσταση
$ git προσθέστε read.php
$ git commit -m 'Προστέθηκε το σενάριο ανάγνωσης'

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση των παραπάνω εντολών. Το αρχείο read.php προστέθηκε στον κύριο κλάδο του αποθετηρίου και η εργασία έχει επίσης ολοκληρωθεί.

Αφού ολοκληρώσετε την παραπάνω εργασία, εάν οι αλλαγές πραγματοποιηθούν στο κύριος υποκατάστημα απαιτεί μεταφορά στο κύριος υποκατάστημα, λοιπόν η συγχώνευση εντολή μπορεί να χρησιμοποιηθεί για την εκτέλεση αυτής της εργασίας. Η εντολή συγχώνευσης μπορεί να χρησιμοποιηθεί από το τερματικό ή χρησιμοποιώντας την εφαρμογή GitHub Desktop. Ο τρόπος χρήσης του GitHub Desktop για συγχώνευση υποκαταστημάτων έχει δείξει σε αυτό το μέρος του σεμιναρίου. Ανοίξτε το τοπικό αποθετήριο στο GitHub Desktop. Ανοίξτε το παράθυρο διαλόγου λίστα κλάδων κάνοντας κλικ τη λίστα υποκαταστημάτων από το Θέα μενού και επιλέξτε το κύριος υποκατάστημα ως ενεργός κλάδος. Τώρα, κάντε κλικ στο Συγχώνευση στον τρέχοντα κλάδο… από το Κλαδί μενού. Επίλεξε το κύριος διακλάδωση από το παράθυρο διαλόγου και κάντε κλικ στο Συγχώνευση master στο κυρίως κουμπί για να τραβήξετε τις αλλαγές του κύριος διακλάδωση σε το κύριο κλαδί. Μπορείτε να διαγράψετε το κύριος διακλάδωση μετά την ολοκλήρωση της λειτουργίας συγχώνευσης εάν ο κλάδος δεν απαιτεί το αποθετήριο.

συμπέρασμα

Δύο διαφορετικοί τρόποι για να μεταφέρετε τις αλλαγές από έναν κλάδο σε έναν άλλο κλάδο έχουν δειχθεί σε αυτό το σεμινάριο χρησιμοποιώντας δύο δοκιμαστικά τοπικά αποθετήρια. ο θέτω κατά μέρος και πηγαίνω οι εντολές του git έχουν χρησιμοποιηθεί εδώ για την εκτέλεση της εργασίας. Το GitHub Desktop χρησιμοποιήθηκε σε αυτό το σεμινάριο για να δείξει γραφικά τον τρόπο συγχώνευσης κλάδων.