Skip to content

git stash

git stash ตามความเข้าใจของผมมันคือการทำ check point เอาไว้นั่นเอง สมมุติว่าเราต้องการเพิ่มโค้ดแต่กลัวจะบั๊กแล้วมาแก้โค้ดเดิมไม่ถูก เราก็จะ stash ทำ check point มันไว้ ถ้าไม่ work ก็สามารถย้อนกลับมาที่ check point ได้

ถึง git จะให้เรา commit ถี่ๆ ได้แล้วค่อย push แต่การ commit พร่ำเพรื่อก็ไม่ใช่เรื่องดีเพราะมันจะรก ถ้าจะ commit จริงๆ ก็ควรเป็นส่วนที่สำคัญ

ข้อดีอีกอย่างที่ผมเห็นคือตอน deploy ยกตัวอย่างเช่นพวกไฟล์ config ที่มี user, password ของ database เวลา push ขึ้น server เราก็ต้องไปแก้ config ให้เป็น user, password จริงๆ ทีนี้เวลามีโค้ดอัปเดตแล้วเราจะ git pull, git fetch ลงมา git มันจะไม่ยอมเพราะเรามีการแก้ไขไฟล์มันจะแนะนำให้ commit หรือ stash ก่อน ซึ่งก็ไม่ควร commit ขึ้นไปเพราะ 1) มันเป็น user, password จริง 2) มันคือ production ไม่ใช่ development  ควรใช้ stash ดีกว่า

การทำงานของ stash คือเมื่อใช้คำสั่ง git stash  จะได้ id ที่เป็น check point มา เราสามารถใช้

  • git stash list  เพื่อดู id (stash ได้หลายครั้งอาจมีมากกว่า 1 id)
  • git stash show [id]   ดูรายละเอียดของ stash นั้นๆ
  • git stash apply [id]  ใช้งาน stash ตาม id ที่ระบุ
  • git stash drop [id]  ลบ stash ตาม id ที่ระบุ

การใช้งานหลักๆ ก็ประมาณนี้คำสั่งอื่นๆ เพิ่มเติมดูได้จากคำสั่ง  git stash -h

Be First to Comment

Leave a Reply

Your email address will not be published.