Jak przeciągać zmiany z jednej gałęzi do drugiej w Git

How Pull Changes From One Branch Another Git



Repozytorium git zawiera jedną lub więcej gałęzi do efektywnego zarządzania kodem. Czasami użytkownicy git muszą pracować z wieloma gałęziami jednocześnie i muszą przełączyć się z jednej gałęzi do innej ze zmianami wprowadzonymi w poprzedniej gałęzi do gałęzi bieżącej przed zatwierdzeniem. To zadanie można wykonać za pomocą wielu sposobów w git. Polecenia schowka można użyć z terminala i scalić polecenia z pulpitu GitHub, aby pobrać zmiany z jednej gałęzi do innej gałęzi w tym samouczku.

Wymagania wstępne

1. Zainstaluj pulpit GitHub
GitHub Desktop pomaga użytkownikowi git w graficznym wykonywaniu zadań związanych z git. Możesz łatwo pobrać najnowszy instalator tej aplikacji dla Ubuntu z github.com. Musisz zainstalować i skonfigurować tę aplikację po pobraniu, aby z niej korzystać. Możesz także sprawdzić samouczek dotyczący instalacji GitHub Desktop na Ubuntu, aby poprawnie poznać proces instalacji.







2. Utwórz konto GitHub
Będziesz musiał utworzyć konto GitHub, aby sprawdzić wygląd zdalnego repozytorium po opublikowaniu zmiany lokalnego repozytorium.



3. Utwórz lokalne repozytorium
Musisz utworzyć lokalne repozytorium, aby sprawdzić polecenia używane w tym samouczku.



Korzystanie z polecenia schowka

Lokalne repozytorium o nazwie PHP2 został użyty w tym samouczku, aby pokazać, jak przeciągnąć zmiany z jednej gałęzi do innej gałęzi repozytorium. Utwórz plik o nazwie index.html w repozytorium. Otwórz terminal i przejdź do folderu repozytorium. Uruchom następujące polecenia, aby sprawdzić listę oddziałów, przejść do oddziału głównego i wyświetlić stan oddziału.





$ git oddział
$ git checkout master
$ status git

Poniższe dane wyjściowe pojawią się po wykonaniu powyższego polecenia. Wynik pokazuje, że repozytorium zawiera dwie gałęzie i główny oddział działał początkowo. Po przejściu na gospodarz gałąź, wyjście stanu pokazuje, że aktualna gałąź jest aktywna i index.html plik nie jest śledzony.



Uruchom następujące polecenia, aby śledzić nieśledzony plik i ponownie sprawdź stan repozytorium git.

$ git add index.html
$ status git

Poniższe dane wyjściowe pojawią się po wykonaniu powyższych poleceń. Wyjście stanu pokazuje, że index.html plik został dodany do repozytorium, ale wymaga zatwierdzenia.

Uruchom następujące polecenia i ponownie sprawdź stan repozytorium git. Komenda `git stash` działa jak komenda `git commit`. Katalog roboczy repozytorium zostanie wyczyszczony po wykonaniu tego polecenia.

$ git skrytka
$ status git

Następujące dane wyjściowe pojawią się wykonując powyższe polecenia.

Po uruchomieniu polecenia stash dla gałęzi, jeśli użytkownik git chce przeciągnąć zmiany z gałęzi do innej gałęzi, można to łatwo zrobić za pomocą polecenia `git stash pop`, które działa jak polecenie `git merge`. Uruchom następujące polecenia, aby przełączyć się na główny oddział i ściągnij zmiany z gospodarz oddział do Główny Oddział.

$ git kasa główna
$ git skrytka pop

Następujące dane wyjściowe pojawią się po wykonaniu powyższego polecenia, które pokazuje, że bieżąca gałąź jest Główny i index.html plik jest dodawany w tej gałęzi.

Uruchom następujące polecenie, aby zatwierdzić poprzednie zadanie z komunikatem zatwierdzenia i ponownie sprawdź stan.

$ git commit -m 'dodano plik indeksu'
$ status git

Poniższe dane wyjściowe pojawią się po wykonaniu powyższych poleceń. Dane wyjściowe statusu pokazują, że drzewo robocze jest teraz czyste po zatwierdzeniu.

Jeśli zmiany w lokalnym repozytorium zostaną przesłane do zdalnego repozytorium, a zdalne repozytorium zostanie otwarte z github.com, wówczas repozytorium będzie wyglądało jak na poniższym obrazku.

Użycie polecenia scalania

Ta część tego samouczka pokazuje inny sposób przeciągania zmian z jednej gałęzi do innej gałęzi. Lokalne repozytorium o nazwie odczyt-pliku użyłem tutaj. Utwórz plik o nazwie read.php w lokalizacji repozytorium. Uruchom następujące polecenia, aby przejść do gałęzi master, dodaj plik read.php i zatwierdź zadanie. Polecenie branch wyświetli listę oddziałów. Polecenie checkout przełączy gałąź na master. Polecenie status wyświetli aktualny status gałęzi. Polecenie add doda nieśledzony plik do repozytorium. Polecenie commit potwierdzi zadanie.

$ git oddział
$ git checkout master
$ status git
$ git add read.php
$ git commit -m 'Skrypt odczytu został dodany'

Poniższe dane wyjściowe pojawią się po wykonaniu powyższych poleceń. Plik read.php został dodany do głównej gałęzi repozytorium, a zadanie również zostało zatwierdzone.

Po wykonaniu powyższego zadania, jeśli zmiany dokonane w gospodarz oddział wymaga przeniesienia do Główny oddział, to połączenie do wykonania tego zadania można użyć polecenia. Polecenia scalania można użyć z terminala lub za pomocą aplikacji GitHub Desktop. Sposób wykorzystania GitHub Desktop do łączenia gałęzi został przedstawiony w tej części samouczka. Otwórz lokalne repozytorium w GitHub Desktop. Otwórz okno dialogowe listy gałęzi, klikając lista oddziałów od Pogląd menu i wybierz Główny oddział jako oddział aktywny. Teraz kliknij Scal z bieżącą gałęzią… od Oddział menu. Wybierz gospodarz odgałęzienie z okna dialogowego i kliknij Połącz wzorzec z głównym przycisk do ściągania zmian gospodarz oddział na główny Oddział. Możesz usunąć gospodarz branch po zakończeniu operacji scalenia, jeśli oddział nie wymaga repozytorium.

Wniosek

W tym samouczku pokazano dwa różne sposoby przeciągania zmian z jednej gałęzi do innej gałęzi przy użyciu dwóch lokalnych repozytoriów demonstracyjnych. ten chować na potem oraz wybrać się do wykonania tego zadania użyto poleceń git. Pulpit GitHub został użyty w tym samouczku, aby pokazać sposób graficznego łączenia gałęzi.