2010-05-24 27 views
13

İki dal arasında yanlış bir şekilde birleştim.Git ve son işlem tamamlandı

git reset --hard HEAD^ 

(Ben olmak istediğim yer olan) taahhüt şimdi önceki am at: Sonra aşağıdaki koştum. Yapılması gereken doğru şey miydi?

Kötü işlem yine de depoda, tamam mı yoksa depodan çıkarmak için başka bir şey mi yapmalıyım?

Henüz başka bir şey itmedim veya işlemedim.

+0

Gelecek için, komutunuzu düzeltmek isteyebilirsiniz. Sıfırlandı… 'değil, git yap… '. –

+0

Whoops, bunu işaretlediğiniz için teşekkürler. – Justin

cevap

15

Yapılması gereken en doğru şey budur.

git gc, çöplerin kopuk olması için toplanabilir, ancak gerekli değildir. olabilir

+6

Peki, git gc'nin bu işlemi kaldırmasından 90 gün önce geçecek. Reflog sayımından ulaşılabilir olarak gönderilen komisyonlar ve reflog'un süresinin dolması 90 gün sürer (varsayılan olarak). Ama cevabın özü haklı: Git, sizin için dışarı bakıyor, her halükarda bir şeyi kalıcı olarak silmemeye çalışıyorum. – Cascabel

+0

Teşekkürler James ve Jefromi. – Justin

+0

@Jefromi: Çıldırdı. İnsanlara gc'yi önermemeye çalışıyorum, çünkü git'teki geri dönüşü olmayan tek işlemle ilgili. –

0

mmmm ... git revert sen de this makale size yardımcı olabilir

gereken şey budur.

+0

Teşekkürler, ancak ters bir işlem yapmak istemedim. – Justin

1

^ ürününü HEAD^ ile birlikte kullanmak işe yaramadı.) Eğer zsh kullanıyorsanız (benim yaptığım gibi sana: --soft HEAD ~

(git version 1.7.12.4 (Apple Git-37))

(Not sıfırlamak http://gitref.org/basic/#commit

Git: Onun yerine gelen başvuru kullanmak zorunda kaldı

+2

Zsh kullanıyor musunuz? Eğer öyleyse kaçmak istiyorsan^ – Justin

+0

Teşekkürler: Ben öyleyim. ne garip bir uyarı – electblake

İlgili konular