2013-08-29 13 views
8

Śledzę ten przewodnik do pracy z rozproszonych projektów git: http://nvie.com/posts/a-successful-git-branching-model/. Sprawdziło się dobrze, ale teraz wpadłem w pułapkę. Stworzyłem lokalny oddział funkcji. Chciałbym, aby ta gałąź funkcji była aktualna wraz z ostatnimi zmianami wprowadzonymi w dev. czy to możliwe? Badałem to i stwierdziłem, że prawdopodobnie potrzebowałbym użyć rebase. Ale było tak wiele opcji, że nie wiedziałem dokładnie, którego użyć. Jak to zrobić?Git: Jak zaktualizować lokalny oddział funkcji o zmiany wprowadzone w dev?

Odpowiedz

9

Okresowo:

λ git checkout dev 
λ git pull origin dev 
λ git checkout myfeaturebranch 
λ git merge dev 
+0

Więc kiedy nadszedł czas, aby połączyć mój oddział z powrotem do funkcji 'dev', nie powinienem się martwić o każdy scalić konflikty? – Jeff

+0

Zgadza się, choć kompromis jest konieczności rozwiązywania konfliktów scalania w 'git scalić dev' krok wyżej. –

+0

Czy jest jakaś korzyść z robienia tego w ten sposób, w przeciwieństwie do zmiany sugerowanej przez Dereka S? – Jeff

5

Running git rebase dev podczas pobytu na oddziale funkcji powinno wystarczyć (aktualizacja lokalnego dev od pochodzenia po pierwsze, jeśli to konieczne).

Będzie powtórka zmiany z gałęzi funkcji na dev, a następnie ustawia głowicę fabularny być szefem nowej historii.

Uwaga: Tylko rebase, jeśli Twój oddział funkcji nie zostanie jeszcze zatwierdzony. To przerobi twoją historię. Istnieją pewne zastrzeżenia z rebase które mogą lub nie mogą być warte ryzyka.

+4

myślę, że to jest lepszy sposób to zrobić, ale należy to robić tylko, jeśli funkcja Branża commity nie został wciśnięty. Tak mówi dokumentacja git. – DaBlick

+0

@DaBlick Dzięki, zaktualizowałem odpowiedź, aby dołączyć tę notatkę. –

Powiązane problemy