SSH 비밀번호를 다시 입력하지 않고 어떻게`git pull`을 수행 할 수 있습니까? 때마다 암호를 입력 할 필요가 없도록

git/ssh을 수행 할 때마다 암호를 입력 할 필요가 없도록 구성 할 수 git pull있습니까? 저장소는 github의 개인 저장소입니다.

또는 개인 Github 저장소에서 코드 배포를 자동화하는 가장 좋은 방법은 무엇입니까?

추가 세부 정보 : Fedora를 기반으로 퍼블릭 AMI를 실행하는 EC2 인스턴스.



답변

이 링크 https://help.github.com/articles/working-with-ssh-key-passphrases/를 살펴보십시오.

하지만 키를 사용할 때마다 긴 암호를 입력하고 싶지 않습니다!

나도 마찬가지야! 고맙게도 ssh-agent암호를 안전하게 저장하여 다시 입력 할 필요가없는 멋진 도구
가 있습니다. OSX Leopard 이상을 사용하는 경우 시스템의 키 체인에 키를 저장하여 생활을 더 쉽게 할 수 있습니다. 대부분의 Linux 설치는 로그인 할 때 자동으로 ssh-agent를 시작합니다.


답변

여기에 설명 된대로 암호 캐싱을 활성화했습니다.

https://help.github.com/articles/caching-your-github-password-in-git/#platform-linux

한 달 동안 암호를 캐시하려면 :

git config --global credential.helper 'cache --timeout=2628000'

답변

이 시도:

git config credential.helper store

암호를 한 번 입력해야 루트 내의 폴더에 저장됩니다.

의견이 지적했듯이 이것은 SSH 암호에는 작동하지 않으며 HTTPS 암호에만 적용됩니다.


답변

당신의 상황은 이제 고정되었지만 나에게는 하나 이상의 키가 있다는 사실이었습니다. ~/.ssh/

문제를 해결하려면라는 파일을 만들고 ~/.ssh/config다음 줄을 추가해야했습니다.

IdentityFile ~/.ssh/my_key2_rsa

~/.ssh/my_key2_rsa내 열쇠는 어디에 있습니까 .


답변

아직 아무도 이것을보고하지 않은 이유를 모르겠습니다. 그러나 가장 간단한 방법은 AddKeysToAgent yes.ssh / config 파일 위에 한 줄만 추가하는 것 입니다. 물론 ssh-agent미리 실행해야합니다. 실행되지 않는 경우 ( ssh-agent터미널 의 명령 으로 확인 ) 간단히 실행하십시오.eval $(ssh-agent)

많은 하위 모듈이있는 내 프로젝트와 복제되는 각 하위 모듈에 대해 ssh 암호를 입력해야했기 때문에 이것이 작동하는지 확인할 수 있습니다. 위의 트릭 후에는 더 이상 할 필요가 없습니다.

솔루션의 소스는 /ubuntu/362280/enter-ssh-passphrase-once/853578#853578입니다.