Github เป็น source control หรือแหล่งเก็บรวม source code ที่ใหญ่เป็นเบอร์ต้นๆของโลก มีนักพัฒนาซอฟแวร์มากมายเลือกที่จะเก็บข้อมูลชุดคำสั่งของโปรแกรมเอาไว้ที่เว็บไซต์นี้ ตั้งแต่ Microsoft ซื้อไปเมื่อหลายปีก่อน ทาง Github ก็มีการเปลี่ยนแปลงการให้บริการหลายอย่างรวมไปถึงสิ่งที่จะเขียนในบทความนี้คือ Github ไม่สามารถล็อคอินด้วยรหัสผ่าน (password) ธรรมดาได้แล้ว และได้เปลี่ยนไปใช้การเข้าสู่ระบบหรือทำกิจกรรมต่างๆบนแพลตฟอร์มด้วย token ของนักพัฒนาเท่านั้น
การเปลี่ยนแปลงครั้งนี้ทำให้หลายคนไม่สามารถ pull/push ข้อมูลชุดคำสั่งของตัวเองมาได้อีก ในบทความนี้เลยอยากจะเขียนวิธีการแก้ไขเปลี่ยนจากการใช้รหัสผ่านไปใช้ personal token ให้เราสามารถทำงานได้เหมือนเดิมครับ ใช้เวลาทำไม่ถึง 5 นาทีก็เสร็จแล้ว เลยอยากจะเขียนเก็บไว้เผื่อวันหลังต้องกลับมาแก้ไขเหมือนกัน
เริ่มแรกเข้าไปที่เว็บไซต์ github.com แล้วกดที่มุมขวาบนที่เป็นรูปโปรไฟล์ของตัวเอง จากนั้นเลือกเมนู Settings
แล้วเลือกที่เมนู Developer Settings ด้านล่าง
แล้วเลือกเมนู Personal access tokens ครับ เราจะสร้าง token ใหม่สำหรับใช้เข้าสู่ระบบรวมถึงการ push/pull ต่างๆ ด้วยในอนาคต เมื่อเข้ามาแล้วให้กดปุ่ม Generate new token เพื่อเข้าไปหน้าสร้าง token
token ที่สร้างขึ้นนี้สามารถกำหนดสิทธิ์ได้ครอบคลุมหลายอย่าง เราอาจจะสร้าง token สำหรับใช้ deploy ชุดคำสั่งเท่านั้น หรือสร้าง token ให้กับคู่ค้าเข้ามาตรวจสอบความเรียบร้อย สร้าง token สำหรับใช้ทำ CI/CD เฉพาะบางโปรเจคเท่านั้นก็ทำได้ ขึ้นอยู่กับการเลือกให้สิทธิ์ (scopes) ในหน้า New personal access token นี้เลย
สิ่งที่ต้องเลือกในหน้านี้คือ Expiration หรือระยะเวลาที่ token นี้มีอายุการใช้งาน บางคนอาจจะตั้งไว้เดือนนึง หรือน้อยหรือมากกว่านั้น สำหรับคนที่ใช้พัฒนาโปรแกรมทำงานส่วนตัวในเครื่องตัวเอง ให้เลือก no expiration แบบผมก็ค่อนข้างสะดวกครับ ไม่ต้องมาสร้างใหม่บ่อยๆ
เลือกทุกอย่างได้แล้วก็เลื่อนลงมากดปุ่ม Generate token ได้เลย
หลังจากนั้นเว็บไซต์จะแสดง token ที่สร้างเรียบร้อยให้เรานำไปใช้งานครับ แนะนำว่าควรบันทึกเก็บไว้ที่ไหนสักที่เพราะเราจะได้ใช้ token นี้เข้าสู่ระบบและเชื่อมต่อกับบริการของ github ต่อไปหลังจากนี้
จากนั้นให้เปิด Keychian Access (สำหรับคนใช้ MacOSX) วิธีการเข้าที่ง่ายที่สุดคือผ่าน Spotlight ครับ พิมพ์ค้นหาแล้วดับเบิ้ลคลิกเข้าไปเลย เมื่อเข้ามาแล้วให้คลิกที่ All Items ตามลูกศรสีแดง จากนั้นในกล่องค้นหาให้พิมพ์คำว่า github เพื่อค้นหา key ที่แสดงประเภทแบบ Internet Password
ดับเบิ้ลคลิกเพื่อเข้าไปแก้ไข
ในช่อง Password ด้านล่างสุดให้คลิกที่ Show password แล้วนำ token ที่ได้จากเว็บไซต์ github.com เมื่อสักครู่มาใส่ตรงช่องนี้ จากนั้นกด Save changes แค่นี้เราก็สามารถทำงานได้ตามปกติแล้วครับ