Giton 비트 버킷:공용 SSH 키를 업로드한 후에도 항상 암호를 요청함
는 제 ㅠㅠㅠㅠ을 했습니다.~/.ssh/id_rsa.pub
설명한 대로 비트버킷의 SSH 키에 연결하지만 Git는 여전히 모든 작업에서 내 암호를 요청합니다(예:git pull
제가 뭔가를 놓쳤나요?
개인 저장소(다른 사람의 개인 저장소 포크)이며 다음과 같이 복제했습니다.
git clone git@bitbucket.org:Nicolas_Raoul/therepo.git
여기가 제 지역입니다..git/config
:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = https://Nicolas_Raoul@bitbucket.org/Nicolas_Raoul/therepo.git
[branch "master"]
remote = origin
merge = refs/heads/master
동일한 공개 키를 가진 동일한 환경에서 Giton Github은 정상적으로 작동합니다.
.ssh
이라rwx------
,.ssh/id_rsa
이라-rw-------
,.ssh/id_rsa.pub
이라-rw-r--r--
sshurl을 사용하여 복제한 것이 확실합니까?
은 원지은 URL다음같니다로 되어 .url = https://Nicolas_Raoul@bitbucket.org/Nicolas_Raoul/therepo.git
그래서 만약 그것이 https를 사용하고 있다면, 그것은 당신의 ssh 키에 상관없이 비밀번호를 요구할 것입니다.
따라서 다음과 같은 작업을 수행할 수 있습니다.
현재 레포에서 구성 파일을 엽니다.
vim .git/config
그리고 URL로 행을 변경합니다.
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = https://Nicolas_Raoul@bitbucket.org/Nicolas_Raoul/therepo.git
로.
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@bitbucket.org:Nicolas_Raoul/therepo.git
여기에서 설명한 것처럼 SSH URL로 복제하는 경우, 푸시/풀할 때마다 사용자 이름/암호를 입력할 필요가 없습니다.@manojlds의 위 답변 확인
그러나 HTTPS로 복제하고 매번 사용자 이름/암호를 입력하지 않으려면 다음 명령을 사용하여 자격 증명을 캐시에 저장할 수 있습니다.
git config --global credential.helper 'cache --timeout 3600'
여기서 3600(초)는 1시간을 의미하며, 요구 사항에 따라 변경할 수 있습니다.
위에서 이미 답변했습니다.위에서 확인할 단계를 요약하겠습니다.
려달을 git remote -v
프로젝트 dir에서.이 " url"로하는 경우https://abc
그러면 매번 사용자 이름 암호가 필요할 수 있습니다.
원격 URL 실행을 변경하려면 다음과 같이 하십시오.git remote set-url origin {ssh remote url address starts with mostly git@bitbucket.org:}
.
지금실을 실행합니다.git remote -v
변경된 원격 URL을 확인합니다.
참조: https://help.github.com/articles/changing-a-remote-s-url/
안녕하세요, 미래의 구글 사람들.
MacOS >= High Sierra에서는 SSH 키가 더 이상 KeyChain에 저장되지 않습니다.
용사를 합니다.ssh-add -K
더 이상 재시작할 수 없습니다.
저는 첫 번째 방법을 성공적으로 사용했습니다.다과같은파만다니라는 .config
안에~/.ssh
:
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_rsa
Ubuntu 시스템을 사용하는 경우 다음을 사용하여 암호를 영구적으로 저장합니다.
git config --global credential.helper store
HTTP 요청의 경우 암호가 포함된 자격 증명을 다음 URL에 직접 붙여넣을 수도 있습니다.
http://username:password@bitbucket.org/...
이렇게 하면 매번 자격 증명을 제공하는 수고를 덜 수 있습니다..git/config(URL)를 수정하기만 하면 됩니다.
이 답변들 중 어떤 것도 저에게 도움이 되지 않았고, 제 문제가 약간 다르다는 것이 밝혀졌습니다.키를 보내기 전에 매번 나의 비밀번호를 묻는 것은 ssh였습니다.그래서 제가 해야 할 일은 다음 명령으로 제 암호를 연결하는 것이었습니다.
ssh-add -K ~/.ssh/id_rsa
그러면 암호를 입력하라는 메시지가 표시되고 암호를 저장합니다.매번 암호를 입력하라는 메시지가 표시되는 경우 이 방법을 사용할 수 있습니다.
'/Users//.ssh/id_rsa' 키의 암호를 입력하십시오.
자세한 내용은 여기에 있습니다.
참고: 나는 이것을 맥 머신에서 성공적으로 사용했지만, @Rob Kwasowski가 아래에서 지적했듯이, 대문자K
옵션은 mac에 고유합니다.에는 소문자 Mac을 .k
(아마도 Mac에서도 작동하지만 테스트하지는 않았습니다.)
설치하기: git-credential-winstore 설치하기
https://confluence.atlassian.com/bitbucketserver/.htmlhttps ://confluence.atlassian.com/bitbucketserver/permanently-authenticating-with-git-repositories-776639846.html2단계: git config --global credential. --cache 은(는) 'cache 3600'입니다.
입니다.- 3단계: 암호를 입력하라는 git 명령을 실행하면 인증 정보가 암호를 입력하라는 메시지를 표시하고 저장합니다.
다음은 iTerm/Terminal을 통해 비트 버킷에 대한 명령줄 액세스를 가정한 것입니다.
MacOS Sierra 10.12.5의 경우, 내 시스템은 비트 버킷에 대한 각 연결에 대해 내 SSH 암호를 요청하는 동일한 문제를 나타냈습니다.
이 문제는 여기 기술 노트 TN2449에 설명된 macOS 10.12.2의 OpenSSH 업데이트와 관련이 있습니다.
솔루션을 사용자 지정하고 싶을 수도 있지만 ~/.ssh/config 파일에 추가하면 다음이 작동합니다.
Host *
UseKeychain yes
ssh 구성에 대한 자세한 내용은 ssh_config에 대한 man 페이지를 참조하십시오.
% man ssh_config
또 하나: 여기 슈퍼 유저에 대한 좋은 글이 있습니다. 이 문제와 당신의 필요와 설정에 따라 다양한 해결책을 논의합니다.
SSH URL 대신 HTTPS URL로 저장소를 복제하여 Bash Shell에서 암호를 요청하던 SSH 키를 추가한 후에도.
방금 편집했습니다../.git/config
을 했습니다.url
단순히 교체함으로써 변수가 됩니다.https://
ssh://
예.
[core]
...
...
...
[remote "origin"]
url = https://<username>@bitbucket.org/<username>/<repository_name>.git
fetch = +refs/heads/*:refs/remotes/origin/*
...
...
...
변경된 항목:
[core]
...
...
...
[remote "origin"]
url = ssh://<username>@bitbucket.org/<username>/<repository_name>.git
fetch = +refs/heads/*:refs/remotes/origin/*
...
...
...
SSH ID 파일을 다시 확인해야 할 수도 있습니다.BitBucket에 저장한 동일한 공개 키에 대해 다른/잘못된 개인 키를 보도록 BitBucket을 안내할 수 있습니다.
으로확다니로 .tail ~/.ssh/config
다음과 유사한 내용이 표시됩니다.
Host bitbucket.org
HostName bitbucket.org
IdentityFile ~/.ssh/personal-bitbucket-ssh-key
추가 신원(예: 직장 및 가정)을 추가하는 것은 다음을 통해 수행될 수 있습니다.ssh-add
명령, 예:
ssh-keygen -t rsa -C "companyName" -f "companyName"
ssh-add ~/.ssh/companyName
로컬에서 검색 중인 개인 키를 확인했으면 다음과 같은 공용 키를 가져올 수 있습니다.
cat ~/.ssh/personal-bitbucket-ssh-key.pub | pbcopy
그리고 그 암호를 비트 버킷에 붙여넣습니다.이제 장치가 친숙한 것으로 인식되기 때문에 (앞에서 언급한 답변에서 지적한 SSH 클론을 사용하는 경우) 암호 없이 Git 푸시가 허용됩니다.
이것이 누군가를 위해 그것을 해결하는 데 도움이 되기를 바랍니다.
실제로 이러한 답변 중 Git를 사용한 현재 기술 상태를 반영하는 답변은 없습니다(이 답변 작성 시점 기준 v2.29).최신 버전의 Git에서는cache
,winstore
,wincred
사용되지 않습니다.
HTTPS를 통해 비트버킷 저장소를 복제하려면 다음과 같이 하십시오.
git clone https://Kutlime@bitbucket.org/SomeOrganization/SomeRepo.git
다음 작업을 수행해야 합니다.
- 비트 버킷 사용자 관리에서 앱 암호를 생성합니다.
- 에서 자격 증명 방법 설정
.gitconfig
그에 따라(글로벌 또는 로컬)
[credential]
helper = manager
다음을 찾을 수 있습니다..gitconfig
이 명령을 실행합니다.
git config --list --show-origin
- 실행
git clone https://Kutlime@bitbucket.org/SomeOrganization/SomeRepo.git
로그온 창이 나타날 때까지 기다립니다.URL의 사용자 이름(나의 경우 kutlime)과 생성된 앱 암호를 암호로 사용합니다.
만약 당신이 여전히too many authentication failures
오류:
nano ~/.ssh/config
붙여넣기:
Host bitbucket_james
HostName bitbucket.org
User james
Port 22
IdentitiesOnly=yes
IdentityFile=~/.ssh/id_rsa_bitbucket_james
그리고 가장 중요한 것은 - 당신은 그래야 합니다.bitbucket_james
대신 별칭bitbucket.org
원격 URL을 설정하는 경우:
git remote set-url origin git@bitbucket_james:repo_owner_user/repo_name.git
여기서 키워드는 https://' 대신 'ssh://' 입니다 :-)
.git/config에서
조심하세요!리포지토리를 복제한 경우에는 공용 키를 BitBucket에 추가하여 작동하도록 만든 후 리포지토리를 다시 복제할 수 있습니다.이것은 아마도 당신의 구성 파일을 해킹하는 것보다 더 깨끗할 것입니다 ;-)
저와 함께 'git clon ssh://git@stash.xxx.com :7999/projName/projA.git'을 실행했지만 여전히 복제한 이 새 저장소에 대한 암호를 입력하라는 메시지가 표시되었기 때문에 해당 .git/config 파일을 작동하는 다른 저장소와 비교함으로써 해당 파일이 [remote "mote" 섹션 아래에 있는 URL인 것으로 밝혀졌고, 새 저장소의 위에 있는 ssh 경로로 설정되었습니다.하지만 작동 중인 것에 대해 https:xxx로 설정되었습니다.
로그인하는 것과 관련하여 다른 이상한 점이 있었습니다.저는 완전히 바보처럼 보이지만 제 경우에는 효과가 있는 것을 발견했습니다.MacOS의 키 체인으로 이동하기만 하면 됩니다.사이드바에서 로그인 잠금 아이콘을 찾습니다.로그아웃하려면 클릭하고 로그인하려면 클릭합니다.바보같이 들리지만 그것은 내 문제를 해결했습니다.시도해 볼 만합니다.
이메일이 아닌 사용자 이름으로 로그인했더니 작동하기 시작했습니다.
언급URL : https://stackoverflow.com/questions/8600652/git-on-bitbucket-always-asked-for-password-even-after-uploading-my-public-ssh
'programing' 카테고리의 다른 글
UI WebView 내에서 HTML 및 로컬 이미지 사용 (0) | 2023.06.30 |
---|---|
C 프로그래밍에서 배열에 요소를 추가하는 방법을 설명할 수 있는 사람이 있습니까? (0) | 2023.06.30 |
사전에서 여러 키를 안전하게 제거 (0) | 2023.06.30 |
vuex 지속 상태가 vue 라우터 탐색 가드와 함께 작동하지 않음 (0) | 2023.06.30 |
Spring Boot: @Value는 항상 null을 반환합니다. (0) | 2023.06.30 |