2012-09-22 16 views
5

Stworzyłem nowy oddział A, aby wykonać pracę z master i wykonałem trochę pracy i wykonałem lokalny commit.egit pull i fetch from up

Następnie utworzyłem gałąź B, aby wykonać pracę od mistrza i wykonałem jakąś pracę i wykonałem ją. Potem połączyłem go z mistrzem i popchnąłem do mistrza.

teraz przełączyłem się z powrotem do oddziału A. Aby uzyskać najnowsze zmiany, połączyłem którą opcję należy użyć w egit? pobrać z upstream lub pull?

i jaka jest różnica?

nie chcę wybrał losowo jak nie chcę, aby zastąpić zmian ...

Odpowiedz

10

fetch from upstream nie robi nic w drzewie roboczym nadpisać. Ale pull będzie, ale nie będzie całkowicie niszczący pracy, stworzy konflikt, aby ręcznie połączyć, jeśli nie może zrobić to automatycznie.

Proponuję, jeśli nie jesteś pewien, upewnij się, że drzewo robocze jest czyste i wszystko się zgadza. Zanotuj bieżący identyfikator zatwierdzenia.

Teraz możesz robić, co chcesz, a jeśli robi się źle, po prostu czyścisz drzewa (usuwając rzeczy, jeśli to konieczne). Następnie zapytaj go, czy nie wypisałeś zatwierdzonego identyfikatora. Teraz wróciłeś tam, gdzie byłeś.

Identyfikatory zatwierdzenia są (ogólnie) zawsze dostępne. Oznacza to, że nie możesz stracić miejsca, w którym się znajdujesz, jeśli wiesz, gdzie się znajdujesz. tzn. czyste drzewo i bieżący identyfikator zatwierdzenia.