SORU
25 EYLÜL 2008, PERŞEMBE


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
25 EYLÜL 2008, PERŞEMBE


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

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HER0R

    HER0R

    16 Aralık 2007
  • huyked

    huyked

    28 Mart 2008
  • Kim Barbin

    Kim Barbin

    3 Mayıs 2012