2012-01-17 10 views
21

Birkaç şubeyle bir şeyler deniyordum, bu yüzden geçici bir şubede çalıştım ve bazı anlaşmazlıkları çözmek için karar vermemenin ortasındaydım. rebase onu başka bir şekilde tamamlayın. Daha sonra ilgili geçici şubeyi sildim ve benim neşeli yoluma gittim. Birkaç saat sonra bu hata mesajını başka bir şube rebase ve almak istedimgit rebase ve "Interactive rebase zaten başlatıldı" hata mesajını silme hata mesajını sil

Interactive rebase already started 

git rebase --abort görüntüler bu hata mesajı sadece tmp/rails3-rails-2-fixes adlı başka bir şube oluşturmak için çalıştı

error: unable to resolve reference refs/heads/tmp/rails3-rails-2-fixes: No such file or directory 
fatal: Cannot lock the ref 'refs/heads/tmp/rails3-rails-2-fixes'. 
Could not move back to refs/heads/tmp/rails3-rails-2-fixes 

ama hiçbir zar

Bunu nasıl çözebilirim?

cevap

18

Hm başlatmak için bir şube ödeme zorunda, o garip olmayan bir şube alana Rebase transferi sizi becase

. Şubeyi yeniden oluşturmak benim ilk denemem olurdu. Başarısız olursa, rebase durumunu içeren .git/rebase-merge dizinini kaldırabilmeniz gerekir. (İstersen güvende olmak yerine onu yanına taşıyın.) Bir kez bittiğinde, Git'in devam eden bir rebase olduğunu bilmesi için bir yolu olmamalı. Süreçlerde herhangi bir taahhütte bulunmadığınızdan emin olmak için şubelerinize bir göz atın ve iyi olacaksınız!

+1

Bu işe yaradı ve şu ana kadar hiçbir kayıp işi göremiyorum, teşekkürler, beni bir sürü güçlükten kurtardın: D – tee

9

git status denetleyin ve son rebase sonra herhangi bir şube ödeme olup olmadığını görmek, sonra herhangi bir dalda değil bakın. Eğer git rebase --abort komutunu kullanarak son rebase iptal ve dal üzerinde gidip yeni rebasing

+0

Diğer şubeleri kontrol edebildiğimden bu yana, bir başka şubeyi yeniden denemeden fark etmediğim nedenlerden biri olan – tee

+0

numaralı şubeden şubeye herhangi bir zamanda ödeme yapabilirsiniz. Ama bu git işlevselliği, rebasing hakkında kontrol ettiğinizde uyarmayacaktır. ancak git çatışma hakkında bildirimde devam ve iptal seçeneği hakkında uyarmak – Dau

+0

Zaten git rebase --abort ama yukarıdaki hata mesajı, diğer olası çözümler aldı? – tee

1

Başarısız olan bir rebase sırasında çok benzer bir hata aldım. Yukarıdaki ipuçlarından hiçbiri yardımcı olmadı. İşte görüyordum ne: Bu bir referans adı kuşkulu ise, Rebase en azından git sürümü 1.7.10.2 (Apple Git-33) üzerine, başarısız olacağını çıkıyor

$ git pull --rebase 
warning: refname 'xport1' is ambiguous. 
First, rewinding head to replay your work on top of it... 
Fast-forwarded xport1 to 98b787b0ea1f7f6771a5b1b56c7e8cc67b84c242. 
error: Ref refs/heads/xport1 is at 98b787b0ea1f7f6771a5b1b56c7e8cc67b84c242 but expected 3865d63ffb3a1a495363bfbd9ebb089e16152839 
fatal: Cannot lock the ref 'refs/heads/xport1'. 
Could not move back to refs/heads/xport1 

. Çevremde dolandım ve kazandığım dalla aynı adla bir etiket kazara oluşturduğumu gördüm. Etiketi silmek bu hatayı ortadan kaldırdı.