+9

Cách làm việc với GitHub và nhiều tài khoản

Giới thiệu

Hiện nay việc sử dụng GIT trong việc quản lý version source code chiếm hết 99% nên nếu là một lập trình viên chắc hẳn các bạn không thể không biết về GIT.

Mình xin nhắc lại một vài kiến thức cơ bản về GITGITHUB . GIT là một công cụ quản lý source code, branch của GIT giúp chúng ta có thể rẻ nhiều nhánh để có thể phát triển nhiều task một lần nhưng cũng không bị mất code hay không đồng bộ code. Ở đó sẽ có 1 branch làm chính (là nơi chứa code chuẩn nhất đồng thời đầy đủ nhất) và có nhiều branch (các task đang thực hiện) sẽ được rẻ nhánh từ đó. Còn GITHUB đơn giản là một server quản lý phiên bản của các repositories, bên cạnh GITHUB còn BitBucket .

Để xác thực tài khoản trong GITHUB chúng ta có các cách cơ bản sau:

  • Cách 1: Xác thực tự động với .netrc

    Hãy tạo một file với đường dẫn ~/.netrc có nội dung như sau:

    NOTE: Cách này chỉ sử dụng cho Linux, Mac và không dùng cho Window.

  • Cách 2: Sử dụng SSH

    • Tạo ssh Key: ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

    • > Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter] Ở đây nếu bạn không chỉ định tên file thì ssh key sẽ được lưu ở file có name id_rsa

    • Nếu bạn muốn add ssh key vào ssh-agent để quản lý thì bạn hãy check key đó đã tồn tại chưa. Muc đích sử dụng ssh-agent để bạn có thể access vào nhiều môi trường server và dùng chính ssh key của mình để làm việc với GITHUB tránh việc đăng nhập nhiều lần.

      eval $(ssh-agent -s

      ssh-add ~/.ssh/id_rsa

    • Rồi sau đó bạn add SSH key của mình vào GITHUB tham khảo tại đây

Nội dung ở trên là mình đang hướng dẫn các bạn sử dụng 1 tài khoản vậy có nhiều tài khoản thì phải như thế nào? Chúng ta cùng tìm hiểu tiếp nhé.

Sử dụng nhiều tài khoản github

Như các bạn biết 1 ssh key chỉ có thể dùng auto xác thực cho 1 tài khoản GITHUB. Vậy nếu các bạn có nhiều hơn 1 tài khoản thì bạn cần phải quản lý tài khoản đó để có thể từ 1 máy các bạn có thể làm việc được nhiều tài khoản. Ví dụ bạn có 2 mail 1 dành cho công việc, 1 dành cho cá nhân.

Bước 1 : Chuẩn bị ssh key

Ở phần trên mình đã hướng dẫn các bạn tạo ssh key thì các bạn cần chú ý ở

> Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter] Ở đây nếu bạn không chỉ định tên file thì ssh key sẽ được lưu ở file có name id_rsa. Bạn có thể tạo file khác với tên là: id_rsa-COMPANY hoặc id_rsa-PERSONAL

Bước 2: - Rồi sau đó bạn add SSH key của mình vào GITHUB tham khảo tại đây

Bước 3: Tạo 1 file config ở .ssh/

touch ~/.ssh/config

vim config Ở file này mình sẽ quản lý để biết được ssh key file nào là thuộc tài khoản nào

#Default GitHub
 Host github.com
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa
  
#Account GitHub company
  Host github-COMPANY
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa_COMPANY

Nếu bạn có 5 tài khoảng GITHUB thì tạo 5 cái ssh key rồi config ở tại đây.

Bước 4: Kiểm tra

Nếu bạn muốn lấy repository của công thông qua ssh key thì

git clone origin git@github-COMPANY:framgia/testing.git

Trong đó git@github-COMPANY phải giống với Host github-COMPANY mà bạn đã config ở trên.

Kết luận

Hy vọng qua bài viết này sẽ giúp các bạn có thể sử dụng GIT tốt hơn. Hẹn gặp bạn ở bài sau 😄


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.