tldr/pages.tr/common/git-rebase.md

1.4 KiB
Raw Blame History

git rebase

Bir daldan başka bir dalın üstüne commit'leri tekrar temeller. Sıklıkla bir dalı commit'leriyle beraber başka bir tabana "taşımak" için kullanılır. Daha fazla bilgi için: https://git-scm.com/docs/git-rebase.

  • Mevcut dalı belirtilen öbür dal üzerine temelle:

git rebase {{yeni_taban_dal}}

  • Commit'lerin sıralanması, çıkartılması, birleştirilmesi veya modifiye edilmesine izin vermek için tekrar temellemeyi etkileşimli olacak şekilde başlat:

git rebase -i {{hedef_taban_dalı_veya_commit_değeri}}

  • Bir birleştirme hatası tarafından durdurulan tekrar temelleme işlemini çekişen dosyaları düzenledikten sonra devam ettir:

git rebase --continue

  • Birleştirme çatışmasından ötürü durdurulan tekrar temelleme işlemini çekişen commit'leri atlayarak devam ettir:

git rebase --skip

  • Devam eden tekrar temelleme işlemini iptal et (örneğin birleştirmede çatışma yaşandığında):

git rebase --abort

  • Mevcut dalın bir parçasını belirtilen eski tabandan yeni tabana taşı:

git rebase --onto {{yeni_taban}} {{eski_taban}}

  • Son 3 commit'i etkileşimli olmayacak şekilde yeniden uygula:

git rebase -i {{HEAD~5}}

  • Herhangi bir çatışmayı çalışan dal sürümünü kurtarmak üzere otomatik olarak çöz (theirs argümanı burada ters anlama sahip):

git rebase -X theirs {{dal_ismi}}