== Nodeids == '''Nodeids''' เป็นรหัสเฉพาะที่ใช้เป็นตัวแทนเนื้อหา ''และ'' ตำแหน่งของไฟล์ๆหนึ่งในประวัติของ repository วิธีการคำนวน nodeid ณ ปัจจุบันได้มาจากการใช้แฮชฟันก์ชั่นแบบ [[http://en.wikipedia.org/wiki/SHA_hash_functions|แฮชฟันก์ชั่นแบบ SHA1]] ซึ่งจะสร้างตัวเลข 160 บิต (ตัวเลขฐานสิบหก 40 ตัวอักษร) จากเนื้อหาของไฟล์ ถ้าคุณแก้ไขไฟล์และ[[ThaiCommit|คอมมิท]]การแก้ไขนั้น จากนั้นก็ทำการแก้ไขอีกครั้งเพื่อดึงเนื้อหาเก่ากลับมา ถึงแม้ว่าเนื้อหาจะเหมือนกันแต่ว่า Mercurial จะถือว่าเป็นประวัติการแก้ไขคนละอัน เพราะฉะนั้นไฟล์ๆนั้นจะมี nodeid สองอันสำหรับการแก้ไขแต่ละครั้ง Mercurial รับรู้ถึงการเปลี่ยนแปลงของประวัติโดยการคำนวน nodeid จากการเอา nodeid ของ[[ThaiParent|บรรพบุรุษ]]มาต่อกับ nodeid ของเนื้อหาของไฟล์ ปกติ Mercurial จะแสดง nodeid ให้ผู้ใช้ในรูปแบบตัวเลขฐานสิบหกแบบสั้น เช่น: {{{ $ hg id 8d43f8c0b836 tip }}} ''หมายเหตุ: ค่าแฮช SHA1 แบบสั้นเป็นตัวอักษร 12 ตัวแรกของค่า SHA1 แบบเต็มๆ (ที่มีความยาว 40 ตัวอักษร) คุณสามารถใช้ค่าแบบสั้นในคำสั่งต่างๆได้ ตราบใดที่ตัวเลขนี้สามารถระบุเซ็ตการแก้ไขได้อย่างไม่กำกวม (ลองดู [[ThaiChangeSetID|รหัสประจำเซ็ตการแก้ไข]])'' nodeid ที่มีค่า ''00000...'' เป็น nodeid พิเศษที่มีชื่อว่า '''nullid''' โดย nullid นี้ทำหน้าที่เป็นจุดเริ่มต้นของ[[ThaiRevision|การแก้ไข]]ทั้งหมด ประโยชน์ของ nullid นี้ก็คือการแก้ไขที่ไม่เกี่ยวข้องกัน (เช่นอาจจะมาจากหลายๆ repository ที่ไม่ได้แชร์ประวัติกัน) สามารถมีบรรพบุรุษร่วมกันได้ nodeid ถูกใช้ใน [[ThaiRevlog|revlogs]] ---- CategoryGlossary CategoryThai