Pull Request Là Gì

Giữ một lịch sử “git gọn gàng” có thể tiết kiệm rất nhiều thời gian cũng như nỗ lực cho lập trình viên khi tìm lại các commit liên quan đến bug hoặc issue. Giả sử ta đã có một nhánh (branch) và tạo một pull request.GitHub mang đến ba sự lựa chọn khi merge commits, đó là:
Create a Merge CommitSquash and MergeRebase and MergeCác bạn có thể xem hình bên dưới:

Bạn đang xem: Pull request là gì
1.Create a Merge CommitHình bên dưới là tùy chọn “Create a merge commit”:



2. Squash and mergeHình bên dưới là tùy chọn “Squash and merge”:

All commits from this branch will be combined into one commit in the base branch (gộp những commit vào trong một commit duy nhất)Squashing làm việc giống với rebasing một nhánh, chúng ta có thể nhận nhiều commits, pull request và squash - nén chúng vào 1 commit duy nhất. Việc này khá giống với Merge pull request, nhưng tinh tế hơn.
Thay vì thêm commits 3 và 4 với commit “Merge branch feature-branch”, chúng ta gộp 3 và 4 và kết quả cho ra duy nhất commit gộp là 3**(squashed)**.Chúng ta cùng quan sát điều gì xảy ra trong Insights -> Network:


Nếu bạn muốn sử dụng nó , đừng quên edit các thông điệp !Chúng ta sử dụng tùy chọn merge này khi 1 feature branch có rất nhiều các commit nhỏ được add. Khi đó, chúng ta có thể nén chúng vào 1 commit. Commit nén có thể chứa một thông điệp với các thông tin mô tả về commit được nén dưới nó.
Xem thêm: Code Ngôi Sao Thời Trang 2021 ❤️️ Tặng Giftcode Code Nstt, Code Quà Tặng
3. Rebase and MergeHình bên dưới là tùy chọn “Rebase and merge”:


Kết Luận
Github cung cấp cho ta rất nhiều chức năng để quản lý dự án một cách hiệu quả. Do vậy bạn cần hiểu rõ bản chất của mỗi chức năng để có thể quản lý dự án của chúng ta được tốt hơn.
Xem thêm: Học Lập Trình Cùng Con - Game Vua Trò Chơi Private Tặng Vip 7 + 500K Kc
Nếu như bạn muốn quản lý được tất cả những commit ID trong những branch sau khi chúng đã được merge/xóa bản phải dùng Create a merge commit. Mặt khác bạn làm một dự án mã nguồn mở với những người đóng góp thì Squash and merge là tốt nhất. Còn bạn làm một private repo mà cần kiểm soát những nhân viên thì Rebase and merge là một lựa chọn tốt tuy nhiên Squash and merge vẫn hoạt động ổn.
elliotchance/comparison-of-merging-strategies-in-github-2f948c3b8fdc https://rietta.com/viviancosmetics.vn/github-merge-types/