วิธีเลิกทำการรีเซ็ต Git ด้วย –hard Flag

Withi Leik Thakar Riset Git Dwy Hard Flag



ใน Git บางครั้ง ผู้ใช้ยอมรับการเปลี่ยนแปลงหลังจากอัปเดตไฟล์ของโปรเจ็กต์ของทีม หลังจากนั้น พวกเขาอาจต้องการรับไฟล์เวอร์ชันก่อนหน้าและรีเซ็ต HEAD เป็นคอมมิตเฉพาะ ผู้ใช้ Git สามารถดำเนินการเหล่านี้ได้โดยใช้ “ $ git รีเซ็ต ” ด้วยคำสั่ง “ -แข็ง แฟล็ก ” ซึ่งใช้เพื่อละทิ้งการเปลี่ยนแปลงที่ไม่มีข้อผูกมัดบนระบบภายใน Git

การศึกษานี้จะอธิบายอย่างละเอียดเกี่ยวกับวิธีการเลิกทำการรีเซ็ต Git ด้วยแฟล็ก –hard

จะเลิกทำการรีเซ็ต Git ด้วย –hard Flag ได้อย่างไร

สมมติว่าคุณมีไฟล์โครงการบางส่วนในไดเร็กทอรี Git คุณเปิดมันและทำการเปลี่ยนแปลง หลังจากนั้น คอมมิตการเปลี่ยนแปลงที่เพิ่มไปยังที่เก็บ ตอนนี้ ในการรีเซ็ตการเปลี่ยนแปลง ให้ดำเนินการ “ $ git reset –hard ' สั่งการ.







ขั้นตอนด้านล่างจะแสดงแนวคิดที่ระบุไว้



ขั้นตอนที่ 1: ไปที่ Git Directory
ย้ายไปยังไดเร็กทอรี Git โดยใช้ “ ซีดี ' สั่งการ:



$ ซีดี 'C:\Users \n azma\Git\Linuxhint'





ขั้นตอนที่ 2: แสดงรายการเนื้อหาไดเรกทอรี
แสดงรายการเนื้อหาที่เก็บ Git โดยใช้ “ ลส ' สั่งการ:

$ ลส



ขั้นตอนที่ 3: อัปเดตไฟล์
ถัดไป ดำเนินการ “ เริ่ม ” คำสั่งเพื่อเปิดและอัปเดตไฟล์ที่ระบุ:

$ เริ่ม myfile2.html

ที่นี่, ' myfile2.html ” จะเปิดขึ้นในตัวแก้ไขค่าเริ่มต้นของ Git ทำการเปลี่ยนแปลง บันทึก และออก:

ขั้นตอนที่ 4: ยอมรับการเปลี่ยนแปลง
ตอนนี้ให้บันทึกการเปลี่ยนแปลงในที่เก็บ Git ระยะไกลด้วยความช่วยเหลือของคำสั่งที่ให้มาพร้อมข้อความยืนยันใด ๆ :

$ git คอมมิท -m 'อัปเดต myfile2.html แล้ว'

ขั้นตอนที่ 5: ตรวจสอบประวัติบันทึก
ดำเนินการ “ git log ” คำสั่งเพื่อตรวจสอบประวัติบันทึก:

$ git log -สอง

ที่นี่เราได้ระบุ“ -สอง ” ซึ่งระบุช่วงสำหรับการแสดงบันทึกการคอมมิต ด้วยเหตุนี้ เราจะคัดลอกการอ้างอิงการคอมมิตก่อนหน้า:

ขั้นตอนที่ 6: รีเซ็ต Commit
ตอนนี้ดำเนินการ ' git reset ” ด้วยคำสั่ง “ -แข็ง ” ตั้งค่าสถานะพร้อมคัดลอกคอมมิชชันอ้างอิง:

$ git reset --แข็ง 553734718de8a2a1c20560c8ae0c734b509c34c2

