Uwaga: Jeśli masz już szeroką wiedzę na temat rebase, użyj poniżej jednego linera do szybkiego rebase.
Rozwiązanie:
Zakładając, że pracujesz w oddziale i jesteś jedyną osobą pracującą nad nim.
git fetch && git rebase origin/master
Rozwiązuj wszelkie konflikty, testuj kod, zatwierdzaj i wypychaj nowe zmiany do zdalnego oddziału.
~: For noobs :~
Poniższe kroki mogą pomóc każdemu, kto jest nowy git rebase
i chciał to zrobić bezproblemowo
Krok 1: Zakładając, że w tym momencie w YourBranch nie ma żadnych zmian i zmian, które należy wprowadzić. Odwiedzamy YourBranch.
git checkout YourBranch
git pull --rebase
Co się stało? Wyciąga wszystkie zmiany dokonane przez innych programistów pracujących w twoim oddziale i nakłada na niego zmiany.
Krok 2: Rozwiąż wszelkie pojawiające się konflikty.
Krok 3:
git checkout master
git pull --rebase
Co się stało? Pobiera wszystkie najnowsze zmiany ze zdalnego sterownika głównego i zmienia na lokalnym urządzeniu głównym lokalnego. Zawsze dbam o to, by zdalny master był czysty i gotowy do wydania! I wolę pracować tylko lokalnie na master lub oddziałach. Polecam to robić, dopóki nie dostaniesz pomocy w zmianach gita lub zatwierdzeniach. Uwaga: Ten krok nie jest potrzebny, jeśli nie utrzymujesz lokalnego wzorca, zamiast tego możesz wykonać pobieranie i zmianę bazy zdalnego wzorca bezpośrednio w oddziale lokalnym. Jak wspomniałem na początku w jednym kroku.
Krok 4: Rozwiąż wszystkie pojawiające się konflikty.
Krok 5:
git checkout YourBranch
git rebase master
Co się stało? Zdarza się Rebase on master
Krok 6: Rozwiąż wszelkie konflikty, jeśli występują konflikty. Służy git rebase --continue
do kontynuowania bazy po dodaniu rozwiązanych konfliktów. W dowolnym momencie możesz użyć, git rebase --abort
aby przerwać rebase.
Krok 7:
git push --force-with-lease
Co się stało? Przekazywanie zmian do zdalnego YourBranch. --force-with-lease
upewni się, czy w trakcie dokonywania zmian wprowadzane są jakiekolwiek inne zmiany dla YourBranch od innych programistów. Jest to bardzo przydatne, a nie wymuszone. W przypadku jakichkolwiek nadchodzących zmian pobierz je, aby zaktualizować lokalny YourBranch przed wprowadzeniem zmian.
Dlaczego muszę wprowadzać zmiany? Aby ponownie napisać komunikat zatwierdzenia w zdalnej YourBranch po prawidłowej zmianie bazy lub Jeśli występują jakieś konflikty rozwiązane? Następnie musisz przekazać zmiany rozwiązane w lokalnym repozytorium do zdalnego repozytorium YourBranch
Yahoooo ...! Udało ci się ukończyć z powodzeniem.
Możesz także chcieć:
git checkout master
git merge YourBranch
Kiedy i dlaczego? Połącz swój oddział w master, jeśli zostanie to zrobione ze zmianami dokonanymi przez Ciebie i innych programistów. Co sprawia, że YourBranch jest na bieżąco z masterem, gdy chcesz później pracować w tym samym oddziale.
~: (๑ơ ₃ ơ)♥ rebase :~