Skip to content
Home » GIT คืออะไร

GIT คืออะไร

git คืออะไร
2022-03-06 หัวเรื่อง Git คืออะไร และ การใช้งาน Git ขั้นพื้นฐาน เนื้อหา Git คือ Version Version Control ตัวหนึ่ง ซึ่งเป็นเครื่องมือที่ใช้สำหรับจัดเก็บและควบคุมการเปลี่ยนแปลงที่เกิดขึ้นกับโค้ดหรือข้อมูลในไฟล์ชนิดใดก็ได้ ไม่ว่าจะเป็น Binary file ไปจนถึง Text file ซึ่งโดยปกติเรามักรู้จักหรือเรียกว่า Source code นั้นเอง ทำไมต้องใช้ Git? 1. Track version ย้อนหลังของ Source code ได้ บ่อยครั้งที่เรามักพบว่าเมื่อเราเริ่มเขียนโค้ดอย่างต่อเนื่อง เป็นวัน สัปดาห์ หรือเดือน เรามักมีการแก้ไขโค้ดหลายครั้ง ซึ่งบางครั้งเมื่อมีการเขียนโค้ดใหม่เพิ่มเติมก็มีความเป็นไปได้ที่อาจจะส่งผลกระทบต่อฟังก์ชันการทำงานเดิมที่เราเคยพัฒนาไว้ ซึ่งโดยปกติแล้วเมื่อเรามีการจัดเก็บไฟล์เข้าไปในระบบ Git เราจะเรียกว่า Git Repository ซึ่งเป็นการเก็บสำรองข้อมูลและการเปลี่ยนแปลงของ Source code ไว้ ทำให้เมื่อเกิดปัญหาหรือมีความจำเราสามารถย้อนกลับไปใช้โค้ดเวอร์ชันเดิมของเราได้ โดยไม่ต้องไล่ลบโค้ดใหม่ที่เราเขียนหรือต้องคอยบันทึกไฟล์เป็นเวอร์ชันไว้ในคอมพิวเตอร์
  1. ช่วยให้การพัฒนาซอฟต์แวร์เป็นทีมง่ายขึ้น เนื่องจาก Git สามารถบันทึกการเปลี่ยนแปลงของ Source code เวอร์ชันล่าสุดได้ และยังสามารถบันทึกลงใน Local Repository ได้ด้วยเช่นกัน ซึ่งจะช่วยให้เราสามารถทำงานแม้จะไม่มีอินเตอร์เน็ตก็ตาม และเมื่อใดก็ตามที่เราต้องการอัปเดต Source code ของเราให้กับเพื่อนร่วมทีมก็สามารถที่จะ Push(นำโค้ดขึ้น) Source code ของเราขึ้นไปเก็บที่ Git Hosting ได้ และเพื่อนของเราก็สามารถที่จะ Pull(ดึงโค้ดลง) โค้ดเวอร์ชันล่าสุดมา Merge ทำให้ Source Code ที่พัฒนาร่วมกันกับคนภายในทีมเป็นเวอร์ชันล่าสุดเสมอ
สถานะของ Git (Git Status)
  • Untracked เป็นสถานะที่ Source Code ที่พึ่งเพิ่มเข้ามาใหม่และยังไม่ได้ถูกนำไปเก็บไว้ใน Git
  • Working Directory เป็นสถานะที่คล้ายกับการ Modified Source Code คือมีการเปลี่ยนแปลงหรือแก้ไข Source Code นั้นเอง
  • Staged เป็นสถานะที่กำลังเตรียมที่จะ Commit Source code เพื่อยืนยันการเปลี่ยนแปลงก่อนที่จะเก็บลงในสถานะ Local Repository
  • Local Repository เป็นสถานะที่มีการเก็บบันทึกข้อมูลการเปลี่ยนแปลงของ Source Code ลงไปที่ Git Repository ที่เครื่องตัวเอง
  • Remote Repository เป็นสถานะที่มีการเก็บบันทึกข้อมูลการเปลี่ยนแปลงของ Source Code ลงไปที่ Git Repository ที่เป็น Hosting หรือเครื่องเซิร์ฟเวอร์
คำสั่งการใช้งาน Git (Git Command Line)
  • Git Config
