หนึ่งในช่วงเวลาที่ชวนหัวเสียที่สุดของ Developer คือตอนที่เดดไลน์กำลังบีบเข้ามา แต่โค้ดเจ้ากรรมดันรันไม่ผ่าน หน้าเว็บพัง บิลด์ติดบั๊ก หรือเผลอรันคำสั่งผิดจนประวัติการทำงานหายไปหมด หลายคนสติแตกจนอยากกดลบโฟลเดอร์ทิ้งแล้ว clone ใหม่ แต่ช้าก่อน—Git ถูกออกแบบมาเพื่อบันทึกทุกย่างก้าวอยู่แล้ว ตราบใดที่ยังไม่ลบทิ้ง โอกาสกู้คืนมีเกือบ 100%
เพียงจำ 5 คำสั่ง Git กู้สถานการณ์ เหล่านี้ไว้ คุณอาจแก้งานเสร็จทันส่งได้ในเวลาไม่กี่นาที
สเต็ปที่ 1: ตั้งสติ ตรวจดูความเสียหายก่อนขยับ
ก่อนจะรีบร้อน rollback หรือแก้อะไรต่อ ให้หยุดมือแล้วดูภาพรวมว่าสถานะของโปรเจกต์ตอนนี้อยู่ที่ไหน
git status— ตั้งสติแล้วสำรวจสถานะ
ตรวจเช็กไฟล์ทั้งหมดในเครื่องว่ามีไฟล์ไหนถูกแก้ไข (modified), ไฟล์ไหนเตรียมจะส่ง (staged), หรือมีไฟล์ขยะแปลกปลอมเพิ่มขึ้นมา (untracked) บ่อยครั้งที่โค้ดพังเกิดจากแค่ลืมเอาไฟล์บางไฟล์เข้า หรือเผลอไปแก้ไฟล์คอนฟิกโดยไม่รู้ตัวgit diff— สแกนหาจุดเปลี่ยนแบบบรรทัดต่อบรรทัด
ช่วยให้เห็นความแตกต่างชัดเจนว่าโค้ดที่ยังไม่ได้ commit นั้น มีบรรทัดไหนถูกลบหรือเติมเข้าไป การไล่สายตาดูgit diffจะช่วยให้เจอ “ตัวการ” เช่น เผลอลบวงเล็บปิด หรือคอมเมนต์โค้ดสำคัญทิ้งไป
สเต็ปที่ 2: จัดการย้อนโค้ดให้ถูกบริบท
เมื่อตรวจเจอจุดผิดพลาดแล้ว ให้เลือกวิธีย้อนโค้ดตามสถานการณ์จริง ดังนี้
git restore <file>— ย้อนไฟล์เดี่ยวให้กลับมาเหมือนเดิม (ยังไม่ Commit)
ถ้าลองแก้โค้ดไปเรื่อย ๆ แล้วพบว่าทางนี้ตัน อยากทิ้งการแก้ไขเฉพาะไฟล์นั้นทิ้งไป คำสั่งนี้จะดึงสถานะไฟล์ล่าสุดจาก Commit ก่อนหน้ากลับมาทันที ปลอดภัยและไม่กระทบไฟล์อื่นที่แก้ถูกต้องอยู่แล้วPlain Text
git restore src/app.controller.ts