답변:
git bash에서 이것을 실행할 수 있습니다 :
eval `ssh-agent -s`
ssh-add ~/.ssh/*_rsa
두 번째 명령에서 암호 문구를 요구할 것입니다. 수행해야 할 각 추가 작업 (한 번 암호 문구 필요)은 암호 문구를 요구하지 않습니다 (아래 스크린 샷의 예 참조).
.bashrc
열 때마다 프롬프트가 표시되고 해당 세션에 대해 모두 설정되었습니다.
~/.bashrc
만든 다음 게시물의 줄을 입력하고 저장하면됩니다 :) thx!
.bashrc
스크립트를 사용하여 .bash_profile
또는 에 배치합니다 .profile
. 여기 내 주요 부분의 스 니펫 .bash_profile
이 있습니다. 아직 답을 찾고있는 사람은이 문제를 해결해야합니다. 아래 답변과 비슷합니다. 스크립트 상단에 my를로드합니다 .bashrc
. 적용 할 수없는 경우에는 그대로 두십시오. 참고 : id_rsa
개인 SSH 키의 이름과 경로에 대한 참조를 변경해야 합니다.
약간 더 좋고 영구적 인 해결책 은 Windows에서 git bash를 열 때 ssh-agent를 자동으로 시작하는 것입니다. .profile 또는 .bashrc에서 아래를 복사하여 붙여 넣을 수 있습니다. 나는 그것을 .profile 에 두는 것을 선호합니다.
env=~/.ssh/agent.env
agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
agent_start () {
(umask 077; ssh-agent >| "$env")
. "$env" >| /dev/null ; }
agent_load_env
# agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2= agent not running
agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
agent_start
ssh-add
elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
ssh-add
fi
unset env
이 솔루션은 이 github 도움말에서 가져 왔습니다.
.bashrc
솔루션이 어떻게 다른가요? Windows bash에서 각 쉘은 독립적이므로 쉘을 실행할 때 에이전트가 실행되지 않습니다.
.bashrc
. 처음에만 ssh 암호문을 프롬프트합니다. 내 인생을 보호했다. 감사합니다.
ssh-add -D
모든 키를 삭제할 수 있습니다 .
내가 그것을 추천하고 싶은지 확실하지 않지만, 당신이 키를 생성하고 암호를 설정하도록 요청했을 때, 그냥 Enter를 누르고 암호를 건너 뛰십시오.
사용 방법에 대한이 링크를 살펴보십시오 ssh-keygen
:
https://help.github.com/articles/working-with-ssh-key-passphrases/
어쩌면 ssh-agent
당신을 도울 수 있습니다. 그러나 현재 시스템을 모르면 확실하지 않습니다.
mvn release:perform
단계적으로 암호 문구를 제공하지 않고 릴리스 태그를 체크 아웃하려고하기 때문에 그 동작은 maven 배포 흐름을 방해 했습니다. 따라서 암호를 지우는 것만 으로이 문제가 해결되었습니다.
repos 위치 " ssh-keygen -p " 에이 git 명령 을 입력하면 키 파일 위치, 이전 암호 구 및 새 암호 구를 입력하라는 메시지가 표시됩니다 (비밀번호를 사용하지 않으려면 비워 둘 수 있음). 새 비밀번호를 입력하지 않으면 비밀번호 문구가 제거됩니다.