ว่าด้วยเรื่อง Version Control

Home/ไฮไลท์/ว่าด้วยเรื่อง Version Control

ว่าด้วยเรื่อง Version Control

 

เพื่อนๆเคยเล่นเกมที่ไม่มีจุดเซฟกันไหมครับ? …

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

แน่นอนว่าคงหงุดหงิดไม่น้อย ซึ่งก็ไม่ต่างอะไรกับการพัฒนาซอฟท์แวร์แล้ววันดีคืนดี โปรแกรมเกิดมีบั๊ก จะกลับตัวก็ไม่ได้ (เพราะแก้อะไรไปบ้างแล้วก็จำไม่ได้) จะเดินต่อไปก็ไปไม่ถึง (แน่นอนหละ ก็มันมีบั๊กแล้วนี่นา)

ทำยังไงดีหละทีนี้ ในเกมยังมีจุดเซฟ แล้วในการพัฒนาซอฟท์แวร์ เรามีตัวช่วยอะไรบ้าง… คำตอบก็คือ  เครื่องมือประเภท Version Control นั่นเอง

Version Control?

หลักการทำงานของ Version Control นั้น ดูผิวเผินก็ง่ายมาก ก็คือเก็บโค้ดที่เราเขียนมันทุกเวอร์ชั่น เหมือนที่เราก็อปปี้โปรเจคของเราเก็บไว้ตามวันที่ แล้วตามด้วย _latest บ้าง _final บ้าง _final_final บ้างนั่นเอง 😀

แต่การทำงานเบื้องหลังของเครื่องมือเหล่านี้ ไม่ได้ตรงไปตรงมาขนาดนั้น (เปลืองฮาร์ดดิสก์แย่) เครื่องมือแต่ละตัวก็มีวิธีการของตัวเอง ซึ่งก็มีข้อแตกต่างกันทั้งในเรื่องความเร็ว ความปลอดภัย ขนาดเนื้อที่ให้ฮาร์ดดิสก์ ฯลฯ

ก็เลยเป็นคำถามต่อไปว่า แล้วเราจะเลือกเครื่องมือตัวไหนดี search Google ก็เจอทั้ง Git, Mercury, SVN, etc.

ถ้าจะขอชื่อเดียว เอาตัวที่ฮิตที่สุดไปเลย ก็ต้องยกให้ Git เลยละกัน เพราะเป็น VCS (Version Control System) ที่ได้รับความนิยมสูงสุดในปัจจุบัน

Git?

เชื่อว่าเพื่อนๆคงเคยแวะเวียนเข้าไปในเวบ GitHub หรือ BitBucket กันมาบ้างแล้ว (ด้วยการแนะนำของ Google) ซึ่งนี่ก็เป็นตัวอย่างการรักษา source code ของ Git และนอกจากการเก็บรักษา source code แล้ว เราจะเห็นว่ามีนักพัฒนาหลายๆคน ร่วมงานกันในแต่ละโปรเจคด้วย ซึ่งเราเรียกรวมการเก็บรักษาและการแชร์ source code ระหว่างกันนี้ว่า “การบริการ source code”

การทำงานของ Git ประกอบด้วย Local Repository กับ Remote Repository เราจะทำอ่าน/เขียนข้อมูลกับตัว Local จนเห็นว่ามันดีแล้ว และอยากแชร์ให้คนอื่นใช้โค้ดเดียวกับเรา เราก็ส่งโค้ดของเราไปเก็บไว้ที่ตัว Remote นั่นเอง

ความสามารถของ Git มีหลากหลาย ทั้งการแตกกิ่ง (branching) การรวมกิ่ง (merging) ทำให้เราสามารถแยกตัวออกมาทำฟีเจอร์ใดๆก่อน แล้วค่อยรวมเอาการแก้ไขกลับไปที่โปรเจคหลักได้ และอื่นๆอีกมากมายที่ไม่สามารถบรรยายในที่นี้ได้หมด

ท้อ.. แต่อย่าถอย

ขอบอกเลยว่า ใครจิตไม่แข็งพอ ลองใช้ Git ครั้งแรกอาจจะเลิกใช้ไปเลย เพราะมันมีคำสั่งเยอะแยะไปหมด แต่ก็เพราะความสามารถที่หลากหลายของมันนั่นแหละ เพราะฉะนั้น ต้องเตรียมใจให้พร้อม พยายามเริ่มต้นจากคำสั่งง่ายๆที่ใช้บ่อยๆก่อน แล้วถ้าเจอปัญหาอะไรก็ลองหาวิธีแก้ไข หรือเริ่มต้นเรียนรู้จากหนังสือดีๆสักเล่มก็จะช่วยได้มากครับ

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

 

By | 2017-06-15T13:21:46+00:00 23 มกราคม 2016|

Leave A Comment