매번 프롬프트에 사용자와 비밀번호를 입력하지 않고 GitExtension 에서 자동으로 푸시 앤 풀을 사용하고 싶습니다 .
그렇다면 자격 증명을 git에 어떻게 저장할 수 있습니까?
답변
운영
git config --global credential.helper store
그때
git pull
사용자 이름과 비밀번호를 제공하면 해당 정보가 나중에 기억됩니다. 자격 증명은 디스크 권한으로 “읽기 가능 / 쓰기 가능”이지만 여전히 일반 텍스트로 디스크에 파일로 저장됩니다.
나중에 비밀번호를 변경하려면
git pull
암호가 올바르지 않기 때문에 실패합니다 .git은 ~/.git-credentials
파일 에서 문제가되는 사용자 + 암호를 제거 하므로 이제 다시 실행하십시오.
git pull
새 비밀번호를 제공하여 이전과 같이 작동합니다.
답변
를 사용하여 git config
git에서 자격 증명 저장소를 활성화 할 수 있습니다 .
git config --global credential.helper store
이 명령을 실행할 때 원격 저장소에서 처음으로 당기거나 밀 때 사용자 이름과 비밀번호를 묻는 메시지가 표시됩니다.
이후에 원격 저장소와의 통신을 위해 사용자 이름과 비밀번호를 제공 할 필요가 없습니다.
저장 형식은 .git-credentials
일반 텍스트로 저장된 파일입니다.
또한 git config credential.helper
메모리 캐시에 다른 도우미를 사용할 수 있습니다 .
git config credential.helper cache <timeout>
timeout parameter
자격 증명이 메모리에 보관되는 기간을 결정 하는 선택적이 필요합니다 . 도우미를 사용하면 자격 증명이 디스크를 건드리지 않으며 지정된 시간 초과 후에 지워집니다. default
값은900 seconds (15 minutes).
경고 :이 방법을 사용하면 git 계정 비밀번호는 plaintext
형식 으로 저장됩니다 global .gitconfig file
. 예를 들어 Linux에서는/home/[username]/.gitconfig
이것이 마음에 들지 않으면 ssh key
대신 계정에를 사용하십시오.
답변
권장되고 안전한 방법 : SSH
ssh Github 키를 작성하십시오. 이동 github.com -> 설정 -> SSH 및 GPG 키 -> 새 SSH 키. 이제 개인 키를 컴퓨터에 저장하십시오.
그런 다음 개인 키가 ~ / .ssh / 디렉토리에 id_rsa 로 저장되면 인증을 위해 다음과 같이 추가합니다.
ssh-add -K ~/.ssh/id_rsa
보다 안전한 방법 : 캐싱
git-credential-store를 사용하여 일정 기간 동안 사용자 이름과 비밀번호를 캐시 할 수 있습니다. CLI (터미널 또는 명령 프롬프트)에 다음을 입력하기 만하면됩니다.
git config --global credential.helper cache
다음과 같이 시간 초과 기간 (초)을 설정할 수도 있습니다.
git config --global credential.helper 'cache --timeout=3600'
훨씬 덜 안전한 방법
Git-credential-store를 사용할 수도 있지만 다음과 같이 암호를 디스크에 일반 텍스트 파일로 저장합니다.
git config credential.helper store
오래된 답변-빠르고 안전하지 않은
암호를 일반 텍스트로 저장 하는 안전하지 않은 방법입니다. 누군가가 컴퓨터를 제어 할 경우 암호가 노출됩니다!
다음과 같이 사용자 이름과 비밀번호를 설정할 수 있습니다.
git config --global user.name "your username"
git config --global user.password "your password"
답변
자격 증명 도우미를 켜서 Git이 한동안 암호를 메모리에 저장합니다.
터미널에 다음을 입력하십시오.
# Set git to use the credential memory cache
git config --global credential.helper cache
기본적으로 Git은 15 분 동안 비밀번호를 캐시합니다.
기본 비밀번호 캐시 제한 시간을 변경하려면 다음을 입력하십시오.
# Set the cache to timeout after 1 hour (setting is in seconds)
git config --global credential.helper 'cache --timeout=3600'
에서 GitHub의 도움말
답변
자격 증명~/.gitconfig
을 저장 하기 위해 파일을 편집 할 수 있습니다
sudo nano ~/.gitconfig
이미 가지고 있어야
[user]
email = your@email.com
user = gitUSER
이 파일의 맨 아래에 추가해야합니다.
[credential]
helper = store
이 옵션을 권장하는 이유는 전체 옵션이므로 언제든지 이동하고 변경해야하는 옵션을 제거해야합니다.
이 옵션은 개인용 컴퓨터에서만 사용하십시오.
그런 다음 당기면 | 클론 | git password를 입력하십시오. 일반적으로 암호는 ~/.git-credentials
다음 형식 으로 저장 됩니다
https://GITUSER:GITPASSWORD@DOMAIN.XXX
DOMAIN.XXX가 GITHUB.COM이 될 수있는 곳 | BITBUCKET.ORG | 다른
문서 참조
터미널을 다시 시작하십시오.
답변
다음과 같이 자격 증명을 URL에 넣으십시오.
https://Username
:Password
@github.com/myRepoDir/myRepo.git
다음과 같이 저장할 수 있습니다 .
git remote add myrepo https://Userna...
… 사용 하는 예 :
git push myrepo master
이제 URL 별칭 을 나열 하는 것입니다.
git remote -v
… 그중 하나를 삭제하라는 명령 :
git remote rm myrepo
답변
전역 설정의 경우 터미널을 열고 (어디서나) 다음을 실행하십시오.
git config --global user.name "your username"
git config --global user.password "your password"
이를 통해 머신에있는 로컬 git repo가 해당 정보를 사용합니다.
다음을 수행하여 각 저장소에 대해 개별적으로 구성 할 수 있습니다.
- repo 폴더에서 터미널을 엽니 다.
-
다음을 실행하십시오.
git config user.name "your username" git config user.password "your password"
구성이 로컬이기 때문에 해당 폴더에만 영향을줍니다.