Keywords: How to use multi account Git on a machine with ssh-key
Chắc hẳng nhiều bạn Dev đã từng làm việc freelancer hoặc 2 - 3 jobs cùng 1 lúc để có thêm thu nhập cho bản thân mình rồi đúng không nào, vậy những lúc như thế việc các bạn sử dụng nhiều tài khoản Git là điều xảy ra rất nhiều, vì mõi công ty họ sẻ có 1 Repo Git riêng, nên khi mình làm việc cho công ty A sẻ sử dụng Repo Git của công ty A và khi làm cho công ty B thì sẻ sử dụng Repo Git của công ty B, khi gặp vấn đề này, các bạn cần làm chính là tạo multi config để có thể thuận tiện cho việc push và pull code của cả A và B, vì thế hôm nay mình sẻ hướng dẫn cho các bạn cách để có thể config multi account Git.
Để làm được điều này thì trước tiên các bạn cần phải tạo file rsa để ssh trước đã, ta chạy lệnh saussh-keygenNó sẻ được như hình, vì mình thì muốn tạo nhanh để demo nên cứ enter hết cho lẹ, còn ai chăm chuốt cho cái key thì cứ xem hướng dẫn tạo ssh key trên mạng nhé, như là có Password hay gì đó chẳn hạn
Đến đây thì các bạn thực hiện lệnh cat file id_rsa.pub ra để lấy thông tin bên trong file đó gắn vào ssh trong profile của tài khoản Git của các bạn nhé.
cat id_rsa.pub
Truy cập đến phần "Settings", sau đó truy cập đến phần "SSH and GPG keys"
# Account github Pharmacity: default Host github.com HostName github.com User git IdentityFile ~/.ssh/github-thanhphatit-pmc/id_rsa IdentitiesOnly yes # Host gitlab personal Host gitlab.com HostName gitlab.com User git IdentityFile ~/.ssh/gitlab-thanhphatit/id_rsa # Host github personal Host github.com-thanhphatit HostName github.com User git IdentityFile ~/.ssh/github-thanhphatit/id_rsa IdentitiesOnly yesỞ file config trên tôi đã chia ra 3 config ứng với 3 folder cho 3 account 1 cái là Gitlab và 2 cái còn lại là Github cá nhân và cho công ty, các bạn cần chú ý phần Host và IdentityFile vì đây là 2 phần quang trọng cần phải thay đổi, đặc biệt là phần Host nó không thể giống nhau, ok sau khi đã tạo config xong rồi, để khi clone code về mà nó hiểu mình đang sử dụng account nào các bạn cần chú ý ở bước clone này, chúng ta có mẫu để clone như sau
- git clone git@host_in_config:personal_account_name/repo_name.git
git clone git@github.com-thanhphatit:thanhphatit/repo_name.git git clone [email protected]:thanhphatit-pmc/repo_name.gitNhư các bạn thấy ở phần host_in_config mình đã lấy cái giá trị host mà mình đã config ở trên file config, với tài khoản cá nhân mình là thanhphatit và tài khoản github của công ty của mình là thanhphatit-pmc, như vậy khi bạn clone repo nó đã hiểu được bạn sẻ lựa chọn ssh-key nào để sử dụng rồi đó, các vấn đề khác với git và tài khoản thì bạn cũng chú ý tương tự, ví dụ không phải git clone mà là git remote hay gì đó thì cũng làm tương tự ví dụ ở trên với host đúng với cái config và account của mình, như vậy mình đã hướng dẫn các bạn xong rồi đó, chúc các bạn thành công nhé !
0 Comments
Vài lời muốn nói:
* Không được nhận xét thô tục bởi mình biết các bạn là những người văn minh.
* Pass giải nén mặt định là itblognote hoặc itblognote.com nếu có Pass khác thì mình sẽ ghim trong bài viết.
* Click vào quảng cáo và chia sẻ bài viết để mình có thêm động lực viết bài nhé.