/ / Jak uzyskać zmiany z oddziału głównego na oddział lokalny? - git, git-merge

Jak uzyskać zmiany z głównego oddziału do lokalnego oddziału? - git, git-merge

Mam, jak zakładam, typowy przepływ pracy.

Nasz projekt działa z żądaniami ściągania.

Aby opracować nową funkcję, tworzę programistę. Oddział. Kiedy skończyłem z tą funkcją, niektóre zmiany zostały wprowadzone w trybie głównym więc chcę wprowadzić te zmiany do mojego oddziału, więc wysyłam żądanie ściągnięcia.

Z tego, co przeczytałem w Internecie, są na to dwie opcje:

  1. łączyć
  2. rebase

Jednak próbowałem obu z nich, ale kiedy wysyłam żądanie ściągnięcia, pokazuje, że wszystkie pliki zostały zmienione w tym pr.

Oto co zrobiłem:

na gałęzi

-- git commit -a -m "changes i made on my branch"
-- git checkout master
-- git fetch upstream
-- git merge upstream/master
-- git checkout mybranch
-- git merge master (or rebase)
-- git push origin mybranch

wynik - scalanie zatwierdzenia w historii pokazuje zmiany plików: 90

Jaki jest prawidłowy sposób pobierania aktualizacji z mastera do mojego oddziału?

Podobna sytuacja ma miejsce, gdy ktoś przegląda mój pr i muszę go zaktualizować. Po raz kolejny potrzebuję zmian od mistrza.

Dzięki za pomoc.

Odpowiedzi:

11 dla odpowiedzi nr 1

Możesz pobierać zmiany z głównego do swojego oddziału za pomocą:

git checkout my_branch   # move on your branch (make sure it exists)
git fetch origin         # fetch all changes
git pull origin master   # pull changes from the origin remote, master branch and merge them into my_branch
git push my_branch       # push my_branch

1 dla odpowiedzi nr 2

- Git Checkout Mybranch

- git merge master (lub rebase)

Do tego jest poprawne

Następnie przekierowujesz bezpośrednio do swojego oddziału, wcześniej dodaj i zatwierdź w ten sposób.

- git add.

- git commit -m "msg po scaleniu"

- mybranch pochodzenia git push

Spowoduje to scalenie głównego kodu oddziału z twoim oddziałem (tj. Mybranch) i wypchnie kod do źródła