2009-05-18 12 views
10

... hatası alıyorum Neden bazen "Giriş" dosya adı 'güncel değil, göremiyorum.' bir 'git reset --hard' ve 'git pull' sonra? Bunu yaptığımda aşağıdaki Bazen

git pull 
Updating 0123abde..456789fa

git reset --hard 
HEAD is now at 0123abde comment is here
...

error: Entry 'filename' not uptodate. Cannot merge.

bulduğum tek çözüm Git' etmektir --hard sıfırlamak ', rahatsız edici dosyaları silin ve' git çekin 'yapın. Bu bana doğru görünmüyor. Sert bir sıfırlama, herhangi bir yerel değişikliği değiştirmemeli ve böylece herhangi bir birleştirme sorunu yaşamadan en son çekmemize izin vermemeli mi? Git yanlış mı kullanıyorum? :)

Bu bir CI makinesindedir, bu nedenle burada herhangi bir değişiklik istenmemektedir. Windows Vista'da git sürüm 1.6.1.9.g97c34 kullanıyorum.

cevap

10

"Entry 'filename' not uptodate. Cannot merge." arkasında genel bir fikir:

Sen, üzerine kaldırılabilir veya çıkış ve devam edildi yeni kolla değiştirirseniz aksi kaybolacak sizin çalışma dizinindeki dosyalara değişiklikler var.

O has been reported Bu mesajı (potansiyel olarak "git pull" did not refresh the index çünkü birleştirmek denemeden önce), zamanında "sahte" olabilir ama düzeltme Git1.6.1 olduğunu.
Ancak, hala mSysGit 1.6.1'de olabilir, bu nedenle daha yeni bir mSysGit sürümü ile aynı hatayı görüyor musunuz? (1.6.3 gibi)

+0

En son mSysGit ürününü güncelleyeceğim. Hızlı ve uyumlu yanıt için teşekkürler! –

+0

Sadece mSysGit'i daha yeni bir sürüme güncelledikten sonra, bu sorun asla oluşmadı. Yani gerçekten, bu benim sorunumun temel sebebiydi. –

+0

@James: Bu geri bildirim için teşekkür ederim. – VonC

6

Aynı sorunu yaşıyordum ve buna neden olan dosyayı yeniden adlandırdım ve bir git çekme yaptı. Bu eksik dosyayı çekti ve sorunu çözdü.

+0

Bu işe yaradı! :-) –

+0

çılgın hile, ama çalıştı! – cleric