Utworzyłem nową gałąź o nazwie newbranch
z master
gałęzi w git. Teraz mam zrobić jakąś pracę i chcą łączyć newbranch
się master
; Wprowadziłem jednak kilka dodatkowych zmian newbranch
i chcę połączyć newbranch
się z czwartym od ostatniego zatwierdzenia master
.
Użyłem, cherry-pick
ale pokazuje komunikat, aby użyć właściwych opcji:
git checkout master
git cherry-pick ^^^^HEAD newbranch
Czy merge
zamiast tego mogę użyć git ?
git merge newbranch <commitid>
commit-id
newbranch
od czasu jego historia odbiega odmaster
maksymalniecommit-id
domaster
oddziału. Możesz pomyśleć ogit merge <commit-id>
połączeniu jakiejś nienazwanej gałęzi, która kończy sięcommit-id
na bieżącej gałęzi.git merge
. tzn. powiedz, że chcesz scalić zatwierdzenie 18a6fac z gałęzi b2 do gałęzi b1 po prostu zróbgit checkout b1; git merge 18a6fac
Aby utrzymać rozgałęzienie w czystości, możesz to zrobić:
W ten sposób newbranch zakończy się w miejscu, w którym został scalony w master, i będziesz kontynuować pracę nad newbranch2.
źródło
Uruchom poniższe polecenie w bieżącym folderze gałęzi, aby scalić tę
<commit-id>
gałąź z bieżącą gałęzią,--no-commit
nie wykonuj automatycznie nowego zatwierdzeniagit merge --continue
można uruchomić tylko wtedy, gdy scalenie spowodowało konflikty.git merge --abort
Przerwij bieżący proces rozwiązywania konfliktów i spróbuj odtworzyć stan sprzed scalenia.źródło