Merge در مقابل Rebase
Merge تاریخچه Branchها را حفظ میکند، اما Rebase تاریخچه را بازنویسی کرده و خطیتر میکند.
| ویژگی | Merge | Rebase |
|---|---|---|
| حفظ تاریخچه | بله | خیر |
| بازنویسی Commitها | خیر | بله |
| Merge Commit | ایجاد میشود | ایجاد نمیشود |
| مناسب Branch مشترک | بله | خیر |
| خوانایی History | متوسط | عالی |
کِی از Merge استفاده کنیم؟
برای ادغام Branchها بدون تغییر تاریخچه.
کِی از Rebase استفاده کنیم؟
برای تمیز نگه داشتن Commit History قبل از Merge.
مثال Merge
git merge feature
مثال Rebase
git rebase main
اشتباه رایج
انجام Rebase روی Branchهای Shared که دیگران نیز از آن استفاده میکنند.
جمعبندی
تیمی و امن → Merge
تاریخچه تمیز → Rebase
