Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ghi nhớ nhanh về Git Merge Conflict cho anh em DevOps/Automation

    Ghi nhớ nhanh về Git Merge Conflict cho anh em DevOps/Automation
    "Merge conflict là cơm bữa khi bạn thật sự đồng hành trong teamworkphát triển song song trên nhiều branch."

    Dưới đây là phần ôn tập cô đọng + dễ hiểu về Merge Conflict – thứ mà bất kỳ ai làm việc với Git cũng từng đối mặt ít nhất một lần:
    ❗ Merge Conflict là gì?


    Khi bạn merge 2 nhánh lại với nhau và Git không thể tự động quyết định phần nào là đúng, nó sẽ phát hiện ra conflict – và dừng lại để bạn xử lý thủ công.
    🔥 Hai lý do phổ biến nhất gây ra merge conflict:


    Cùng sửa dòng giống nhau trong cùng một file (competing lines)
    Một bên xoá file, bên kia vẫn sửa nội dung file đó (deleted vs modified)
    🛠️ Cách nhận biết merge conflict:
    • git merge sẽ hiện thông báo lỗi conflict.
    • git status sẽ báo “both modified” hoặc “deleted by them”.
    • File sẽ có các dòng phân tách đặc trưng:

      <<<<<<< HEAD phiên bản ở nhánh hiện tại ======= phiên bản ở nhánh đang merge vào >>>>>>> branch-1

    📌 Quy trình xử lý conflict:
    1. Mở file bị conflict và sửa tay lại nội dung phù hợp.
    2. Xóa các dấu <<<<<<<, =======, >>>>>>>.
    3. Dùng git add <file> để đánh dấu đã xử lý xong.
    4. Dùng git commit -m "resolved conflict" để hoàn tất merge.

    🧑‍💻 Ví dụ thực chiến:

    git merge branch-1 # Git báo lỗi: # CONFLICT (content): Merge conflict in vlans.json # Mở file lên, chỉnh lại nội dung hợp lý git add vlans.json git commit -m "resolved conflict"
    ✅ Kiểm tra lại:

    git status # Kết quả mong đợi: working tree clean
    📚 Tóm tắt nhanh:


    Merge Conflict xảy ra khi:
    • 👉 Hai người cùng sửa một dòng.
    • 👉 Một người xoá file, người kia sửa file đó.
    • 👉 Git không tự giải quyết được, bắt bạn quyết định nội dung.

    💬 Câu hỏi ôn tập:


    Hai nguyên nhân chính gây ra Git merge conflict là gì?

    🔘 Đúng:
    • Cùng sửa một dòng (competing lines).
    • Một bên xoá, một bên sửa (modify/delete conflict).

    🔘 Sai:
    • Có nhiều nhánh để merge (không gây conflict nếu không có thay đổi trùng).
    • Có lỗi code review (không liên quan đến merge).


    Nếu bạn từng “cháy deadline” chỉ vì conflict vào phút cuối, thì hãy tập merge sớm, merge nhỏ, và hiểu rõ cách Git hoạt động.

    🧠 #DevOpsTips
    🧑‍💻 #GitMastery
    🚀 #VersionControlSkills
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X