คำถามที่เจ็บที่สุดตอนงานพังคือ "เมื่อวานมันยังใช้ได้อยู่เลย แล้วเราแก้อะไรไปบ้าง"

ถ้าไม่เคยเซฟเป็นจุด ๆ ไว้ คำถามนี้ตอบไม่ได้ และต้องไล่แก้ย้อนกลับด้วยความจำล้วน ๆ บทนี้ทำให้คำถามนี้ตอบได้ในสิบวินาที

สไลด์ 1 — แก้จนพัง แล้วจำไม่ได้ว่าแก้อะไรไป

Git คือระบบที่ทำให้เราถ่ายรูปสภาพงานทั้งชุดเก็บไว้ได้ทุกครั้งที่อยากเก็บ

  • ทำงานไปเรื่อย ๆ พอถึงจุดที่ใช้ได้ → เซฟไว้เป็นจุด
  • แก้ต่อ พังก็ไม่เป็นไร → ย้อนกลับไปจุดที่เซฟไว้
  • อยากรู้ว่าเปลี่ยนอะไรไปบ้าง → เปิดประวัติดูทีละจุด
ย้อนกลับได้ ต่อเมื่อเคยเซฟไว้ก่อน จุดที่ไม่ได้เซฟ ย้อนไม่ได้

บทที่ 14 GitHub คืออะไร อธิบายว่าที่เก็บโค้ดออนไลน์คืออะไร บทนี้คือส่วนที่ทำงานอยู่ในเครื่องเรา คือการเซฟและการย้อน ซึ่งใช้ได้แม้ยังไม่ได้เอาขึ้นออนไลน์

สไลด์ 2 — ศัพท์ที่ต้องรู้ในบทนี้

  • Commit จุดเซฟ บันทึกสภาพงานทั้งชุด ณ เวลานั้น
  • Message ข้อความกำกับจุดเซฟ บอกว่าจุดนี้แก้อะไรไป
  • History ประวัติจุดเซฟ รายการจุดเซฟทั้งหมดเรียงตามเวลา
  • Restore ย้อนกลับ ดึงไฟล์กลับไปเป็นแบบที่จุดเซฟเก่า

สี่คำนี้คือทั้งหมดที่ต้องรู้ เพื่อกล้าลงมือแก้ของจริง

สไลด์ 3 — สั่งเป็นภาษาคน ไม่ต้องท่องคำสั่ง

จุดที่คนส่วนใหญ่ถอดใจกับ Git คือคำสั่งที่จำยาก แต่ตอนนี้ไม่ต้องจำแล้ว บอก AI เป็นภาษาคนได้เลย

เซฟงานตอนนี้เป็นจุดเซฟ ใส่ข้อความบอกว่าแก้อะไรไป
ขอดูประวัติจุดเซฟห้าอันล่าสุด พร้อมข้อความของแต่ละอัน
ย้อนไฟล์นี้กลับไปเป็นแบบจุดเซฟก่อนหน้า อย่าแตะไฟล์อื่น

บรรทัดสุดท้ายสำคัญมาก เพราะถ้าไม่บอกว่าอย่าแตะไฟล์อื่น บางครั้งจะถูกย้อนกลับทั้งโปรเจค รวมถึงงานดี ๆ ที่เพิ่งทำเสร็จด้วย

ลองทำเลย

ทำวงจรเซฟและย้อนให้ครบหนึ่งรอบวันนี้ จะได้เชื่อมือตัวเอง

  • สั่งเซฟจุดเซฟหนึ่งจุด ใส่ข้อความว่า "ก่อนลองแก้หน้าแรก"
  • แก้อะไรก็ได้ในหน้าแรกให้เห็นชัด ๆ เช่น เปลี่ยนหัวข้อ
  • สั่งดูประวัติ ดูว่าจุดเซฟเมื่อกี้อยู่ในรายการจริง
  • สั่งย้อนกลับไปจุดเซฟนั้น แล้วเปิดดูว่าหัวข้อกลับมาเหมือนเดิมไหม

รอบเดียวที่ทำครบนี้ จะเปลี่ยนวิธีทำงานไปทั้งปี เพราะจะกล้าลองมากขึ้น

สไลด์ 4 — กฎสามข้อ ที่ทำให้ย้อนได้จริง

มีจุดเซฟไม่ได้แปลว่าย้อนได้ ต้องเซฟให้ถูกวิธีด้วย

  • เซฟก่อนเริ่มแก้ของใหญ่ทุกครั้ง ก่อนให้ AI รื้อหลายไฟล์ ให้เซฟไว้ก่อนหนึ่งจุดเสมอ
  • หนึ่งจุดเซฟ เก็บการแก้เรื่องเดียว เซฟรวมสามเรื่องในจุดเดียว เวลาย้อนจะย้อนทิ้งทั้งสามเรื่อง ทั้งที่อยากทิ้งแค่เรื่องเดียว
  • ข้อความต้องอ่านย้อนหลังแล้วรู้เรื่อง เขียนว่า "แก้ไข" หรือ "อัปเดต" เท่ากับไม่ได้เขียน ให้เขียนว่าแก้อะไร เช่น "เพิ่มปุ่มสั่งซื้อในหน้าสินค้า"
จุดเซฟที่ตั้งชื่อมั่ว เท่ากับไม่ได้เซฟ เพราะตอนต้องย้อนจริงจะไม่รู้ว่าควรย้อนไปจุดไหน

เช็คลิสต์ก่อนไปบทถัดไป

  • เซฟจุดเซฟเองได้ โดยสั่งเป็นภาษาคน
  • เปิดดูประวัติจุดเซฟ แล้วอ่านออกว่าแต่ละจุดแก้อะไร
  • เคยย้อนไฟล์กลับสำเร็จมาแล้วอย่างน้อยหนึ่งครั้ง
  • ติดนิสัยเซฟก่อนเริ่มแก้ของใหญ่