GITHUB
ก่อนอื่นเรามาทำความรู้จักเจ้า Git กันก่อน Git หรือสามารถที่จะเรียกว่าเป็นระบบควบคุมเวอร์ชันแบบกระจาย (Distributed Version Control System) ที่ถูกพัฒนาขึ้นโดย Linus Torvalds ในปี 2005 Git ได้รับการออกแบบมาเพื่อช่วยให้นักพัฒนาซอฟต์แวร์สามารถทำงานร่วมกันได้อย่างมีประสิทธิภาพ โดยสามารถติดตามการเปลี่ยนแปลงของโค้ดได้อย่างละเอียด และสามารถย้อนกลับไปที่เวอร์ชันก่อนหน้าได้เมื่อเกิดข้อผิดพลาด Git เป็นเครื่องมือที่ได้รับความนิยมอย่างมากในหมู่นักพัฒนาซอฟต์แวร์ และถูกใช้โดยโครงการซอฟต์แวร์ขนาดใหญ่มากมาย เช่น Linux, Firefox และ Android
โดยเจ้าตัว Git นี่จะมีจุดเด่นหลายประการที่ทำให้เป็นเครื่องมือที่มีประโยชน์สำหรับนักพัฒนาซอฟต์แวร์ ดังนี้
- กระจายส่วนงานต่างๆ: Git เป็นระบบควบคุมเวอร์ชันแบบกระจาย ซึ่งหมายความว่านักพัฒนาสามารถทำงานร่วมกันบนโครงการซอฟต์แวร์เดียวกันจากคอมพิวเตอร์เครื่องใดก็ได้
- มีประสิทธิภาพ: Git สามารถติดตามการเปลี่ยนแปลงของโค้ดได้อย่างละเอียด ซึ่งช่วยให้นักพัฒนาสามารถย้อนกลับไปที่เวอร์ชันก่อนหน้าได้เมื่อเกิดข้อผิดพลาด
- ยืดหยุ่น: Git เป็นเครื่องมือที่ยืดหยุ่นมาก ซึ่งช่วยให้นักพัฒนาสามารถปรับแต่งให้เข้ากับความต้องการของโครงการซอฟต์แวร์ได้
ความเป็นมาและความสำคัญของ Git
Git เป็นระบบควบคุมเวอร์ชันแบบกระจาย (Distributed Version Control System) ที่ถูกพัฒนาขึ้นโดย Linus Torvalds ในปี 2005 Git ได้รับการออกแบบมาเพื่อช่วยให้นักพัฒนาซอฟต์แวร์สามารถทำงานร่วมกันได้อย่างมีประสิทธิภาพ โดยสามารถติดตามการเปลี่ยนแปลงของโค้ดได้อย่างละเอียด และสามารถย้อนกลับไปที่เวอร์ชันก่อนหน้าได้เมื่อเกิดข้อผิดพลาด Git เป็นเครื่องมือที่ได้รับความนิยมอย่างมากในหมู่นักพัฒนาซอฟต์แวร์ และถูกใช้โดยโครงการซอฟต์แวร์ขนาดใหญ่มากมาย เช่น Linux, Firefox และ Android
Git มีจุดเด่นหลายประการที่ทำให้เป็นเครื่องมือที่มีประโยชน์สำหรับนักพัฒนาซอฟต์แวร์ ดังนี้
- กระจาย: Git เป็นระบบควบคุมเวอร์ชันแบบกระจาย ซึ่งหมายความว่านักพัฒนาสามารถทำงานร่วมกันบนโครงการซอฟต์แวร์เดียวกันจากคอมพิวเตอร์เครื่องใดก็ได้
- มีประสิทธิภาพ: Git สามารถติดตามการเปลี่ยนแปลงของโค้ดได้อย่างละเอียด ซึ่งช่วยให้นักพัฒนาสามารถย้อนกลับไปที่เวอร์ชันก่อนหน้าได้เมื่อเกิดข้อผิดพลาด
- ยืดหยุ่น: Git เป็นเครื่องมือที่ยืดหยุ่นมาก ซึ่งช่วยให้นักพัฒนาสามารถปรับแต่งให้เข้ากับความต้องการของโครงการซอฟต์แวร์ได้
Git นี่ในโลกของ Developer ถือว่ามันเป็นเครื่องมือที่มีความสำคัญอย่างยิ่งสำหรับ Software Developer อย่างมากเพราะมันจะช่วยให้นักพัฒนาสามารถทำงานร่วมกันได้อย่างมีประสิทธิภาพ และสามารถติดตามการเปลี่ยนแปลงของโค้ดได้อย่างละเอียด ซึ่งช่วยลดความเสี่ยงของข้อผิดพลาดและช่วยให้การพัฒนาซอฟต์แวร์เป็นไปอย่างราบรื่น
ต่อไปนี้เป็นตัวอย่างการใช้งาน Git ที่น่าสนใจบางประการ:
- การพัฒนาซอฟต์แวร์: Git เป็นเครื่องมือที่ได้รับความนิยมอย่างมากในหมู่นักพัฒนาซอฟต์แวร์ และถูกใช้โดยโครงการซอฟต์แวร์ขนาดใหญ่มากมาย เช่น Linux, Firefox และ Android
- การวิจัย: Git สามารถใช้เพื่อติดตามการเปลี่ยนแปลงของเอกสารวิจัย ซึ่งช่วยให้นักวิจัยสามารถย้อนกลับไปที่เวอร์ชันก่อนหน้าของเอกสารได้เมื่อเกิดข้อผิดพลาด
- การจัดการเอกสาร: Git สามารถใช้เพื่อจัดการเอกสารต่างๆ เช่น เอกสารทางธุรกิจ เอกสารทางกฎหมาย และเอกสารส่วนตัว
วิธีในการติดตั้ง Git
การเริ่มต้นใช้งาน Git นั้นง่ายมาก คุณสามารถติดตั้ง Git บนคอมพิวเตอร์ของคุณได้โดยใช้วิธีดังนี้
สำหรับ Windows
- ไปที่เว็บไซต์ Git ดาวน์โหลดตัวติดตั้งสำหรับ Windows
- เปิดตัวติดตั้งและทำตามคำแนะนำ
- เมื่อการติดตั้งเสร็จสิ้น ให้เปิด Command Prompt แล้วพิมพ์คำสั่งต่อไปนี้เพื่อตรวจสอบว่า Git ติดตั้งสำเร็จหรือไม่
git --version
สำหรับ macOS
- เปิด Terminal
- พิมพ์คำสั่งต่อไปนี้เพื่อติดตั้ง Git
brew install git
- เมื่อการติดตั้งเสร็จสิ้น ให้เปิด Terminal แล้วพิมพ์คำสั่งต่อไปนี้เพื่อตรวจสอบว่า Git ติดตั้งสำเร็จหรือไม่
git --version
สำหรับ Linux
- เปิด Terminal
- พิมพ์คำสั่งต่อไปนี้เพื่อติดตั้ง Git
sudo apt-get install git
- เมื่อการติดตั้งเสร็จสิ้น ให้เปิด Terminal แล้วพิมพ์คำสั่งต่อไปนี้เพื่อตรวจสอบว่า Git ติดตั้งสำเร็จหรือไม่
git --version
เมื่อคุณติดตั้ง Git เรียบร้อยแล้ว คุณก็เริ่มใช้ Git เพื่อติดตามการเปลี่ยนแปลงของโค้ดของคุณได้
วิธีการใช้ Git
คำสั่งเบื้องต้น
git init
: สั่งให้ Git สร้างพื้นที่เก็บข้อมูล Git ใหม่git add
: สั่งให้ Git เพิ่มไฟล์ที่เปลี่ยนแปลงไปยังพื้นที่เก็บข้อมูลgit commit
: สั่งให้ Git บันทึกการเปลี่ยนแปลงของไฟล์ที่เพิ่มไปยังพื้นที่เก็บข้อมูลgit push
: สั่งให้ Git ส่งการเปลี่ยนแปลงจากพื้นที่เก็บข้อมูลของคุณไปยังพื้นที่เก็บข้อมูลระยะไกลgit pull
: สั่งให้ Git รับการเปลี่ยนแปลงจากพื้นที่เก็บข้อมูลระยะไกลไปยังพื้นที่เก็บข้อมูลของคุณ
คำสั่งขั้นสูง
git revert
: คำสั่งนี้ใช้เพื่อย้อนกลับการเปลี่ยนแปลงของ commit ก่อนหน้าgit branch
: คำสั่งนี้ใช้เพื่อสร้างสาขาใหม่ใน Gitgit merge
: คำสั่งนี้ใช้เพื่อรวมการเปลี่ยนแปลงจากสาขาหนึ่งไปยังอีกสาขาหนึ่งgit rebase
: คำสั่งนี้ใช้เพื่อย้ายการเปลี่ยนแปลงจากสาขาหนึ่งไปยังอีกสาขาหนึ่ง
ตัวอย่างการใช้
- การสร้างพื้นที่เก็บข้อมูล Git ใหม่
git init
- การเพิ่มไฟล์ที่เปลี่ยนแปลงไปยังพื้นที่เก็บข้อมูลโดยการใช้ git add . เป็นการบอกว่าเราจะแอด folder นี้ไปใน commit ครั้งนี้
git add .
- การบันทึกการเปลี่ยนแปลงของไฟล์ที่เพิ่มไปยังพื้นที่เก็บข้อมูล โดยหลัง -m ที่เป็น Add new feature เป็นการเขียนบอกว่าตัว commit นี้คืออะไรมีการทำอะไรไปบ้างเป็นการตั้งชื่อให้ commit
git commit -m "Add new feature"
- การส่งการเปลี่ยนแปลงจากพื้นที่เก็บข้อมูลของคุณไปยังพื้นที่เก็บข้อมูลระยะไกล หรือ เรียกง่ายๆว่าการ push หรือ up ขึ้น git โดยเราสามารถที่จะเปลี่ยน master เป็น branch ที่ตัวเองต้องการได้
git push origin master
- การดึงการเปลี่ยนแปลงจากพื้นที่เก็บข้อมูลระยะไกลไปยังพื้นที่เก็บข้อมูลของคุณ หรือ ก็คือดึงจากที่อยู่บน github หรือ gitlab ที่ update ล่าสุดโดยคนอื่นให้กลับมาบนเครื่องของเราที่เป็น local
git pull origin master
- การย้อนกลับการเปลี่ยนแปลงของ commit ก่อนหน้า
git revert <commit-id>
- การสร้างสาขาใหม่ใน Git
git branch <branch-name>
- การรวมการเปลี่ยนแปลงจากสาขาหนึ่งไปยังอีกสาขาหนึ่ง
git merge <branch-name>
- การย้ายการเปลี่ยนแปลงจากสาขาหนึ่งไปยังอีกสาขาหนึ่ง
git rebase <branch-name>