Jestem noobem w Git i próbuję poznać różnicę między git pull
a git rebase
. Czy ktoś może podać przykład, kiedy użyć tej opcji, ponieważ uważam, że oba służą temu samemu celowi.Git Pull kontra Git Rebase
Odpowiedz
git-pull - Pobiera od i zintegrować z innym repozytorium lub lokalnym oddziale GIT PULL
Zasadniczo wyciągają zdalnego oddziału lokalnego, przykładowo:
git pull origin master
pociągnie master branch do lokalnego repozytorium
git-rebase - Naprzód-port lokalny potwierdzenie do zaktualizowanego upstream głowy GIT REBASE
Ten jest wprowadzenie lokalnych zmian na szczycie zmian zdalnie przez innych użytkowników. Na przykład:
- popełniłeś jakieś zmiany na lokalnym oddziale na przykład o nazwie
SOME-FEATURE
- Twój przyjaciel w międzyczasie pracował nad innymi funkcjami i połączył swój oddział do pana
teraz chcesz zobaczyć jego i twoje zmiany w lokalnym oddziale. Więc ty kasa master
Branża:
git checkout master
następnie można wyciągnąć:
git pull origin master
a następnie udać się do oddziału:
git checkout SOME-FEATURE
i można zrobić rebase master
dostać ostatnie zmiany i umieścić na niej swój oddział:
git rebase master
Mam nadzieję, że teraz jest dla ciebie bardziej zrozumiałe.
git pull
i git rebase
nie są wymienne, ale są ze sobą ściśle połączone.
git pull
pobiera najnowsze zmiany w aktualnej gałęzi od pilota i stosuje te zmiany do lokalnej kopii oddziału. Zwykle odbywa się to poprzez łączenie, tj. Lokalne zmiany są łączone w zdalne zmiany. Tak więc git pull
jest podobna do git fetch & git merge
.
Rebasing to alternatywa dla łączenia. Zamiast tworzenia nowego zatwierdzenia, które łączy dwie gałęzie, przenosi zatwierdzenia jednej z gałęzi na drugą.
Możesz ciągnąć za pomocą rebase zamiast scalania (git pull --rebase
). Zmiany lokalne, które wprowadziłeś, zostaną ponownie utworzone na podstawie zdalnych zmian, zamiast być scalone ze zdalnymi zmianami.
Atlassian jako niektóre doskonałe documentation on merging vs. rebasing.
- 1. Cofnij git pull --rebase?
- 2. phpstorm git pull --rebase
- 3. `git svn rebase` kontra` git rebase trunk`
- 4. Różnica między git pull --rebase, git rebase i git merge
- 5. Mercurial odpowiednik "git pull --rebase"
- 6. Git pull --rebase przekształca przestrzenie w tabulatory
- 7. git rebase po odciągnięciu
- 8. git stash pop vs git rebase
- 9. git stash i git pull
- 10. Jak wyjaśnić "git pull --rebase" w prostych słowach?
- 11. Jak mogę git pull -rebase, ale biorąc wszystkie zdalne zmiany?
- 12. Autor zmiany Git rebase?
- 13. Awaria git rebase
- 14. odzyskiwanie z git rebase
- 15. git rebase jeden commit
- 16. Git - Merge vs rebase
- 17. "git pull" złamane
- 18. Git Pull Aborting
- 19. git pull --rebase upstream & git push origin odrzuca nie-szybkie przewijanie do przodu?
- 20. Git: 'rebase' nie jest poleceniem git. Zobacz "git --help"
- 21. Git Pull nie jest możliwy, niezintegrowane pliki
- 22. git pochodzenie zmiana oddziału (rebase)
- 23. git - rebase ruiny łączą się
- 24. Git: przywracanie rozbieżnego repozytorium po nieudanym rebase
- 25. Git pull nie ciągnie wszystkiego.
- 26. Git Fetch/Pull przestał działać
- 27. Git Pull ignorując lokalne zmiany?
- 28. Findbugs for Git Pull Request
- 29. git pull na podstawie SHA
- 30. Dlaczego git pull się zawiesza?
Czy próbowałeś przeczytać dokumentację? Spoiler: nie służą temu samemu celowi. –
Przeczytałem dokumentację. Tak jak powiedziałem, że jestem noobem i zacząłem się uczyć. – user4943236
@TimCastelijns widzisz odpowiedź Petera. Wyraźnie stwierdził, że są one ze sobą ściśle powiązane, a zatem powstało zamieszanie i dlatego wysłałem pytanie. Czy możesz usunąć downvote – user4943236