ฉันคิดว่าไฟล์ LOCAL และ REMOTE เป็นเพียงชื่อที่แนะนำ แต่ BASE และ BACKUP มีไว้เพื่ออะไร
ฉันคิดว่าไฟล์ LOCAL และ REMOTE เป็นเพียงชื่อที่แนะนำ แต่ BASE และ BACKUP มีไว้เพื่ออะไร
คำตอบ:
Git ทำการผสานสามทางโดยค้นหาบรรพบุรุษร่วมกัน (aka "merge base") ของสองสาขาที่คุณกำลังผสาน เมื่อคุณเรียกใช้git mergetoolข้อขัดแย้งไฟล์จะสร้างไฟล์เหล่านี้ที่เหมาะสำหรับป้อนลงในเครื่องมือผสาน 3 ทางทั่วไป ดังนั้น:
foo.LOCAL: ด้าน "ของเรา" ของความขัดแย้ง - กล่าวคือสาขาของคุณ (HEAD ) ที่จะมีผลลัพธ์ของการผสานfoo.REMOTE: ด้าน "ของพวกเขา" ของความขัดแย้ง - สาขาที่คุณรวมเข้าด้วยกัน HEADfoo.BASE: บรรพบุรุษร่วมกัน มีประโยชน์สำหรับการป้อนเข้าไปในเครื่องมือผสานสามทางfoo.BACKUP: mergetool.keepBackup = trueเนื้อหาของไฟล์ก่อนที่จะอัญเชิญผสานเครื่องมือที่จะถูกเก็บไว้ในระบบแฟ้มถ้า
LOCALคือเวอร์ชันในHEAD. เป็นรุ่นที่อยู่บนดิสก์ก่อนที่คุณเรียกBACKUPmergetoolมันอาจจะมีเครื่องหมาย diff3mergetoolความขัดแย้งและคุณอาจจะได้แก้ไขก่อนที่จะกล่าวอ้าง