Git push özelliği şube rebase sonra reddetti
TAMAM, bu basit git bir senaryo olduğunu düşündüm, neyi kaçırıyorum?
master dal ve feature bir şube var. master, master ** 7, ve sonra biraz daha biraz üzerinde bazı çalışmalar yapıyorum. Böyle bir şey iptalleri sipariş anlaşılacağı sözlük sırası () ile bitireceğim:
A--B--C------F--G (master)
\
D--E (feature)
Sorun yok git push origin master tutmak için uzaktan master güncelleme, ne de git push origin feature (feature) sağlamak için bir uzaktan yedekleme için benim feature iş. Şu ana kadar iyiyiz.
Ama şimdi istiyorum master F--G iptalleri üzerine feature rebase, ben git checkout feature git rebase master. Hala iyi. Şimdi var:
A--B--C------F--G (master)
\
D'--E' (feature)
Sorun:yeni rebased feature yedekleme istediğim an git push origin feature ile dallıitme reddedilirağaç rebasing nedeniyle değişti. Bu sadece git push --force origin feature ile çözülebilir.
Bana lazım emin olmadan --force kullanarak nefret ediyorum. , Buna ihtiyacım var mı? Rebasingmutlakapush --forceful olmalıdır ertesi ima ediyorsunuz?
Bu özellik, şube başka geliştiriciler ile paylaşılmaz, bir sorunum yokde factozorla basarak, herhangi bir veri kaybetmeyeceğim, bu soru daha kavramsal.
CEVAP
Asıl sorun git push varsayan uzak şube olabilir hızlı iletilen için senin yerel şube, tüm farkı arasında yerel ve uzak dalları yerel olan bazı yeni iptalleri sonunda gibi:
Z--X--R <- origin/some-branch (can be fast-forwarded to Y commit)
\
T--Y <- some-branch
git rebase D E tamamlar ve yeni bir temel ve yeni taahhüt için uygulanır gerçekleştirdiğinizde oluşturulur. Böyle bir şey var rebase sonra demek oluyor
A--B--C------F--G--D'--E' <- feature-branch
\
D--E <- origin/feature-branch
Bu durumda uzak şube hızlı iletilen yerel olamaz. Gerçi, teorik olarak yerel şube uzak (tabii ki bu durumda gerek yok), ama git push yapar gibi ileri sadece birleştirir birleştirilecek atar ve hata.
Ve --force seçeneği sadece uzaktan Şubesi durumunu görmezden gelmek ve bu ayar ne içine itiyorsun işlemek. git push --force origin feature-branch sadece yerel feature-branch 33 *geçersiz kılar.
Benim görüşüme göre, master özellik dalları ve kuvvet-itme rebasing onları uzak depoya geri TAMAM o dalda çalışan tek kişi sen olduğun sürece.

Rebase özelliği başka bir şube üzerine...
Nasıl resynchronise biri rebase ya da ...
Git kendi silindikten sonra ÅŸube kurta...
Nasıl otomatik olarak bir git push ( G...
git push başarısız: `güncelleme redded...