2013-09-26 36 views
13

Mam zarówno lokalne zmiany, jak i zdalne zmiany.Dlaczego musimy git push najpierw przed git pull?

Ktoś mi powiedział, że najpierw muszę pchnąć, a potem pociągnąć. Jakiś powód tego?

+13

Ta osoba jest w błędzie. Twoje zmiany nie zostaną zaakceptowane przez pilota. Przed pchaniem trzeba * pociągnąć *, a nie odwrotnie. –

Odpowiedz

37

Ta osoba jest w błędzie: odpowiedni model to pull-before-you-push, a nie odwrotnie.

Kiedy pull, git pobierze rewizje na origin i postara się fast-forward lokalnych zobowiązuje się na nich, robi scalanie. Po tym możesz push w ten sposób nie będziesz generował konfliktów z innymi aktualizacjami.

+0

Czy dzieje się tak nawet wtedy, gdy pracuję nad oddzielną gałęzią, a żadne inne ciało nigdy nie dotknęło tej oddzielnej gałęzi? –