Một tùy chọn khác được thực hiện để chỉ định các khóa khác nhau là git config core.sshCommandvới git 2.10 + (Q3 2016).
Đây là một thay thế cho biến môi trường được mô tả trong câu trả lời của Boris )
See commit 3c8ede3 (26 Jun 2016) by Nguyễn Thái Ngọc Duy ( pclouds) .
(Hợp nhất bởi Junio C Hamano - gitster- trong cam kết dc21164 , ngày 19 tháng 7 năm 2016)
Một biến cấu hình mới core.sshCommandđã được thêm vào để chỉ định giá trị nào cho GIT_SSH_COMMAND để sử dụng cho mỗi kho lưu trữ.
Tương tự như $GIT_ASKPASShoặc $GIT_PROXY_COMMAND, chúng tôi cũng đọc từ tệp cấu hình trước sau đó quay trở lại $GIT_SSH_COMMAND.
Điều này hữu ích để chọn các khóa riêng tư khác nhau nhắm mục tiêu đến cùng một máy chủ (ví dụ: github)
core.sshCommand:
Nếu biến này được đặt git fetchvà git pushsẽ sử dụng lệnh được chỉ định thay vì sshkhi chúng cần kết nối với hệ thống từ xa.
Lệnh có cùng dạng với GIT_SSH_COMMANDbiến môi trường và được ghi đè khi biến môi trường được đặt.
Nó có nghĩa là git clonecó thể:
cd /path/to/my/repo
git config core.sshCommand 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no'
# later on
git clone host:repo.git
Nếu bạn muốn áp dụng điều đó cho tất cả các repo, như user1300959 thêm vào trong các nhận xét , bạn sẽ sử dụng cấu hình chung.
git config --global core.sshCommand 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no'