ผลลัพธ์ด้านล่างแสดงว่าเราได้รีเซ็ต Git HEAD เป็นการกระทำก่อนหน้าสำเร็จแล้ว:

มาดูส่วนถัดไปเพื่อรีเซ็ตการเปลี่ยนแปลงที่ไม่มีข้อผูกมัดด้วยแฟล็ก –hard

จะเลิกทำการรีเซ็ต Git ที่ไม่ผูกมัดกับการเปลี่ยนแปลงด้วย –hard flag ได้อย่างไร

อาจมีสถานการณ์ที่ผู้ใช้ Git ต้องการรีเซ็ตการเปลี่ยนแปลงที่ไม่มีข้อผูกมัดด้วยแฟล็ก –hard บ่งชี้ว่าการเปลี่ยนแปลงเพิ่มเติมมีอยู่ในพื้นที่การจัดเตรียม Git แต่ไม่ได้ผูกมัดกับที่เก็บเพื่อวัตถุประสงค์ในการบันทึก เพื่อให้เข้าใจสถานการณ์สมมตินี้ ให้ทำตามขั้นตอนที่ให้ไว้

ขั้นตอนที่ 1: แสดงรายการ Dangling Commit Hashes
ขั้นแรก แสดงรายการแฮชที่ห้อยต่องแต่งทั้งหมดด้วยคำสั่งที่ให้มา:

$ git fsck --สูญหาย-พบ

อย่างที่คุณเห็น การผูกมัดแบบห้อยต่องแต่งมีอยู่ในตอนท้าย ตอนนี้ให้คัดลอกการอ้างอิงการกระทำไปยังคลิปบอร์ด:

ขั้นตอนที่ 2: แสดง Dangling Commit Content
เรียกใช้“ git show ” คำสั่งเพื่อแสดงแฮชที่ห้อยต่องแต่ง:

$ git show d8b43a87dbec0142583c2a7074d892d46f314f31

ประวัติทั้งหมดของแฮชที่ห้อยต่องแต่งจะปรากฏขึ้น:

ขั้นตอนที่ 3: ตรวจสอบประวัติบันทึก
ตรวจสอบประวัติบันทึกของที่เก็บ Git โดยใช้คำสั่งที่ให้มา:

$ git log -สอง

จากผลลัพธ์ที่แสดง ให้คัดลอก ref of commit ที่คุณต้องรีเซ็ต HEAD:

ขั้นตอนที่ 4: รีเซ็ต Git HEAD
ดำเนินการ “ git reset ” ด้วยคำสั่ง “ -แข็ง ” แฟล็กและการอ้างอิงคอมมิชชัน:

$ git reset --แข็ง 553734718de8a2a1c20560c8ae0c734b509c34c2

อย่างที่คุณเห็น HEAD ของเราถูกรีเซ็ตเป็นคอมมิตก่อนหน้าสำเร็จ:

แค่นั้นแหละ! เราได้รวบรวมวิธีที่ง่ายที่สุดสำหรับการเลิกทำการรีเซ็ต Git ด้วยแฟล็ก –hard

บทสรุป

หากต้องการเลิกทำการรีเซ็ต Git ด้วยแฟล็ก –hard ให้เปิดเทอร์มินัล Git และย้ายไปยังไดเร็กทอรี Git จากนั้น แสดงรายการเนื้อหาของที่เก็บปัจจุบัน เปิดและอัปเดตไฟล์ที่จำเป็น หลังจากนั้น คอมมิตการเปลี่ยนแปลง ตรวจสอบประวัติบันทึก และเรียกใช้ “ $ git reset –hard ” เพื่อเลิกทำการรีเซ็ต Git คุณยังสามารถรีเซ็ตการเปลี่ยนแปลงที่ไม่มีข้อผูกมัดซึ่งมีอยู่ในพื้นที่จัดเตรียมได้ การศึกษานี้ได้เรียนรู้วิธีเลิกทำการรีเซ็ต Git ด้วยแฟล็ก –hard