Czy można skonfigurować, git/ssh
aby nie musieć wpisywać hasła za każdym razem, gdy chcę wykonać git pull
? Zauważ, że repozytorium jest prywatne na githubie.
A może alternatywnie, jaka byłaby najlepsza praktyka w zakresie automatyzacji wdrażania kodu z prywatnego repozytorium Github?
Dodatkowe szczegóły: instancja EC2 z publicznym AMI opartym na Fedorze.
Odpowiedzi:
Spójrz na ten link https://help.github.com/articles/working-with-ssh-key-passphrases/
źródło
ssh-agent
: rabexc.org/posts/using-ssh-agentWłączyłem buforowanie haseł zgodnie z opisem tutaj:
https://help.github.com/articles/caching-your-github-password-in-git/#platform-linux
Aby przechowywać hasło w pamięci podręcznej przez miesiąc:
źródło
Spróbuj tego:
git config credential.helper store
Będziesz musiał raz wprowadzić hasło, a następnie zostanie ono zapisane w folderze w katalogu głównym.
Jak wskazano w komentarzach, NIE działa to w przypadku haseł SSH, tylko w przypadku haseł HTTPS.
źródło
Twoja sytuacja jest już naprawiona, jednak dla mnie był to fakt, że miałem więcej niż jeden klucz
~/.ssh/
Aby rozwiązać problem, musiałem utworzyć plik o nazwie
~/.ssh/config
i dodać wiersz:gdzie
~/.ssh/my_key2_rsa
jest mój klucz.źródło
id_rsa
iid_rsa.pub
pliki mają niestandardową nazwę, dlatego git nigdy by ich nie rozpoznał. ref: linux.die.net/man/5/ssh_configNie wiem, dlaczego nikt jeszcze tego nie zgłosił. Ale najprostszym podejściem byłoby po prostu dodanie pojedynczej linii
AddKeysToAgent yes
na górze pliku .ssh / config. Oczywiściessh-agent
wcześniej trzeba biec. Jeśli nie działa (sprawdź za pomocą poleceniassh-agent
na terminalu), po prostu go uruchomeval $(ssh-agent)
Mogę potwierdzić, że to działa, ponieważ w moim projekcie z wieloma podmodułami i dla każdego klonowanego podmodułu musiałem wpisać moje hasło ssh. Po powyższej sztuczce nie muszę już tego robić.
Źródłem rozwiązania jest /ubuntu/362280/enter-ssh-passphrase-once/853578#853578
źródło