روی branchهای مشترک امن است چون تاریخچه را بازنویسی نمیکند. revert کردن merge commit به -m 1 برای انتخاب parent اصلی نیاز دارد. با reflog و reset مقایسه کنید.
git revert
یک commit را با افزودن commit جدیدی با patch معکوس برمیگرداند و تاریخچه را دست نمیزند.