14 คำสั่ง Git ที่จำเป็นต่อการทำงานของ Data Engineers
02-ส.ค.-24
คัมภีร์เทพ IT
Git เป็นเครื่องมือที่มีประโยชน์สำหรับ Control Version ของการพัฒนา Software และใน Data Engineering มันช่วยให้คุณจัดการและติดตามการเปลี่ยนแปลง Code ของคุณได้ รวมทั้งอำนวยความสะดวกในการทำงานร่วมกัน และบทความนี้ก็เป็น 14 คำสั่ง Git ที่จำเป็นต่อการทำงานของ Data Engineers
ทำไม Git จึงมีความสำคัญสำหรับ Data Engineers
- Version Control: ติดตามการเปลี่ยนแปลงของ Data Processing Scripts, Configurations และ Pipeline Definitions
- Collaboration: ทำงานได้อย่างราบรื่นกับสมาชิกคนอื่น ๆ ในทีมที่ทำงานใน Project เดียวกัน
- Backup และ Recovery: Maintain ประวัติการเปลี่ยนแปลง Code เพื่อเปลี่ยนกลับไปเป็น Version ก่อนหน้าได้ (หากจำเป็น)
- Branching: ทดลองใช้ Features หรือการแก้ไขใหม่ๆ โดยไม่กระทบต่อ Codebase หลัก
มาดูคำสั่ง Git ที่จำเป็นสำหรับ Data Engineers และคนทำงานสาย Data กัน
1. เริ่มต้นสร้าง Repository
หากต้องการเริ่มติดตาม Project ด้วย Git คุณต้องเริ่มต้นสร้าง Git Repository ใหม่
คำอธิบาย: คำสั่งนี้จะสร้าง Git Repository ใหม่ใน Folder ของ Project ของคุณ มันตั้งค่า `.git` Directory ที่ซ่อนอยู่ เพื่อเก็บข้อมูล Version Control ทั้งหมด
ตัวอย่าง:
สิ่งนี้จะสร้าง Directory ใหม่ชื่อ `my-data-project` และเริ่มต้นให้เป็น Git Repository
2. การ Clone Repository
หากคุณต้องการทำงานใน Project ที่มีอยู่แล้ว คุณสามารถ Clone Remote Repository ไปยัง Local Machine ของคุณได้
คำอธิบาย: คำสั่งนี้จะ Copy Repository จาก Remote Server ไปยัง Local System ของคุณ
ตัวอย่าง:
สิ่งนี้จะ Clone Repository จาก URL ที่ต้องการไปยัง Directory ที่ชื่อ `project` บน Local Machine ของคุณ
3. การตรวจสอบ Status
หากต้องการดู State ปัจจุบันของ Working Directory และ Staging Area ของคุณ คุณสามารถใช้คำสั่ง "git status" ได้
คำอธิบาย: คำสั่งนี้แสดงว่า Files ใดได้รับการแก้ไข ซึ่งจะถูกจัดเตรียมสำหรับการ Commit ครั้งถัดไป และ Files ใดไม่ได้ถูกติดตาม (Untracked)
ตัวอย่าง:
นี่จะแสดง Status ของ Files ใน Working Directory ของคุณ
4. การเพิ่ม Changes
ก่อนที่จะ การเปลี่ยนแปลงใด ๆ คุณจำเป็นต้องจัดเตรียม (Stage) การเปลี่ยนแปลงเหล่านั้นโดยใช้คำสั่ง “git add”
คำอธิบาย: คำสั่งนี้จะจัดเตรียมการเปลี่ยนแปลงเพื่อ Commit ในครั้งถัดไป คุณสามารถเพิ่ม Files ที่ต้องการ หรือทั้ง Directories ก็ได้
ตัวอย่าง:
คำสั่งแรกจะเพิ่ม `script.py` File สำหรับคำสั่งที่สองจะเพิ่มทั้ง Directory `data` และคำสั่งที่สามจะเพิ่มการเปลี่ยนแปลงทั้งหมดใน Directory ปัจจุบัน
5. Commit Changes
เมื่อมีการจัดเตรียมการเปลี่ยนแปลงแล้ว คุณสามารถ Commit พวกมันลงใน Repository ได้
คำอธิบาย: ข้อความ Commit ควรอธิบายเพื่อช่วยให้ผู้อื่นเข้าใจว่า มีการเปลี่ยนแปลงอะไรบ้าง
ตัวอย่าง:
คำสั่งนี้จะ Commit การเปลี่ยนแปลงที่จัดเตรียมไว้พร้อมกับข้อความ "Added data cleaning script"
6. การดู Commit History
หากต้องการดู Commit History ให้ใช้คำสั่ง “git log”
คำอธิบาย: คำสั่งนี้แสดง Commit History พร้อมรายละเอียด เช่น Commit ID, Author, Date และ Commit Message
ตัวอย่าง:
นี่จะแสดง Commit History โดยละเอียด หากต้องการแสดงประวัติแบบย่อ ให้ใช้คำสั่ง:
7. การ Create และการ Switch Branches
Branches จะช่วยให้คุณสามารถทำงานกับ Features ใหม่หรือแก้ไขข้อผิดพลาดได้ โดยไม่ส่งผลกระทบต่อ Codebase หลัก
Create Branches:
คำอธิบาย: คำสั่งนี้จะสร้าง Branch ใหม่
ตัวอย่าง:
สิ่งนี้จะสร้าง Branch ชื่อ `feature/data-cleaning`
การ Switch Branches:
คำอธิบาย: คำสั่งนี้จะสลับไปยัง Branch ที่ต้องการ
ตัวอย่าง:
ซึ่งมันจะสลับไปยัง Branch ชื่อ `feature/data-cleaning`
8. การ Merge Branches
เมื่อคุณทำงานใน Branch เสร็จแล้ว คุณสามารถ Merge มันกลับเข้าไปใน Main Branch ได้
คำอธิบาย: คำสั่งนี้จะ Merge การเปลี่ยนแปลงจาก Branch ที่ต้องการเข้าไปยัง Branch ปัจจุบัน
ตัวอย่าง:
ขั้นแรก สลับไปที่ `main` Branch จากนั้นจึง Merge `feature/data-cleaning` Branch รวมเข้าไปใน `main` Branch
9. การแก้ปัญหา Merge Conflicts
บางครั้ง การ Merge Branches อาจทำให้เกิด Conflicts ได้ Git จะทำเครื่องหมาย Conflicts ใน Files ที่ได้รับผลกระทบ คุณต้องแก้ไขมันด้วยตนเอง จากนั้นจึงเพิ่ม Files และ Commit การเปลี่ยนแปลง
ขั้นตอนในการแก้ปัญหา Merge Conflicts
- แก้ไข Files ที่กำลังเกิด Conflict เพื่อทำการแก้ไข Conflicts
- ทำการเพิ่ม Files ที่แก้ไขแล้ว:
Commit การ Merge:
10. การ Push Changes
หากต้องการแชร์การเปลี่ยนแปลงของคุณกับผู้อื่น ให้ Push Commits ของคุณไปยัง Remote Repository
คำอธิบาย: คำสั่งนี้จะ Upload Local Branch Commit ของคุณไปยัง Remote Repository
ตัวอย่าง:
สิ่งนี้จะ Push `main` Branch Commits ของคุณไปยัง `origin` Remote Repository
11. การ Pull Changes
หากต้องการ Fetch และ Merge การเปลี่ยนแปลงจาก Remote Repository ไปยัง Local Branch ของคุณ ให้ใช้:
คำอธิบาย: คำสั่งนี้จะ Fetch และ Merge การเปลี่ยนแปลงจาก Remote Repository ไปยัง Branch ปัจจุบันของคุณ
ตัวอย่าง:
สิ่งนี้จะ Fetch และ Merge การเปลี่ยนแปลงจาก `origin` Remote Repository
12. การดูความแตกต่าง
หากต้องการดูการเปลี่ยนแปลงที่เกิดขึ้นกับ File ให้ใช้คำสั่ง “git diff”
คำอธิบาย: คำสั่งนี้แสดงความแตกต่างระหว่าง Working Directory กับ Staging Area
ตัวอย่าง:
นี่แสดงให้เห็นถึงความแตกต่างใน `script.py` หากต้องการดูการเปลี่ยนแปลงระหว่าง Commits ให้ใช้:
13. Stashing Changes
หากคุณต้องการเปลี่ยน Branches แต่มีการเปลี่ยนแปลงที่ยังไม่ได้ Commit คุณสามารถเก็บมันไว้ชั่วคราวก่อนได้
คำอธิบาย: คำสั่งนี้จะบันทึกการเปลี่ยนแปลงของคุณไว้ชั่วคราวก่อน และทำให้ Working Directory กลับไปยังCommit ครั้งล่าสุดได้
ตัวอย่าง:
หากต้องการใช้การเปลี่ยนแปลงที่ถูกเก็บไว้ ในภายหลัง ให้ใช้:
14. การ Delete Branches
เมื่อคุณไม่ต้องการ Branch แล้ว คุณสามารถลบมันออกไปได้
คำอธิบาย: คำสั่งนี้จะลบ Branch ที่ต้องการ
ตัวอย่าง:
หากต้องการลบ Branch โดยไม่คำนึงถึงสถานะ ให้ใช้:
ที่มา: https://medium.com/
รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert
อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ
บทความล่าสุด