Git – Merge bằng rebase

Thay vì khi merge vào master xuất hiện conflict. Chúng ta dùng rebase để merge.

Để thực hiện ví dụ này, chúng ta tạm thời trở về thời điểm trước khi merge issue3 ở ví dụ trước bằng lệnh sau.

git reset --hard HEAD~

Kiểm tra lại kết quả

git log --oneline –graph --all

Như vậy chúng ta đã undo về thời điểm trước khi merge issue3. Bây giờ chúng ta dùng rebase để merge

checkout qua issue3 mà chạy lệnh rebase

git checkout issue3
git rebase master

Giống ví dụ trước file myfile.txt xuất hiện conflict.

Mở file này, sửa lại add nhưng không commit mà dùng rebase –continue

nano myfile.txt
git add .
git rebase --continue

Tiếp theo checkout về master, tiếng hành merge lại.

git checkout master
git merge issue3

conflict không còn xuất hiện nữa.

Kêt quả

Kết quả nội dung myfile.txt giống nhau, nhưng log sẽ khác nhau.

git log --oneline --graph --all