Sobes.tech
Junior

Git-də münaqişələri necə həll edirsiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Pull və ya rebase zamanı dəyişikliklər birləşdirilir. Əgər Git fayllardakı münaqişəli xətləri avtomatik həll edə bilməzsə, onları xüsusi işarələrlə işarələyir:

<<<<<<< HEAD
mövcud şaxədən sətir
=======
birleştirilen şaxədən sətir
>>>>>>> feature/yeni-xüsusiyyət

Münaqişəni həll etmək üçün:

  1. Münaqişəli faylı redaktorunda açın.

  2. Faylı əl ilə redaktə edin, hər iki versiyadan lazım olan hissələri seçin və ya yeni bir kombinasiyaya yaradın.

  3. <<<<<<<, =======, >>>>>>> işarələrini silin.

  4. Faylı yadda saxlayın.

  5. Həll olunmuş faylı git add ilə indeksə əlavə edin:

    # Xüsusi faylı əlavə et
    git add yol/əldə/etmiş/fayl.txt
    
    # Bütün həll olunmuş faylları əlavə et
    git add .
    
  6. Birleştirməni tamamlamak üçün commit edin:

    # Birleştirmə zamanı
    git commit -m "Birleştirmə münaqişəsi həll edildi"
    
    # Rebase zamanı
    git rebase --continue
    

Əgər çox sayda münaqişə və ya mürəkkəbdirsə, birləşdirmə alətlərindən istifadə edə bilərsiniz:

git mergetool

Bu, münaqişələri addım-addım keçməyə kömək edən qrafik alət açacaq.

rebase zamanı çətinliklər yaranarsa, aşağıdakı əmrləri istifadə edə bilərsiniz:

  • git rebase --abort: Rebase-i ləğv et və əvvəlki vəziyyətə qayıt.
  • git rebase --skip: Mövcud münaqişəli commit-i keç.

Münaqişələri həll etdikdən sonra dəyişiklikləri test etmək, kodun düzgün işlədiyindən əmin olmaq vacibdir.