Bir seri taahhüdü kullanabilir git rebase
ve git branch
bir grup taahhüdü başka bir dala uygulayabilirsiniz. Wolfc tarafından zaten yayınlandığı gibi , ilk komut taahhütleri kopyalar. Ancak, grubun en üst düzeyine bir dal adı ekleyene kadar değişiklik görünmez.
Lütfen resmi yeni bir sekmede aç ...
Komutları metin biçiminde özetlemek için:
- Açık gitk komutunu kullanarak bir bağımsız süreç olarak:
gitk --all &
.
- Koş
git rebase --onto a b f
.
- Basın F5içinde gitk . Hiçbirşey değişmez. Ama hayır
HEAD
işaretlidir.
- Çalıştırmak
git branch selection
- Basın F5içinde gitk . Taahhütleri ile yeni şube görünür.
Bu bazı şeyleri açıklığa kavuşturmalıdır:
- Taahhüt
a
, grubun yeni kök hedefidir .
- Taahhüt
b
, grubun ilk taahhüdünden önceki taahhüttür (münhasır).
- Bağlılık
f
, grubun (dahil) son taahhüdüdür.
Daha sonra, kullanabilirsiniz git checkout feature && git reset --hard b
kaydedilmesini silmek c
kadar f
gelen feature
şube.
Bu yanıta ek olarak , başka bir senaryoda komutların genel olarak kullanılmasına yardımcı olacak komutları açıklayan bir blog yazısı yazdım .
b
dayanmak isteyebilirsinf
, ama kiraz toplama ile ilgisi yok.)