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 เป็นเพื่อนนะคะ

เพิ่มเพื่อน

 

บทความล่าสุด