Làm việc với nhiều tài khoản Github trên cùng một máy

Bạn có một tài khoản Github cá nhân, mọi thứ hoạt động trơn tru. Nhưng sau đó bạn nhận một công việc mới, sử dụng một tài khoản Github mới và bạn phải chuyển đổi giữa các tài khoản của bạn trong việc push và pull code. Làm sao để xử lý nó? Trong bài viết này mình sẽ hướng dẫn các bạn.

Cách tạo SSH key và clone repo căn bản

Dưới đây là hướng dẫn tạo SSH key và clone một repo từ Github. Tất nhiên là chỉ áp dụng với một tài khoản.

Oke, sau khi bạn đã hiểu cách làm việc với 1 account rồi thì ta sẽ làm việc với account tiếp theo.

Tạo mới một SSH key

Chúng ta cần generate một SSH key cho tài khoản Github thứ 2

bash
ssh-key

Hãy cẩn thận chỗ này, nếu không anh em sẽ ghi đè cái key của tài khoản cá nhân. Đừng vội Enter mà hãy gõ một tên file mới, ví dụ mình muốn file có tên là id_rsa_COMPANY thì mình sẽ gõ là C:\Users\dutha\.ssh/id_rsa_COMPANY, tức là anh em thay đổi cái tên cuối cùng trong cái chuỗi mà nó gợi ý.

Lấy SHH key vừa tạo add vào Github

Sau khi tạo thì anh em sẽ có 1 file chứa private key là id_rsa_COMPANY và file chứa public key là id_rsa_COMPANY.pub. Anh em sẽ dùng public key này add vào Github.

Cách lấy public key thì anh em có thể xem video bên trên của mình hoặc anh em cứ vào đường dẫn mà khi generate SSH key xong nó show ra, anh em mở file id_rsa_COMPANY.pub bằng Chrome rồi copy hết text trong đó là được.

Tạo một config file

Ok, bây giờ anh em vào trong thư mục .ssh tạo một file tên là config (file này không có phần đuôi mở rộng). Tiếp theo mở file này lên bằng VS Code (hoặc VIM, Notepad...)

Đầu tiên chúng ta sẽ setup cho tài khoản Github cá nhân trước. Lưu ý là hãy xác định đúng IdentityFile của bạn.

Copy snippet phía dưới vào file config nhé.

bash
#Default GitHub
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa

Ok, bây giờ chúng ta sẽ thêm tài khoản Github thứ 2. Copy đoạn code phía dưới thêm vào file config

bash
Host github-COMPANY
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_COMPANY

Lần này mình đã thay đổi github.com thành github-COMPANY. Lưu lại và thoát ra nhé.

Thử thôi!!!

Chúng ta đã cấu hình, setup xong hết rồi. Bây giờ hãy tạo một thư mục, khởi tạo git và tạo một commit đầu tiên

bash
git init
git commit -am "first commit'

Login tài khoản Github thứ 2 của bạn vào Github, tạo một repository tên là "Test" và chạy các câu lệnh dưới đây trong terminal để push code lên git repo.

bash
git remote add origin git@github-COMPANY:Company/testing.git
git push origin master

Để ý là lần này thay vì sử dụng git@github.com, chúng ta đã thay đổi thành git@github-COMPANY như chúng ta đã config trong file config.

Trở lại Github và bạn sẽ thấy repository của bạn. Hãy nhớ rằng:

  • Khi làm việc với tài khoản cá nhân thì bạn không cần thay đổi gì cả.
  • Khi làm việc với tài khoản thứ 2 thì hãy chắc chắn rằng bạn đã sử dụng git@github-COMPANY.

Đó là tất cả những gì bạn cần biết khi làm việc nhiều tài khoản với Github. Cảm ơn mọi người đã đọc đến đây, chúc mọi người thực hiện thành công.

Bài viết được tham khảo từ: Quick Tip: How to Work with GitHub and Multiple Accounts