Giả sử tình huống tích hợp thay đổi tại branch issue2 và thay đổi tại branch issue3 vào master.
Trước tiên, sau khi đã checkout trên branch master, thực hiện merge branch issue2.
$ git checkout master Switched to branch 'master' $ git merge issue2 Updating b2b23c4..8f7aa27 Fast-forward myfile.txt | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)Như vậy merge fast-forward (chuyển tiếp nhanh) sẽ được thực hiện.
Tiếp theo, thực hiện merge branch issue3.
$ git merge issue3 Auto-merging myfile.txt CONFLICT (content): Merge conflict in myfile.txt Automatic merge failed; fix conflicts and then commit the result.Tự động merge đã thất bại. Có vẻ như đã phát sinh xung đột do đã thay đổi cùng một dòng với nội dung khác. Nội dung của myfile.txt lúc này thì sẽ giống như bên dưới.
Đến cả con khỉ cũng hiểu được lệnh Git add: Đăng ký thay đổi trong index <<<<<<< HEAD commit: Lưu lại trạng thái của index ======= pull: Lấy nội dung của remote repository >>>>>>> issue3
Ở những chổ có xung đột thì Git đang chèn vào phần khác biệt. Hãy sửa như bên dưới.
Đến cả con khỉ cũng hiểu được lệnh Git add: Đăng ký thay đổi trong index commit: Lưu lại trạng thái của index pull: Lấy nội dung của remote repositoryVì đã chỉnh sửa nơi xung đột nên hãy commit lại.
$ git add myfile.txt $ git commit -m "Thực hiện merge branch issue3" # On branch master nothing to commit (working directory clean)Lịch sử sẽ giống thế này. Vì đã chỉnh sửa nơi xung đột trong merge lần này, nên merge commit sẽ ghi lại thay đổi đó sẽ được tạo mới. Và, đầu của master sẽ di chuyển đến đó. Loại merge thế này là không phải fast-forward mà được gọi là non fast-forward merge.



Social Plugin