Tek bir dosyanın birleştirilmesini yeniden yap


112

Büyük bir birleşmenin ortasındayım ve git mergetooltüm çatışmaları çözüyordum, ancak önce birleştirmenin iyi olduğundan emin olmak istediğim için henüz taahhüt etmedim.

Anlaşmazlıkları tek bir dosyada çözerken bir hata yaptığım ortaya çıktı ve git mergetoolbu dosyada ile çakışma çözümünü yeniden yapmak istiyorum . Bu büyük bir birleştirme olduğu için, yapmam gerekeceğini anladığım kadarıyla diğer tüm dosyalarda birleştirmeyi yeniden yapmaktan kaçınmak istiyorum git merge --abort.

Dosyayı sadece manuel olarak düzenleyebileceğimi biliyorum, ancak bu oldukça sıkıcı olurdu ve git mergetoolişlemi yeniden yapmak çok daha kolay olurdu . Mümkün mü?


Yanıtlar:


181

Görünüşe göre yanlış yere bakıyordum. Çözüm oldukça basit çıktı.

git checkout -m <file>

Bu, dosyayı çakışan durumuna döndürür. Daha sonra git mergetoolbirleştirmeyi yeniden yapmak için koşabilirim .


2
Bu benim için çalıştı. Endeks birleştirilmiş bir durumda sona erdi, ancak mergetool herhangi bir olağanüstü birleşme olduğunu düşünmedi. Birleştirmeyi vi kullanarak yaptım, ama yine de tuhaftı.
Chris Cleeland

1
teşekkür ederim! bu tam olarak ihtiyaç duyulan şeydir. Bu arada, vi ile manuel birleştirme her zaman bir zevk ve tamamen tatmin edici. Sola geçmek veya sağa
kaymak

1
Bu yinelenen sorunun cevabında bazı yararlı ek ayrıntılar (aynı yanıtı olan) vardır .
Joshua Goldberg

-4

Dosyaları her zaman manuel olarak düzenleyebilirsiniz.

Eğer kullanıyorsanız git merge --no-commit, o zaman basitçe hazırlanmış bir kaydetme (otomatik ve yarı otomatik birleştirme sonrasında) olacaktır.

Dosyaları yine de güvenli bir şekilde düzenleyebilir ve yalnızca tamamen tatmin olduğunuzda gerçekleştirebilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.