Больш складанае перабазіванне камітаў у Git
У сістэме Git можна выканаць перабазіванне
для трох галін.
Хай у нас ёсць дзве галіны
member1 і member2, у якіх ёсць розныя
каміты.
У працэсе працы над праектам нам спатрэбілася
ўставіць каміты commit3, commit4
з галіны member2 у галіну member1
і прымяніць іх на галіне master.
Для гэтага выконваем наступную
каманду:
git rebase --onto master member1 member2
Дадзеная каманда загадвае сістэме Git
пераключыцца на галіну member2,
знайсці ў ёй каміты, якіх няма ў галіне member1
і зліць толькі гэтыя адсутныя каміты з
галiной master.
Цяпер выканаем зліццё адваротнай перамоткай:
git switch master
git merge member2
Слеў памятаць, што нельга перабазіраваць каміты, якія знаходзяцца ў знешнім рэпазіторыі. Усе ўдзельнікі каманды бяруць з яго каміты для выканання сваёй задачы, але калі адбылося перабазіванне галін, усім удзельнікам прыйдзецца зноў зліваць каміты са сваімі галінамі, што можа выклікаць дадатковую бязладзіцу.