ในอดีต เราสามารถใช้ Username และ Password ของ GitHub ในการยืนยันตัวตนผ่าน Git ได้โดยตรง แต่ปัจจุบัน GitHub ได้ยกเลิกวิธีการนี้ไป
ด้วยเหตุผลหลักๆ คือ:
ความเสี่ยงจากการถูกดักข้อมูล: หากรหัสผ่านหลักของคุณหลุดไป ผู้ไม่หวังดีจะเข้าถึงบัญชี GitHub ของคุณได้ทั้งหมด 100%
การจัดการสิทธิ์: รหัสผ่านปกติไม่สามารถจำกัดสิทธิ์ได้ (เช่น ให้แค่อ่านอย่างเดียว หรือให้เข้าถึงเฉพาะบาง Repository)
การยกเลิกสิทธิ์: หากคุณทำรหัสผ่านหลุด คุณต้องเปลี่ยนรหัสผ่านใหม่ทั้งหมด ซึ่งกระทบกับทุกเครื่องที่ใช้งาน แต่ PAT (Personal Access Token) สามารถยกเลิก (Revoke) เป็นรายสิทธิ์ ได้
Personal Access Token (PAT) คือทางออกที่ดีกว่าอย่างไร?
PAT เปรียบเสมือน "กุญแจสำรอง" ที่เราสร้างขึ้นมาเพื่อมอบให้แอปพลิเคชันหรือเครื่องคอมพิวเตอร์เครื่องนั้นๆ โดยเฉพาะ ซึ่งมีข้อดีคือ:
Fine-grained Control: เลือกได้ว่าจะให้ Token นี้ทำอะไรได้บ้าง (เช่น เข้าถึง Repo ได้ แต่ลบ Repo ไม่ได้)
Expiration Date: ตั้งวันหมดอายุได้ เพื่อความปลอดภัยที่รัดกุมขึ้น
Traceability: เราสามารถตรวจสอบได้ว่า Token ไหนถูกใช้งานล่าสุดเมื่อไหร่
สรุป: การเปลี่ยนมาใช้ Personal Access Token ไม่ใช่แค่การทำตามกฎของ GitHub เท่านั้น แต่มันคือการยกระดับความปลอดภัยให้กับ Source Code และโปรเจกต์สำคัญของคุณให้รอดพ้นจากการถูกโจรกรรมข้อมูล
เมื่อเราเข้าใจเหตุผลและความสำคัญแล้ว ขั้นตอนถัดไปเรามาดู วิธีการสร้างและติดตั้ง PAT ลงในเครื่อง เพื่อให้กลับมาทำงานได้อย่างลื่นไหลกันครับ
สร้าง Personal Access Token
- ไปที่ https://github.com/settings/apps
- คลิก Personal access tokens -> Token (classic)
- คลิก Generate new token (classic)
- กำหนดชื่อ และระยะเวลาสิ้นสุด
- เลือก scope: repo
- เลื่อนลงไปด้านล่างสุดแล้วคลิก Generate Token
- คัดลอก token ที่ได้เพื่อนำไปใช้
เริ่มต้น Git repository:
กลับมาที่ Terminal ของเรา เปลี่ยนไดเรคทอรี่ไปที่ทำงานของเราแล้ว git initial กันก่อนเลยครับ
cd /home/devuser/computer_vision
git init
การตั้งค่า Git User
git config --global user.name
git config --global user.email
หากไม่ตรงให้กำหนดหรือตั้งค่าใหม่ดังนี้
git config --global user.name "ชื่อของคุณ"
git config --global user.email "อีเมลของคุณ"
กรณีตัวอย่าง

เพิ่ม remote repository
git remote add origin https://github.com/username/repository.git
สามารถใส่ token ใน URL ได้ (แต่ไม่แนะนำนะครับ ไม่ปลอดภัย) เช่น git remote add origin https://[YOUR_TOKEN]@github.com/username/repository.git
# ตรวจสอบ remote
git remote -v
ตั้งค่า credential helper
# เก็บ credentials ไว้ 15 นาที (ไม่ต้องใส่ token ซ้ำ)
git config --global credential.helper 'cache --timeout=900'
git config --global credential.helper store
Push ไปยัง remote
ตรวจสอบ branch ปัจจุบัน
git branch
# ถ้ายังไม่มี branch main ให้สร้าง:
git branch -M main
เพิ่มไฟล์และ commit
git add .
git commit -m "Initial commit"
git push -u origin main
# เมื่อถาม Password: ใส่ Personal Access Token (ไม่ใช่รหัสผ่าน!)

ตรวจสอบผลลัพธ์
git remote -v
git branch -a
git log --oneline

เรียบร้อย หลังจากนี้เราก็สามารถพัฒนาโค้ดบน Github และเครื่องคอมพิวเตอร์ของเราได้ด้วยความปลอดภัย



