เจอปัญหา Error Git Merge แก้ยังไง วันนี้ Onlymycode เอาวิธีแก้ มาบอกให้ฟังกัน โดยแบ่งออกเป็น 2 กรณี ดังนี้
กรณีที่ 1 Code ใน Branch ปัจจุบันเก่ากว่าฝั่งที่จะ Pull code ลงมา
วิธีที่ 1. Checkout Code ใน Branch ที่เราต้องการจะ Pull Code
- git checkout [File path] เช่น git checkout path/to/file/to/revert
ตามด้วย
- git pull origin [branch] เช่น git pull origin master
ตามด้วย
- git pull origin [branch] เช่น git pull origin master
วิธีที่ 2. Checkout Branch ใน Branch วิธีนี้ใช้ในกรณี วิธีแรกไม่ได้ผล -f คือการ force (บังคับ) ให้ git ของเราชี้ไปยังตำแหน่งปัจจุบันของ Branch
- git checkout origin/[branch] -f เช่น git checkout origin/master -f
วิธีที่ 3. แนะนำให้เป็นทางเลือกสุดท้าย เนื่องจาก git จะไม่สนใจทุกสิ่งที่เราแก้ไปใน Branch นั้น
- git reset -- hard
- git pull origin [branch]
- git pull origin [branch]
กรณีที่ 2 Code ใน Branch ปัจจุบันใหม่กว่าฝั่งที่จะ Pull code ลงมา
วิธีที่ 1 ใช้ในกรณีที่เรายังไม่ต้องการ Add file เข้าไปใน git ให้ใช้คำสั่ง Stash Code ใน Branch ที่เราต้องการจะ Pull Code เพื่อที่จะ stash code ที่เราทำอยู่ปัจจุบันเก็บไว้ก่อน จากนั้น Pull code ลงมา และทำการ un stash code ที่เราเก็บไว้มาทับ Code ที่เรา pull ลงมา
1 git stash
2 git pull origin [branch]
หลังจาก pull code เสร็จ
- git stash pop
- git stash apply
2 git pull origin [branch]
หลังจาก pull code เสร็จ
- git stash pop
- git stash apply
วิธีที่ 2 ใช้ในกรณีที่เราสามารถ Add file เข้าไปใน git ได้ กรณีที่เรามั่นใจว่า Code ปัจจุบันสามารถ add เข้า git ได้ใช้ใช้คำสั่ง git add ได้เลย
1. git add [filename.ext] / git add [directory] / git add --all
2. git commit -m "commit text"
3. git pull origin [branch]