คำสั่ง Git Stashing - เก็บการเปลี่ยนแปลงที่ยังไม่ commit
การทำงานร่วมกับระบบควบคุมเวอร์ชันอย่าง Git นั้นเป็นเครื่องมือที่ขาดไม่ได้สำหรับโปรแกรมเมอร์ในยุคปัจจุบัน ไม่ว่าคุณจะทำงานคนเดียวหรือในทีม การใช้งาน Git สามารถช่วยให้การจัดการเวอร์ชันของซอฟต์แวร์เป็นไปอย่างมีประสิทธิภาพและประสิทธิผล ซึ่งคำสั่งหนึ่งที่มีความสำคัญใน Git และอาจจะยังไม่ค่อยมีคนพูดถึงกันมากนักคือ git stash
Git stash เป็นคำสั่งที่ใช้ในการจัดเก็บการเปลี่ยนแปลงที่ยังไม่ถูก commit ในเวิร์กกิ้งไดเรกทอรีของเราชั่วคราว เหมาะสำหรับกรณีที่คุณต้องการเปลี่ยนงานไปทำสิ่งอื่นหรือต้องการสลับไปยังสาขาอื่นโดยไม่ทำการ commit การเปลี่ยนแปลงที่ยังไม่สมบูรณ์นั้น แม้จะคล้ายกับการใช้งาน branch หรือ commit แต่ git stash ถูกออกแบบมาเพื่อจัดการสถานการณ์ในระยะสั้นมากกว่า
ต่อไปนี้คือขั้นตอนการใช้งาน git stash พื้นฐาน:
1. สร้างการเปลี่ยนแปลงในเวิร์กกิ้งไดเรกทอรีทำการแก้ไขไฟล์บางไฟล์ในโปรเจกต์ของคุณ ยังไม่ต้อง commit การเปลี่ยนแปลงนี้
2. ใช้คำสั่ง `git stash`เมื่อคุณพร้อมที่จะบันทึกข้อมูลที่ยังไม่ได้ commit ชั่วคราว สามารถใช้คำสั่งดังนี้:
git stash
คำสั่งนี้จะเก็บการเปลี่ยนแปลงทั้งหมดลงใน stash และคืนค่าพา ธของโปรเจกต์ให้กลับไปเป็นสถานะก่อนหน้านี้
3. การดูสถานะของ stashเพื่อดูรายการ stash ที่คุณเก็บไว้ สามารถใช้คำสั่ง:
git stash list
ผลลัพธ์จะเป็นรายการ stash ที่มีอยู่ในระบบ โดยแต่ละรายการจะมีหมายเลขอ้างอิง
4. นำข้อมูลจาก stash กลับมาใช้เมื่อคุณพร้อมที่จะนำการเปลี่ยนแปลงกลับมาใช้ สามารถใช้คำสั่ง:
git stash apply
คำสั่งนี้จะนำการเปลี่ยนแปลงจาก stash ล่าสุดกลับไปยังเวิร์กกิ้งไดเรกทอรีของคุณ
5. ลบ stash ที่ใช้แล้วหากคุณต้องการลบ stash ที่ใช้แล้ว ให้ใช้คำสั่ง:
git stash drop
หรือหากต้องการลบทิ้ง stash ทั้งหมดในคราวเดียว สามารถใช้:
git stash clear
ลองนึกภาพคุณกำลังทำงานอยู่ที่โปรเจกต์ A และกำลังดำเนินการ feature ใหม่ เมื่ออยู่ๆ เพื่อนร่วมทีมแจ้งว่ามีบั๊กด่วนในสาขา main ที่ต้องการการแก้ไขทันที หากทำการ commit งานที่ยังไม่เสร็จ คุณอาจเสี่ยงที่จะ commit สิ่งที่ไม่สมบูรณ์ไปยัง repository ได้
ในกรณีนี้ การใช้ `git stash` สามารถช่วยได้ โดยคุณสามารถ stash การเปลี่ยนแปลงปัจจุบันไว้ชั่วคราว เปลี่ยนไปแก้ไขบั๊กในสาขาหลัก และเมื่องานเสร็จสิ้น สามารถกลับมาทำงานที่เหลือต่อได้โดยไม่มีการ commit ข้อมูลที่ไม่สมบูรณ์
สมมุติว่าเรามีไฟล์ `index.html` ที่ทำการแก้ไข:
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
</head>
<body>
<h1>Hello World!</h1>
<!-- เรากำลังแก้หัวข้อนี้ -->
</body>
</html>
ใช้ `git stash` ใน terminal:
git status # เพื่อดูการเปลี่ยนแปลง
git stash # เพื่อเก็บการเปลี่ยนแปลง
git stash list # ดูว่า stash ของเราเก็บอะไรไว้บ้าง
หลังจากที่แก้ไขปัญหาในสาขาหลักเสร็จสิ้นแล้ว สามารถนำ `stash` กลับมา:
git stash apply # คืนค่าแก้ไขล่าสุดจาก stash
Git stash เป็นเครื่องมือที่ทรงพลังสำหรับการจัดการงานหลายอย่างพร้อมกันในโปรเจกต์โดยไม่เสียเวลาในการ commit ซ้ำ ๆ อย่างไม่จำเป็น ความสามารถในการจัดเก็บการเปลี่ยนแปลงชั่วคราวระหว่างการสลับงานจะช่วยเพิ่มประสิทธิภาพในกระบวนการพัฒนาโปรแกรมได้มาก อย่างไรก็ตาม การใช้งานคำสั่งควรทำด้วยความระมัดระวังเสมอเพื่อป้องกันการสูญเสียข้อมูล สำคัญคือการเรียนรู้และฝึกฝนการใช้งาน git อย่างมีประสิทธิภาพ ถ้าคุณสนใจศึกษาการใช้งาน Git และพัฒนาทักษะการเขียนโปรแกรมอย่างลึกซึ้ง สามารถศึกษาต่อได้ที่ EPT ซึ่งเป็นแหล่งเรียนรู้ชั้นนำที่มีหลักสูตรครอบคลุมเทคโนโลยีที่ทันสมัยที่สุด!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM