Hướng dẫn tránh pull code tạo ra một commit Merge … into …

・Published on:

Khi làm việc với git, ta thường sử dụng git pull để thực hiện pull code mới về, ấy nhưng khi pull về ta lại phải tạo ra 1 commit kiểu như Merge …. into … Trông khá bất tiện, mặc dù ta biết là ko có conflict nào xảy ra.

Nguyên nhân

Khi bạn chạy:

git pull

Git thực hiện mặc định là git fetch + git merge.
Vì thế nếu develop (hoặc remote nhánh của bạn) có commit mới, Git sẽ tạo thêm 1 commit merge để hợp nhất lịch sử.

Ví dụ:

A---B---C (develop)
       \
        D---E (feature)

Khi bạn pull, Git merge develop vào feature → tạo commit Merge branch 'develop' into feature.

Dùng git pull --rebase (Khuyến nghị)

Thay vì merge, Git sẽ rebase các commit của bạn lên trên nhánh mới nhất của remote, giúp lịch sử gọn gàng, không có commit merge.

git pull --rebase

👉 Bạn cũng có thể đặt làm mặc định:

git config --global pull.rebase true

Từ giờ chỉ cần git pull là Git sẽ tự rebase, không tạo commit merge nữa.

Kết luận

Trên đây là giải pháp giúp bạn không phải tạo thêm commit mỗi khi thực hiện git pull nữa.