Git rebase là gì

Trong bài này vẫn nói về việc khác biệt của rebase với merge nhằm dễ dàng nắm bắt vụ việc hãy coi ví dụ dưới.

Bạn đang xem: Git rebase là gì

Giả sử ban đầu vẫn gồm 3 commit A, B, C:

*

tiếp đến developer Dung chế tạo commit D, và developer Egg tạo thành commit E:

*

ví dụ, cuộc xung thốt nhiên này phải được giải quyết bằng phương pháp nào đó. Đối với điều đó, bao gồm 2 cách:

MERGE :

*

Cả nhì commit D cùng E vẫn còn đấy ở chỗ này, tuy nhiên Cửa Hàng chúng tôi tạo thành pân hận commit M mà lại biến hóa thừa hưởng trường đoản cú cả nhị D cùng E. Tuy nhiên, vấn đề đó tạo nên những thiết kế kyên cương cứng, mà nhiều người thấy siêu khó hiểu. Nếu các bạn tất cả hàng trăm commit D với E thì chúng ta gồm tất cả hàng chục viên kyên cưng cửng M từ bây giờ bạn sẽ thấy log rối tới mức nào!?

REBASE :

*

Chúng tôi tạo nên commit R, nhưng mà câu chữ thực tiễn tệp tin là giống hệt nhau của merge commit M sinh hoạt bên trên. Tuy nhiên, chúng ta ra khỏi commit E, hệt như nó ko lúc nào lâu dài (denoted bởi lốt chấm – vanishing dòng). Điều này sẽ tạo nên commit của công ty chú ý dễ nắm bắt rộng.

Vì obliteration này, E sẽ có local để developer Ed và đề xuất dường như không khi nào được đẩy đến ngẫu nhiên những kho lưu trữ không giống. Lợi ráng của rebase là kyên cương cứng mẫu thiết kế tránh được, cùng lịch sử dân tộc vẫn đẹp mặt đường trực tiếp.

Xem thêm: Spontaneous Là Gì - Spontaneous Liabilities Là Gì

Sau đây là một đối chiếu log của rebase và merge 1 branch trong một mini project:

*

A) History dùng rebase chú ý clear cùng dễ dãi tracking bởi vì bao gồm chúng ta tạo thành một bí quyết khối hệ thống cùng logic! B) History dùng merge chú ý nặng nề đọc và Khi tracking bạn sẽ nói gì xung quanh bullshit do chủ yếu bạn commit và merge vô tội vạ! C) Transport plan của git, phần nhiều chổ dùng rebase đã thằng mặt hàng còn merge đang chỉa hỗ tương nhìn bao quát là tác động những branch.

Kết Luận:

Chụ ý vào rebase, phần nhiều bạn đang thấy commit của rebase nằm phía bên trên commit mới nhất của master. Còn nghỉ ngơi merge, các fan đã thấy commit của master ở phía bên trên commit mới nhất của merge, Nhiều hơn một commit Merge branch cũng khá được tạo nên ra.Ban thực hiện git rebase nếu như như bạn muốn những sự biến đổi nằm trong về branch của khách hàng luôn luôn luôn là tiên tiến nhất. Và bạn rất có thể log một bí quyết gồm khối hệ thống dễ dàng quan sát, dễ dàng tracking sao này.Bạn áp dụng git merge giả dụ bạn muốn sắp xếp các commit theo mang định. quý khách không biết về đông đảo gì bản thân làm gì trên branch đó thì sử dụng merge đến bảo đảm vấn đề tracking sao này có thể tốn những thời hạn lần dò.

Xem thêm: Luyện Thi Bằng B Anh Văn Ở Đâu Tphcm 2021, Lich Thi Ngoại Ngữ B1 B2

Một số vấn đề yêu cầu để ý sau:

Git rebase thì nên cần sử dụng bên trên branch riêng, nó đã đẩy history commit của branch lên, history commit vẫn bóc biệt hẳn cùng với các commit trường đoản cú branch khác, khôn xiết một thể cho quản lý các branch. Đặt biệt khi các bạn tất cả các branch master / develop / hot-fix / features / release …Cả rebase với merge đang conflict kinh khủng khiếp rộng còn nếu như không update code liên tiếp chứ chưa hẳn chỉ có rebase như đầy đủ fan hay nói đâu đấy. Ví dụ: Nếu như master branch bao gồm time line rộng branch của người sử dụng 1 tháng 
*
. Lúc đó hãy rebase giỏi merge branch của khách hàng cùng vẫn thấy conflict 2 loại tất cả khác gì nhau! Git merge là khiến cho git commit menu lâu năm ra áp dụng cho branch riêng thì không phù hợp bởi vì khó khăn trace log vị các commit nhiều năm thòn không phải vì chúng ta chế tác ra!?. Nhất là trong một dự án lâu dài, Việc chú ý lại log của vài ba mon trước rất có thể đã là sự việc trong bầu trời đầgiống hệt chổi với các bạn.

Chuyên mục: Kiến thức