Felaket bir git rebase
Herkes kolayca bir git rebase geri almak için nasıl biliyor mu?
Aklıma gelen tek yol bu el ile gitmek
- git checkout dalları her iki ebeveyn için commit
- sonra oradan geçici bir şube oluşturmak
- cherry-pick elle tamamlar
- hangi elle oluşturulan Şubesi tarafından ben rebased Şubesi değiştirin
Benim şu anki durumda bu kolay hem de dallardan işleyen (kimse benim eşyalarım vardı, diğer arkadaşımın yaptığı şeyler) fark ettim çünkü işe yarayacak.
Ancak benim yaklaşımım benim gibi yetersiz ve hata eğilimli (hadi benim kendi dalları ile 2 rebased aldım") vurur.
Herhangi bir fikir?
Açıklama: boyunca işleyen bir grup da tekrar edildi bir rebase bahsediyorum. Biri sadece.
CEVAP
En kolay yolu rebase reflog başladı önce kafasını hemen olduğu gibi şube tamamlama bulabilirsiniz
git reflog
ve mevcut şube sıfırlamak için (--hard
seçeneği ile sıfırlanmasını önce kesinlikle emin olmak olağan uyarılar ile).
# Suppose the old commit was HEAD@{5} in the ref log
git reset --hard HEAD@{5}
git log HEAD@{5}
yaparak aday tarihi Eski kafası kontrol edebilirsiniz .
Eğer şube reflogs başına etkin ettiyseniz sadece bir rebase son kafasına tekrar takmadan önce Şube Başkanı ayırır gibi git reflog branchname@{1}
yapmak gerekir. Bu son teyit etmedim bu yine de bir kontrol ederdim çift. Ekleyerek bunu yapabilirsiniz:
[user]
logallrefupdates=true
git iş akışı ve rebase vs birleştirme ...
Zaman git yerine git rebase birleÅŸtirm...
git branch, çatal, getirme, birleştirm...
Ne zaman kullanmak git rebase --Park e...
Felaket bir 'git push'...