เป็นคำสั่งที่ใช้กำหนดข้อมูลของผู้ใช้เพื่อระบุตัวตน และคุณสมบัติของ Git $git config –global –list #แสดงคุณสมบัติของ Git ทั้งหมด $git config –list          #แสดงคุณสมบัติของ Git เฉพาะ Repository นั้น $git config –global user.name “Your Name”           #กำหนดชื่อผู้ใช้ $git config –global user.email “example@email.com”  #กำหนดอีเมล์ของผู้ใช้ $git config –global –list #ตรวจสองอีกครั้งหลังจากกำหนดค่าเสร็จแล้ว
  • Git Init
เป็นคำสั่งที่ใช้เหมือนการสร้าง Folder ใหม่ภายใต้ Git หรือการสร้าง Path โดยจะสร้าง Folder .git ขึ้นมาเพื่อใช้สำหรับเก็บ Source code $git init
  • Git Status
เป็นคำสั่งที่ใช้ตรวจสอบสถานะ Source code ที่อยู่ภายใน Git นั้น $git status
  • Git Add
เป็นคำสั่งที่ใช้เปลี่ยนสถานะของ Source code เป็น Staged เพื่อรอการยืนยันและเตรียม Commit $git add $git add README.md    #เพิ่มไฟล์ชื่อ README.md เข้าไปที่สถานะ Staged $git add .            #ใช้ในกรณีที่มีหลายๆ ไฟล์และต้องการเพิ่มเข้าไปทั้งหมด
  • Git Commit
เป็นคำสั่งที่ใช้ยืนยัน Source code ที่อยู่ในสถานะ Staged เพื่อเก็บไว้ที่ Local Repository $git commit -m “message”          #ยืนยันการเปลี่ยนแปลงพร้อมข้อความ $git commit -am “message”         #เพิ่มการเปลี่ยนแปลงและยืนยันพร้อมข้อความ $git commit                       #เพิ่มข้อความในโปรแกรม vi #ยืนยันการเปลี่ยนแปลงพร้อมข้อความและ merge ลงใน commit ล่าสุด $git commit –amend -m “message”
  • Git Log
เป็นคำสั่งที่ใช้เปิดประวัติการ Commit Source code $git log $git log –oneline $git log –oneline –decorate $git log –oneline –decorate –graph $git log –stat                #Diff from log $git log –grep=”Message”      #Log by message $git log –after=”2017-2-14″   #Log in date $git log –before=”2017-2-14″  #Log in date $git log –author=pakin        #Log by user  
  • Git Branch
เป็นคำสั่งที่ใช้สร้าง Branch หรือ สาขาใหม่ในการพัฒนา กรณีที่เราต้องการแยก Source code บางส่วนออกมาอย่างชัดเจน $git branch $git branch –all $git branch develop  #สร้าง branch ชื่อ develop $git branch –delete develop #ลบ branch ชื่อ develop #ส่งการเปลี่ยนแปลง branch develop ไปยัง Remote ที่ชื่อ origin $git push origin develop #ส่งการเปลี่ยนแปลงลบ branch develop ไปยัง Remote ที่ชื่อ origin $git push –delete origin develop
  • Git Merge
เป็นคำสั่งที่ใช้รวม Branch หลายๆ Branch เข้าด้วยกัน #รวม branch master กับ branch feature แบบ no fast forward $git merge –no-ff feature #รวม branch master กับ branch feature แบบ fast forward $git merge feature
  • Git Push
เป็นคำสั่งที่นำ Source code จากเครื่องของเราขึ้นไปไว้ยัง Remote Repository หรือ Hosting #ส่งการเปลี่ยนแปลง Branch master ไปยัง Remote ที่ชื่อ origin $git push origin master  
  • Git Fetch
เป็นคำสั่งที่นำ Source code ล่าสุดจาก Remote Repository กลับลงมายังเครื่องของเรา #รับการเปลี่ยนแปลงทุก Branch จาก Remote Repository $git fetch –all #รับการเปลี่ยนแปลง Branch master จาก Remote Repository ที่ชื่อ origin $git fetch origin master
  • Git Pull [fetch + merge]
เป็นคำสั่งที่มีลักษณะคล้ายกับ Git Fetch คือเป็นการนำ Source code ล่าสุดจาก Remote Repository กลับลงมายังเครื่องของเรา และทำการ Auto merge $git pull $git pull origin master
  • Git Clone
เป็นคำสั่งที่ดึงข้อมูลประวัติและ Source code ทั้งหมดของทีมจาก Git hosting ลงมายังที่เครื่องของเรา $git clone https://github.com/NewGame0/Android_HelloWorld.git

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *

COPYRIGHT © 2021 DEVDEVA COMPANY LIMITED ALL RIGHTS RESERVED