Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Kontrola i zarządzanie projektami _ git patch między gałęziami i do konkretnego commita

Napisany przez: sabat24 18.11.2017, 12:11:45

Mam gałąź developer oraz master. Na developerze doszło X commitów. Wydzieliłem gałąź FB. Dorzuciłem kilka commitów. W międzyczasie na developerze doszło Y kolejnych commitów. Zrobiłem pull developera. Teraz zaistniała potrzeba, by gałąź FB wrzucić na master. Zmergować nie mogę, bo zawiera ona X wcześniejszych commitów. Chciałem zrobić patch pomiędzy gałęzią FB i dev i następnie wgrać go na master.

Robię to poleceniem:

Kod
git format-patch developer --stdout > fb.patch


Aczkolwiek patch zawiera dużo więcej zmian, gdyż do porównania zaciąga też commity Y. Jak zrobić, abym mógł pobrać tylko zmiany, które zrobiłem na mojej gałęzi FB w stosunku do momentu jej wydzielenia, by zaaplikować je na masterze?

Napisany przez: Pyton_000 18.11.2017, 17:28:04

Jeśli FB ma też trafić do dev i master to zrób tak:

- Zrób merge fb do dev: `git merge --no-ff FB`
- Zapisz sobie hash wygenerowanego commita
- Wejdź na master i zrób: `git cherry-pick -m1 hash` gdzie hash to ten wcześniej zapisany. Powinieneś w master dostać tylko to co było na gałęzi FB

Napisany przez: sabat24 18.11.2017, 18:51:40

Ma to sens smile.gif Dzięki.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)