Ви можете використовувати послідовну комбінацію git rebaseта git branchзастосувати групу комітетів до іншої гілки. Як вже було опубліковано wolfc, перша команда фактично копіює коміти. Однак зміни не видно, доки ви не додасте ім'я гілки до верхньої частини комісії групи.
Будь ласка, відкрийте зображення в новій вкладці ...

Для узагальнення команд у текстовій формі:
- Відкритий gitk як самостійний процес , з допомогою команди:
gitk --all &.
- Біжи
git rebase --onto a b f.
- Преса F5в gitk . Нічого не змінюється. Але ні
HEADвідмічено.
- Біжи
git branch selection
- Преса F5в gitk . З'являється нова філія з її комісіями.
Це має з’ясувати:
- Команда
a- це нове кореневе призначення групи.
- Коміт
b- це вчинення перед першим вчиненням групи (виключно).
- Коміт
f- це остання комісія групи (включно).
Після цього ви можете використовувати , git checkout feature && git reset --hard bщоб видалити коммітов cдо fвід featureфілії.
На додаток до цієї відповіді я написав допис у блозі, де описуються команди за іншим сценарієм, який повинен допомогти загалом її використовувати.
bбазуватися наfпізніше, але це не має нічого спільного з збиранням вишні.)