🔴 ปัญหา
เวลา git push ขึ้น GitHub แล้ว commits ปรากฏว่าเป็น ชื่อคนอื่น ไม่ใช่ชื่อตัวเอง
ในกรณีนี้
ปัญหาเกิดจาก credential เดิมของผู้ใช้ก่อนหน้า
ถูกเก็บค้างในเครื่องห้องแลบ
ทำให้เวลา
git push
ระบบใช้ชื่อ–โทเคน–บัญชีของคนก่อนหน้าโดยอัตโนมัติ
เพื่อแก้ไข จำเป็นต้อง ล้าง credential เดิมทั้งหมด แล้วตั้งของเราใหม่
ขั้นตอนแก้ปัญหา: ล้าง Auth เดิม + ตั้งค่าใหม่
1) ลบ Git Credential เดิมในเครื่อง
สำหรับ Windows (ห้องแลบส่วนใหญ่ใช้ Windows)
✔ วิธีที่ 1: ผ่าน GUI
- เปิด Control Panel
- เลือก Credential Manager
- เลือก Windows Credentials
-
เลื่อนลงมาหา:
git:github.comgit:https://github.com
- กด Remove ทุกอันที่เกี่ยวกับ git หรือ GitHub
✔ วิธีที่ 2: ใช้คำสั่ง PowerShell ลบ credential cache
git credential-manager clear
หรือถ้าใช้ Git Credential Manager (GCM):
git credential-manager-core erase
2) ลบชื่อ user เดิมใน git config
ตรวจสอบชื่อและอีเมลปัจจุบัน
git config --global --list
ล้างค่า (ถ้าเป็นของคนอื่น)
git config --global --unset user.name
git config --global --unset user.email
3) ตั้งชื่อของเราเอง
git config --global user.name "YOUR NAME"
git config --global user.email "YOUR EMAIL"
4) ลอง push ใหม่
git push
ครั้งแรก Git จะขอให้ ล็อกอินใหม่ หรือเปิด browser เพื่อ authenticate คราวนี้จะเป็นบัญชีของท่านเองแน่นอน
💡 เคสพิเศษ: รีเซ็ตเครื่องห้องแลบให้สะอาด
ถ้าต้องการล้างทุกอย่างแบบ "รีเซ็ต" ให้สะอาดสุดๆ
git credential-cache exit
git config --global --unset-all user.name
git config --global --unset-all user.email
หลังจากนั้นให้ทำขั้นตอนที่ 3 ใหม่เพื่อตั้งค่าของตัวเองใหม่
1️⃣ ลบ credential เดิม (Credential Manager) → 2️⃣ ล้าง git config → 3️⃣ ตั้งชื่อของตัวเอง → 4️⃣ Push ใหม่