Latest Post

Tăng thứ hạng và truy cập tự nhiên với 10 phương pháp SEO hay nhất Kiếm Tiền Online (mmo): Khái Niệm và Các Hình Thức Phổ Biến

Trong bài viết trước về hướng dẫn xác thực tự động tài khoản Git, GithubGitlab, chúng tôi đã giới thiệu cách xác thực tài khoản bằng việc sử dụng SSH Keys và cụ thể về việc lưu trữ tệp Private Key id_rsa trong thư mục ~/.ssh trên hệ điều hành Ubuntu. Tuy nhiên, có một tình huống thường gặp là bạn tham gia vào nhiều dự án sử dụng mã nguồn mà chúng đặt ở nhiều vị trí khác nhau hoặc có nhiều tài khoản GitHub và Gitlab khác nhau. Trong trường hợp này, việc duy trì nhiều tệp Private Key có thể trở nên rối rắm, và bạn không thể sao chép chúng đơn giản vào cùng một vị trí.

Dưới đây, chúng tôi sẽ hướng dẫn bạn 5 cách để chỉ định tệp Private Key khi sử dụng các lệnh liên quan đến Git.

1. Sử dụng ssh-agent

VD sau sử dụng ssh-agent để chỉ định file ~/private-key/id_rsa_1 để thực hiện lệnh git clone source từ GitHub

ssh-agent sh -c 'ssh-add ~/private-key/id_rsa_1; git clone [email protected]:<username>/vinascript.com.git'

2. Sử dụng GIT_SSH_COMMAND

Từ Git version 2.3.0, bạn có thể sử dụng biên môi trường GIT_SSH_COMMAND để chỉ định file Private Key

GIT_SSH_COMMAND='ssh -i ~/private-key/id_rsa_2 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' git clone [email protected]:<username>/vinascript.com.git

3. Sử dụng GIT_SSH

Cách sử dụng tương tự GIT_SSH_COMMAND

echo 'ssh -i ~/private-key/id_rsa_3 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no $*' > ssh
chmod +x ssh
GIT_TRACE=1 GIT_SSH='./ssh' git clone [email protected]:<username>/vinasupport.com.git

4. Cấu hình file ~/.ssh/config

Sửa file ~/.ssh/config và thêm nội dung như bên dưới

Host github.com
  User <username>
  Hostname github.com
  IdentityFile ~/private-key/id_rsa_4

5. Cấu hình core.sshCommand

Từ Git version 2.10.0, bạn có thể sử dụng lệnh git config để chỉ định file Private Key

git config core.sshCommand "ssh -i ~/private_key/id_rsa_5 -F /dev/null"
git clone [email protected]:<username>/vinascript.com.git

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *