ប្រើ Remote Git ទៅ Github ដោយប្រើ SSH |
នេះមិនមែនជាពត៌មានថ្មីនោះទេ ដែល Github បានជូនដំណឹងតាំងតែពីចុងឆ្នាំ 2020 ថានឹងដកចេញនូវការ Login ដោយប្រើ username និង password ចេញពីការ remote ចេញពីម៉ាស៊ីនទៅ Github ដោយអោយអ្នកប្រើប្រាស់ប្តូរទៅប្រើ SSH Key ដែលមានសុវត្ថិភាពនិងទំនុកចិត្តជាង។
Github Login |
ជាធម្មតាពេលដែលត្រូវប្រើ Remote ពីម៉ាស៊ីនទៅ Github វាតែងតែតម្រូវអោយ Login ដូចផ្ទាំងខាងលើនៅលើ Windows និងវាយបញ្ចូល username និង password នៅលើ Terminal នៅលើ Mac និង Linux។ តែយើងក៏អាចរក្សា username និង password នៅក្នុង Git បានដែរ គឺនៅក្នុង Git Credential ប៉ុន្តែវាមិនបាន Encrypte នោះទេដែលជាហានិភ័យក្នុងការដែលគេអាចចូលទៅលួចហើយគ្រង់គ្រង់គណនី Github បាន។
១. តំឡើង SSH Key នៅលើម៉ាស៊ីន
ប្រើប្រាស់ Terminal នៅលើ Mac ឫ Linux និងប្រើ Git Bash នៅលើ Windows។ ដំបូងត្រូវ Generate SSH Key ដោយប្រើ command ដូចខាងក្រោម (ដូចគ្នាគ្រប់ OS) ដោយប្តូរ email៖
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
ពេល run command នោះវានឹងសួរថា៖
- Enter file in which to save .... គ្រាន់តែចុច Enter ឲ្យវា Save ទៅតាម default។
- Enter passphrase .... ជាពាក្យសម្ងាត់សម្រាប់ធ្វើការគ្រប់គ្រង SSH អាចដាក់អ្វីក៏បាន យកល្អដាក់ដូច password របស់កុំព្យូទ័រ រួចវាយម្តងទៀតដើម្បីធ្វើការបញ្ជាក់។
បន្ទាប់មកបញ្ចូល Key ទៅ SSH agent ដើម្បីអោយកុំព្យូទ័រដឹងថាត្រូវប្រើ SSH មួយណាត្រូវប្រើ៖
eval "$(ssh-agent -s)"
បន្ទាប់មកដាក់អោយប្រើ SSH ដែលមាន៖
ssh-add ~/.ssh/id_rsa
២. យក SSH Key ទៅដាក់លើ Github
បន្ទាប់ពីជំហ៊ានខាងលើរួចបានន័យថាកុំព្យូទ័រមាន SSH ជាស្រេចសម្រាប់ប្រើប្រាស់។ បន្ទាប់មកត្រូវចម្លង (Copy) SSH key ដែលមាននោះ ទៅដាក់នៅលើ Github ដើម្បីអោយវាចាំផ្ទៀងផ្ទាត់ថាត្រូវគ្នាឫទេ។ Command ខាងក្រោមនេះនឹង copy SSH Key ទៅ clipboard របស់កុំព្យូទ័រ ហើយវាខុសគ្នាទៅតាម OS៖
Mac OS
pbcopy < ~/.ssh/id_rsa.pub
Windows
clip < ~/.ssh/id_rsa.pub
Linux:
ដោយសារ Linux ត្រូវការ tool ដើម្បីអាច copy បាន ត្រូវតម្លើង xclip ជាមុនសិន៖
sudo apt-get install xclip
បន្ទាប់ពីតម្លើង xclip បានជោគជ័យ៖
xclip -sel clip < ~/.ssh/id_rsa.pub
បន្ទាប់ពីប្រើ command ខាងលើរួច ចូលទៅ login នៅលើ Github៖
ចូលទៅ Setting |
ដាក់ឈ្មោះ និង Paste SSH ដែលបាន Copy ដោយប្រើ command ខាងលើ |
៣. ដាក់ Remote តាម SSH នៅលើកុំព្យូទ័រ
ជាធម្មតាការប្រើ Remote ភាគច្រើនប្រើប្រាស់តាម HTTPS ដើម្បីប្តូរទៅ SSH វិញ ចូលទៅកាន់ Folder ដែលជា Git respository និងប្រើ command ខាងក្រោម៖
git remote set-url origin git@github.com:username/repo.git
ដែល Link ជា SSH អាចចូលទៅយកដូចរូបខាងក្រោម៖
Github SSH |
បន្ទាប់ពីនេះ SSH បានតម្លើងចប់ ដោយ Git និងមិនសួររក username និង password ទៀតឡើយ។ SSH key ជាពាក្យសម្ងាត់ដែលមិនត្រូវចែកចាយអោយអ្នកដ៏ទៃឡើយ។
បើក្នុងករណី Setup repo ថ្មី ដោយគ្រាន់តែ set remote ជា SSH ដូចចំនុចទី 3 ជាការស្រេច។
អានបន្ថែម៖ https://docs.github.com