Git 푸시 결과가 "인증 실패"로 표시됨
나는 GitHub을 사용한 지 얼마 되지 않았고, 나는 그것에 대해 잘 지냅니다.git add
,git commit
,그리고.git push
다음과 같은 가 발생했습니다갑자기 다음과 같은 오류가 발생합니다.
치명적: 인증 실패
터미널에서 저장소를 복제하고 파일을 작업한 다음 사용했습니다.git add
가 했을 때.git commit
그것은 잘 작동했습니다.마내침.git push
사용자 이름 및 암호를 요청합니다.저는 그것들을 정확하게 넣었고, 제가 이것을 할 때마다 같은 오류가 나타납니다.
이 문제의 원인은 무엇이며 어떻게 해결할 수 있습니까?
『 』의 .git/config
다음과 같습니다.
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = http://www.github.com/######/Random-Python-Tests
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[user]
name = #####
email = ############
GitHub 계정에서 2단계 인증을 활성화한 경우 계정 암호를 사용하여 HTTPS를 통해 푸시할 수 없습니다.대신 개인 액세스 토큰을 생성해야 합니다.이 작업은 GitHub 계정의 응용 프로그램 설정에서 수행할 수 있습니다.이 토큰을 암호로 사용하면 HTTPS를 통해 원격 리포지토리로 푸시할 수 있습니다.평소와 같이 사용자 이름을 사용합니다.
또한 리포지토리가 HTTPS로 설정된 경우 리포지토리의 오리진을 업데이트해야 할 수도 있습니다.SSH로 전환하려면 다음 작업을 수행합니다.
git remote -v
git remote set-url origin git@github.com:USERNAME/REPONAME.git
Windows에서 다음 단계를 수행하여 저장된 자격 증명을 편집하거나 제거합니다.
- 시작 클릭
- 유형: 자격 증명 관리자(Windows 10의 경우 "시작 → 설정" 아래에 있음)그런 다음 "Credential Manager"를 검색합니다.)
- Windows 자격 증명 관리자 바로 가기를 확인하고 두 번 클릭하여 응용 프로그램을 엽니다.
- 응용 프로그램이 열리면 윈도우즈 자격 증명 탭을 클릭합니다.
- 제거/업데이트할 자격 증명을 찾습니다."git:"로 시작하고 "ada:"로 시작할 수 있습니다.
- 자격 증명 항목을 클릭합니다.항목의 세부 정보 보기가 열립니다.
- 또는 필요에 따라 클릭하고 확인합니다.
- 나중에 헹구고 필요에 따라 반복합니다.
최근에 Git 계정의 암호를 변경했을 수 있습니다.당신은 그것을 시도할 수 있습니다.git push
와 선-u
옵션:
git push -u origin branch_name_that_you_want_to_push
위의 명령을 실행하면 암호를 묻는 메시지가 표시됩니다.업데이트된 암호를 제공합니다.
Git 서비스 계정(Git)의 로그인 또는 비밀번호를 변경하면 발생합니다.Windows 인증 정보 관리자에서도 이 정보를 변경해야 합니다.Windows 검색 메뉴에서 "Credential Manager"를 입력하여 엽니다.
Windows 자격 증명 관리자 -> Windows 자격 증명 및 일반 자격 증명에서 git 암호를 편집합니다.
Windows(윈도우)에서 이 기능은 저에게 효과가 있었고 제 자격 증명도 기억합니다.
깃배시 실행
리포지토리 디렉터리를 가리킵니다.
려달을 합니다.
git config --global credential.helper wincred
먼저 올바른 URL을 사용할 수 있습니다.
git remote set-url origin https://github.com/zkirkland/Random-Python-Tests.git
하고 사용자 /비밀번호)에 저장되어 있었기 때문일 것입니다.$HOME/.netrc
파일, 여기에 설명된 대로.이러한 설정을 두 번 확인하고 프록시가 있는 경우 프록시가 변경되지 않았는지 확인할 수 있습니다.
『 』의 출력을 합니다.git config --global credential.helper
.
자격 증명이 GitHub 사용자 계정과 PAT(개인 액세스 토큰)인지 확인합니다.
여기와 같이 Git 자격 증명 도우미를 사용하여 자격 증명을 업데이트할 수 있습니다.
그래도 작동하지 않으면 SSH URL로 전환할 수 있습니다.
git remote set-url origin git@github.com:zkirkland/Random-Python-Tests.git
그러나 이는 SSH 공용 키를 계정 설정에 게시했음을 의미합니다.
Visual Studio 코드에 대한 자세한 내용은 ":git push
자격 증명 누락 또는 잘못된 항목을 참조하십시오. 치명적: 'https://github.com/username/repo.git' '에 대한 인증에 실패했습니다.
할 수 .git.terminalAuthentication
오류 메시지를 방지합니다.
기본적으로 제 자격증은 만료되었고, 저는 그 문제에 직면하게 되었습니다.
다음 두 가지 명령이 도움이 되었습니다.
git config --global --unset credential.helper
git config credential.helper store
다음 번에 푸시를 시도할 때 자격 증명을 묻는 메시지가 표시됩니다.
사용자 이름 및 암호의 보안 및 보안되지 않은 저장에 대한 자세한 내용은 다음 지침을 따르십시오.
Windows에서 올바른 암호와 사용자 이름을 입력했을 때 인증 오류 문제를 발견한 경우 Git 문제입니다.이 문제를 해결하려면 컴퓨터에 Git를 설치할 때 Git 인증 정보 관리자 사용 옵션의 선택을 취소합니다.
저도 같은 오류를 겪고 있었습니다.저는 이 페이지에 언급된 모든 솔루션을 시도해 보았지만 작동하지 않았습니다.마침내 해결책을 찾았습니다.
이러한 오류는 시스템 암호가 최근에 변경된 경우에 발생합니다.이전 암호에서 유효성 검사를 시도합니다.따라서 다음 단계를 수행합니다.
- 제어판으로 이동
- 사용자 계정 클릭
- 인증 정보 관리자 아래
- 윈도우즈 자격 증명 관리로 이동
- 일반 자격 증명으로 이동
- Git 서버 탭 확장
- 볼트에서 제거 클릭
- 또한 여기에 저장된 암호를 직접 클릭하여 변경할 수 있습니다.
어떤 이유에서인지 깃허브는 URL에 서브도메인 www가 없을 것으로 예상하고 있는 것 같습니다.사용할 때(예:)
git remote set-url origin https://www.github.com/name/repo.git
다음과 같은 메시지를 제공합니다.
remote: Anonymous access to name/repo.git denied
fatal: Authentication failed for https://www.github.com/name/repo.git
하지만, 만약 내가 사용한다면.
git remote set-url origin https://github.com/name/repo.git
완벽하게 잘 작동합니다.말도 안 되는 소리야...하지만 GitHub 저장소의 원격 URL에 www를 넣지 않는 것을 기억합니다.
또한 GitHub 저장소 웹 페이지에 제공된 복제 URL에는 www가 포함되어 있지 않습니다.
위의 모든 것을 시도하기 전에, 시도해 보세요.git push
다시, 네, 저에게 효과가 있습니다.
동일한 오류(윈도우즈, GitBash 명령줄)입니다.로그인 자격 증명을 묻는 대신 오류가 발생하는 https 사용:
$ git pull origin master
fatal: Authentication failed for 'https://github.com/frmbelz/my_git_project.git'
$ git config -l
...
credential.helper=manager
...
$ git config --global --unset credential.helper
$ git config --system --unset credential.helper
git pull
이제 사용자 이름/암호 프롬프트가 표시됩니다.
이 오류를 발생시키기 위해 무엇을 했는지는 잘 모르겠지만 다음을 수행합니다.
git remote set-url origin https://...
나한텐 안 통했어요그러나:
git remote set-url origin git@bitbucket.org:user/repo
어떻게든 효과가 있었습니다.
Git와 연동된 Bitbucket에 추가하다가 치명적인 오류가 발생하여 저장된 키를 제거해야 했습니다.
해결하기 위해 명령 프롬프트를 열고 실행했습니다.
rundll32.exe keymgr.dll, KRShowKeyMgr
로그인을 담당하는 키를 제거하고 다음에 파일을 repo에 밀어넣을 때 자격 증명을 입력하라는 메시지가 표시되고 올바른 자격 증명을 입력하여 성공적으로 밀어넣었습니다.
우연히 만난 적이 있습니다
git fetch
fatal: Authentication failed for 'http://...."
Windows 암호가 만료되고 변경된 후에Windows Credential Manager를 사용하여 Git를 여러 번 가져오거나 재부팅하거나 다시 설치하는 것도 도움이 되지 않았습니다.
놀랍게도 정답은 여기 댓글 어딘가에 있지만, 답변에는 없습니다(그리고 그 중 일부는 정말 이상합니다!).
제어판 → 자격 증명 관리자 → Windows 자격 증명으로 이동하여 git:http://your_repository_address에 대한 암호를 업데이트해야 합니다.
저의 경우 최근에 Windows 암호를 변경했으며 "fatal:"이 발생한 후 git 관련 작업(pull, push, fetch 등)에 대해 SSH 키를 구성했습니다.인증 실패" 오류가 발생했습니다. Windows 자격 증명 관리자(제어판\사용자 계정\자격 증명 관리자)에서 git:...로 시작하는 모든 항목에 대해 암호를 업데이트하고 이번에 다시 시도했습니다!
저도 같은 문제가 있었습니다.URL은 다음과 같이 설정합니다.
git remote set-url origin https://github.com/zkirkland/Random-Python-Tests.git
구성 에서 이 을 제거했습니다.askpass = /bin/echo
.
그리고 나서 "git push"는 나에게 사용자 이름과 비밀번호를 물었고 이번에는 작동했습니다.
GitHub 계정에서 2단계 인증을 사용하도록 설정한 경우 GitHub 계정에 로그인하고 다음으로 이동합니다.
새 액세스 토큰을 생성하고 해당 토큰을 복사한 다음 터미널에서 인증을 위한 암호로 붙여넣습니다.
어제 Ubuntu 20.04의 Visual Studio Code에서 이 문제가 발생하기 시작했습니다.
GitHub 자격 증명을 변경하지 않았고 프로젝트에서 변경한 내용도 없지만 다음과 같이 원격 지사와 통신하기 위해 Git 명령을 실행합니다.
git pull origin dev
아래 오류가 표시됩니다.
원격: 리포지토리를 찾을 수 없습니다.치명적: 'https://github.com/MyUsername/my-project.git/' 에 대한 인증 실패
제가 성공한 것은 다음과 같습니다.
프로젝트를 다시 복제한 다음 git pull 명령을 실행하려고 했지만 작동하지 않았습니다.
git clone https://my-git-url
다음 명령을 사용하여 자격 증명을 다시 설정하려고 했지만 여전히 실패했습니다.
git config --global user.email "email@example.com"
git config --global user.name "John King"
다음 명령을 사용하여 원격 저장소를 제거하고 다시 추가하려고 했지만 여전히 실패했습니다.
git remote remove origin
git remote add origin https://my-git-url
마침내, 저는 제 기본 우분투 터미널을 사용해 보기로 결정했고 잘 작동했습니다.Visual Studio Code에서 마지막으로 업데이트된 몇 시간 전의 버그일 것입니다(문제가 발생한 당일에 릴리스가 수행되었음을 보여주는 스크린샷 참조).Visual Studio Code를 설정할 때는snap
아마도 그 전에 몇 시간 동안 백그라운드에서 업데이트되었을 것입니다.
바라건대, 그들이 그것을 수리하고 Git 원격 작업이 다시 잘 될 것입니다.
.config 파일 변경 시에만:
url = http://www.github.com/###user###/Random-Python-Tests
받는 사람:
url = http://###user###@github.com/###user###/Random-Python-Tests
컴퓨터 암호를 업데이트할 때 위의 오류 메시지가 표시됩니다.다음 단계를 사용하여 내 Git 자격 증명을 재설정합니다.
제어판 > 사용자 계정 > 자격 증명 관리자 > Windows 자격 증명으로 이동합니다.목록에 Git 자격 증명이 표시됩니다(예: git:https://).클릭하고 암호를 업데이트한 다음 Git bash에서 git pull/push 명령을 실행하면 더 이상 오류 메시지가 표시되지 않습니다.
Windows(윈도우)에서 도메인 사용자가 TFS(리포지토리 사용자)로 작업하는 Windows 서버에 푸시하려는 경우 TFS URL(예:http:\\tfs
)(Internet Explorer 포함).도메인 계정 자격 증명을 입력하고 페이지를 표시합니다.
주의:Internet Explorer만 사용하십시오!다른 브라우저에서는 시스템 자격 증명이 변경되지 않습니다.
이제 Git Bash로 이동하여 아래와 같은 저장소의 원격 사용자를 변경합니다.
git config user.name "domainName\userName"
그리고 끝났습니다.이제 밀어도 돼요!
토큰 검증 방법을 사용해보니 3번 정도 작동이 되고 2시간 정도의 시간을 허비했습니다.어떤 이유에서인지 우리 회사에는 잘 작동하지 않습니다.
나의 해결책은 인증 방법을 HTTPS에서 SSH로 변경하는 것이었습니다.Github 가이드 (https://help.github.com/en/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) ) 입니다.
SSH 키를 생성한 후 SSH 주소 원본을 변경해야 합니다.
git remote add origin git@github.com:user/repo.git
github 리모컨으로 푸시하려고 할 때 아래 오류가 발생했습니다.
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
github 계정에 솔루션 SSH 키가 없습니다.
로컬 공용 SSH 키 복사 위치
~/.ssh
디렉토리붙여넣기
Github > Settings > SSH and GPG Keys > New SSH Key
해라
ssh -T git@github.com
출력해야 합니다.안녕 xxxxxx!인증에 성공했지만 GitHub에서 셸 액세스를 제공하지 않습니다.
저는 제가 github.com 에서 비밀번호를 변경했다는 것을 잊어버렸고, 셸 인증을 위한 제 키체인은 결코 새로운 비밀번호로 업데이트되지 않았습니다.
내 키체인에서 모든 Git을 삭제한 후 Git 요청을 다시 실행하면 문제가 해결되어 새 암호를 다시 입력하도록 요청할 수 있습니다.
빠른 GUI 방법은 다음과 같습니다.
- 먼저 앱 액세스 토큰 생성을 통해 액세스 토큰을 생성합니다.
- 그런 다음 소스 트리의 설정으로 이동합니다(소스 트리의 닫기 단추 아래에 있음).
- "리포지토리 설정"이라는 메시지가 표시됩니다.
- 다음을 사용하여 리포지토리 경로 추가/편집
https://USER_NAME:ACCESS_TOKEN@bitbucket.org/REPO_NAME/PROJECT_NAME.git
또는 github 계정의 경우.
https://username:access-token@github.com/username/repo.git
여기서 언급할 유일한 변경 사항은 추가 액세스를 추가하는 것입니다.기존 경로 url로의 공유 생성 앱 액세스 토큰 링크에 의해 생성된 토큰.
여기서 시간을 내서 문제를 해결한 것은 단순히 초기 프롬프트에서 취소하고, SSH가 내 비트버킷 계정으로 열렸고, 거기서 암호를 입력했고 모든 것이 예상대로 작동했다는 것입니다.
Windows에서 동일한 문제에 직면했습니다.대부분의 경우, 저는 여러 Git 계정을 사용하기 때문에 이 문제에 직면합니다.Windows(윈도우)에 있는 경우 관리자 권한으로 터미널을 열고 명령을 다시 실행하십시오.관리자 액세스 권한이 있는지 확인합니다.
SSH를 사용하고 있고 HTTPS로 복제된 경우에는 이 작업이 작동하지 않습니다.
SSH로 복제한 다음 푸시 앤 풀이 예상대로 작동합니다!
원본 트리에서 도구로 이동 -> 옵션 -> 인증
Email Id(전자 메일 ID)에서 Edit(편집)을 클릭하고 Refresh OAuth Token(Outh 토큰 새로 고침)을 클릭합니다.
언급URL : https://stackoverflow.com/questions/17659206/git-push-results-in-authentication-failed
'itsource' 카테고리의 다른 글
일반 클래스 또는 메서드의 멤버로부터 T 유형을 가져오는 방법 (0) | 2023.05.22 |
---|---|
일상적인 사용을 위해 zsh로 전환할 가치가 있습니까? (0) | 2023.05.22 |
각선미와의 싸움JS가 컨트롤러를 두 번 실행 (0) | 2023.05.22 |
MongoDB용 GUI 도구 (0) | 2023.05.22 |
코드를 사용하여 WPF에서 메뉴 구분 기호 표시줄을 만드는 방법 (0) | 2023.05.22 |