Çatışma çözme
- Git kursu
- Orta seviye
- Ders 77/82
- 5 dk
Rebase sırasında çıkan çatışmayı çözersin.
Rebase sırasında çatışma
Bir özellik dalını güncel ana dalın üzerine rebase ederken aynı satırlarda farklı değişiklikler varsa çatışma oluşabilir. Git işlemi durdurur ve hangi değişikliklerin korunacağına karar vermeni bekler. Çatışmalı dosyayı düzenleyip kaydettikten sonra çözümü sahneleyerek rebase işlemine devam edebilirsin.
git rebase main
# Çatışmayı düzenle
git add index.html
git rebase --continueÇatışmayı çözme adımları
Çatışmalı dosyada <<<<<<<, ======= ve >>>>>>> işaretleri hangi bölümlerin çakıştığını gösterir. İstediğin içeriği bırakıp bu işaretleri kaldırdıktan sonra dosyayı kaydedersin. Son olarak dosyayı sahneleyip rebase işlemine devam edersin.
git status
git add index.html
git rebase --continueUygulama Rebase çatışmasını tamamla
feature/cart dalında bir çatışmayı çözdüğünü varsay. cart.js dosyasını sahnele ve rebase işlemini devam ettir. Komutları doğru sırayla yaz.
Başlangıç kodu
# Çözülmüş dosyayı sahnele
# Rebase işlemine devam etÖrnek çözüm
git add cart.js
git rebase --continueBeklenen çıktı
cart.js staged. Rebase completed successfully.
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Rebase sırasında çatışmayı düzelttikten sonra hangi komutla işleme devam edilir?
- git reset --hard
- git branch -d
- git merge --abort
- git rebase --continue Doğru cevap
Açıklama: Çatışma çözüldükten ve dosya sahnelendikten sonra git rebase --continue işlemi sürdürür.
2 Rebase çatışmasını devam ettir
git add index.html
git rebase ____
git add index.html
git rebase --continue
Açıklama: Çatışma çözümü sahnelendikten sonra --continue rebase sürecini sürdürür.
3 Rebase çatışma işlemleri
| Kavram | Anlamı |
|---|---|
git status |
Çatışmalı dosyaları gösterir |
<<<<<<< |
Mevcut değişiklik bölümünü açar |
git add |
Çözülmüş dosyayı sahneler |
--continue |
Rebase işlemini sürdürür |