สิ่งนี้เกิดขึ้นเพราะสำเนาสาขาในพื้นที่ที่คุณต้องการผสานล้าสมัย ฉันมีสาขาแล้วMyBranch
และฉันต้องการรวมมันเข้าProjectMaster
ด้วยกัน
_>git status
On branch MyBranch-Issue2
Your branch is up-to-date with 'origin/MyBranch-Issue2'.
nothing to commit, working tree clean
_>git merge ProjectMaster
Already up-to-date.
แต่ฉันรู้ว่ามีการเปลี่ยนแปลงที่ต้องรวมเข้าด้วยกัน!
นี่คือสิ่งที่เมื่อฉันพิมพ์git merge ProjectMaster
รูปลักษณ์ที่คอมไพล์ที่สำเนาท้องถิ่นของฉันของสาขานี้ซึ่งอาจจะไม่เป็นปัจจุบัน หากต้องการดูว่าเป็นกรณีนี้หรือไม่ฉันต้องบอก Git ก่อนเพื่อตรวจสอบและดูว่าสาขาของฉันล้าสมัยและดึงข้อมูลการเปลี่ยนแปลงใด ๆ หากใช้เช่นนั้นใช่มั้fetch
ย จากนั้นฉันก็กระโดดเข้าไปในสาขาที่ฉันต้องการผสานเพื่อดูว่าเกิดอะไรขึ้นที่นั่น ...
_>git fetch origin
_>git checkout ProjectMaster
Switched to branch ProjectMaster
**Your branch is behind 'origin/ProjectMaster' by 85 commits, and can be fast-forwarded.**
(use "git pull" to update your local branch)
อ๋อ! สำเนาในเครื่องของฉันเก่าเกินไป 85 คอมมิทที่อธิบายทุกอย่าง! ตอนนี้ฉันPull
ลงการเปลี่ยนแปลงที่ฉันหายไปจากนั้นข้ามไปที่MyBranch
และลองผสานอีกครั้ง
_>git pull
Updating 669f825..5b49912
Fast-forward
_>git checkout MyBranch-Issue2
Switched to branch MyBranch-Issue2
Your branch is up-to-date with 'origin/MyBranch-Issue2'.
_>git merge ProjectMaster
Auto-merging Runbooks/File1.ps1
CONFLICT (content): Merge conflict in Runbooks/Runbooks/File1.ps1
Automatic merge failed; fix conflicts and then commit the result.
และตอนนี้ฉันมีปัญหาอื่นที่จะแก้ไข ...