Git cherry-pick nhiều commit

Điểm bài viết
[Tổng cộng: 0 Trung bình: 0]

Share vì hữu ích

Git có nhiều phương thức giúp bạn merge các commit từ branch khác, bao gồm cả git cherry-pick.

git cherry-pick là gì và khác gì git merge?

Nói ngắn gọn và dễ hiểu, đây là phương thức giúp bạn đưa các thay đổi từ các commit nằm trên một branch khác vào branch của bạn.

Cú pháp thông thường rất đơn giản: git cherry-pick commit_id là làm.

Thông thường nếu git cherry-pick commit bị lỗi (gặp conflict), bạn cần sửa các file đang gặp lỗi, thêm vào commit là sẽ làm thành công.

Sự khác nhau giữa git cherry-pick và git merge

git cherry-pick lấy commit cho vào branch, nhưng không tạo commit merge, trong khi git merge thường tạo ra 1 commit merge.

Theo thói quen công việc, sẽ có nhiều team chọn git cherry-pick, và cũng nhiều team sẽ chọn git merge, các bạn có thể đọc thêm về Làm việc cùng Git Flow.

git cherry-pick nhiều commit

Ta cần lưu ý các cú pháp sau đây nếu muốn thêm hàng loạt commit vào branch.

Nếu muốn thêm 1 vài commit, không liên tục, ta nhập lệnh:

git cherry-pick commit_id1 commit_id2 commit_id3

Nếu muốn thêm 1 loạt commit lần lượt cạnh nhau (ví dụ 5 commit liên tục):

git cherry-pick commit_id1...commit_id5

Tuy nhiên, tình huống này thì commit id đầu tiên không được thêm vào branch. Cách làm tốt hơn là:

git cherry-pick commit_id1^..commit_id5

Như vậy, commit đầu tiên sẽ được tính vào và nằm trong branch bạn đang thêm.

Đọc trên Stackoverflow về tình huống này nhé.

 

Share vì hữu ích

About Khôi 'Pro' Nguyễn

Technical Lead tại Solis Lab. Quản lý ngôn ngữ tại vi.wordpress.org.

View all posts by Khôi 'Pro' Nguyễn →

Trả lời