특정 저장소로 푸시할 수 있는 SSH 키가 있습니다. 키 자체에는 문제가 없습니다. 그러나 키를 .ssh
폴더에 복사하거나 SSH 키를 ssh-agent(다른 시스템)에 보관하는 대신 휴대용 스크립팅 솔루션을 갖고 싶습니다.
-i
그래서 연결할 때 ID를 지정하는 방법과 동일한 방법을 찾고 있습니다 ssh
.
ssh -i /my/individual/path/id_rsa user@server
또한 예를 들어 GitHub에서 HTTPS를 사용하여 온라인으로 토큰을 생성한 후 다음을 수행할 수 있습니다.
git remote add origin "https://[email protected]/USER/REPO.git"
Git에서 직접 사용할 수 있도록 유사한 SSH 키가 있습니까?
답변1
예... ssh-agent 대신 ~/.ssh/config를 사용할 수 있습니다. 파일
에 추가하면 됩니다.~/.ssh/config
Host github.com
IdentityFile /my/individual/path/id_rsa
답변2
이것GIT_SSH_COMMAND
환경 변수를 사용하여 Git이 사용할 SSH 명령을 변경할 수 있습니다.
GIT_SSH_COMMAND="ssh -i /path/to/your/id_rsa" git clone git@whatever
아니면, 있어요core.sshCommand
로 설정 git config
:
git config core.sshCommand "ssh -i /path/to/your/id_rsa"
상대 경로를 사용할 수도 있습니다. 따라서 id_rsa
리포지토리 루트 폴더의 상위 폴더에 키를 유지하는 경우 다음 구성을 사용하면 git
어떤 리포지토리 폴더가 현재 작업 디렉터리인지에 관계없이 명령이 해당 키를 사용하게 됩니다.
git config core.sshCommand "ssh -i ../id_rsa"
노트:-F /dev/null
또한 로컬 SSH 구성을 읽지 못하도록 하려면 이러한 명령을 /etc/ssh/ssh_config
추가 해야 합니다 ~/.ssh/config
. 예를 들어 AddKeysToAgent yes
에 자동으로 키를 추가하는 작업이 포함될 수 있습니다 ssh-agent
.