وقتی روی یک شاخه کار میکنید و شاخهٔ اصلی جلو رفته، دو راه برای هماهنگی دارید.
merge
یک کامیت ادغام میسازد و تاریخچهٔ واقعی را با همهٔ شاخهها نگه میدارد. امن است و تاریخچه را بازنویسی نمیکند.
git switch feature
git merge mainrebase
کامیتهای شاخه را روی نوک شاخهٔ اصلی «دوباره میچیند» و تاریخچهای خطی میسازد؛ اما شناسهٔ کامیتها تغییر میکند.
git switch feature
git rebase mainقاعدهٔ طلایی
- روی شاخهای که دیگران از آن استفاده میکنند rebase نکنید.
- برای شاخهٔ شخصی، rebase قبل از PR تاریخچه را تمیز میکند.
- در صورت اشتباه،
git reflogکمک میکند حالت قبلی را برگردانید.




