Git 오류 치명적 : 인증 실패


102

git을 사용하여 리포지토리를 Visual Studio 팀 서비스 프로젝트에 푸시하려고하는데 오류가 발생합니다.

fatal: Authentication failed for (url of team project

cmds를 사용하고 있습니다.

git remote add origin
     https://XXXXXXX.visualstudio.com/DefaultCollection/_git/project

git push -u origin -–all

이것에 대한 수정에 대한 아이디어가 있습니까?

감사!


1
어떻게 인증하고 있습니까? 개인 액세스 토큰? 대체 액세스 자격 증명?
다니엘 만

답변:


196

최근에 같은 문제 (Visual Studio 2017 및 Windows 10)가 발생하여 다음 방법을 사용하여 해결했습니다.

제어판-> 자격 증명 관리자-> Windows 자격 증명 관리-> git 저장소의 항목을 선택하고 사용자 및 암호를 편집합니다.

끝난.


1
개인 액세스 토큰이 만료되었을 때이 방법을 사용했습니다. << URL >> / _ usersSettings / tokens로 이동하여 새 항목을 만든 다음 Credential Manager에서 암호로 설정합니다.
심지어 Mien

34

GIT CLI를 사용하고 Visual Studio의 GIT 래퍼에서 빌드와 상호 작용하지 않으려면 대체 인증 자격 증명 을 활성화해야합니다.

어떻게?

Open your account (VS Online account) 
-> click on your name on the top right 
-> My Profile
-> Credentials.

설정합니다.


여기에 이미지 설명 입력

여기에 이미지 설명 입력


4
보안은 이제 메뉴에서 별도의 항목입니다. 프로필을 클릭하면 매우 다른 페이지로 이동합니다.
Lukos

2
버전마다 다를 수 있습니다. 내가 스크린 샷을 추가 한 이유는
CodeWizard

1
나는 이것을 할 필요가 없었다. Git Bash에 PAT를 사용하는 것이 잘 작동하는 것 같습니다.
Josh Gust 19 년

1
대체 자격 증명 대신 PAT를 사용하십시오.
Edward Thomson

1
대체 자격 증명을 사용하도록 설정하면 사용하지 않는 것이 좋습니다 : 도메인 자격 증명 교통 일반 텍스트 및 응용 프로그램 계층에서 끝까지 수도는 IIS 로그
줄리오 VIAN

27

나는 같은 문제에 직면했습니다. 오류 출력 창은 다음과 같습니다. 인증 실패 이미지

단계에 따라 문제가 해결되었습니다.

  1. 제어판-> 자격 증명 관리자-> Windows 자격 증명으로 이동합니다.
  2. Generic Credential 아래에서 git 및 update 비밀번호 항목을 선택합니다.

    솔루션 창

  3. 암호는 Windows (시스템) 로그인 암호와 동일해야합니다.


17

오늘 가장 좋은 방법 은 VSO, GitHub를 지원하고 매달 개선되고있는 https://github.com/Microsoft/Git-Credential-Manager-for-Windows 를 설치 하는 것입니다.


2
@dotnetdev 문제를 해결하는 데 권장되는 방법이므로이 답변을 수락하십시오.
Deilan

1
이것은 github.com/Microsoft/Git-Credential-Manager-for-Mac-and-Linux 에서 Mac 및 Linux에서도 사용할 수 있습니다. 덜 안전한 "대체 자격 증명"을 추가 할 필요없이 완벽하게 작동했습니다.
Breeno

1
이것은 실제로 Microsoft가 제공 한 "사실상"솔루션입니다. 여기서 실제로 작동하는 다른 솔루션은 조정으로 간주됩니다.
Stephane

11

VSTS에서 URL은 다음과 같습니다. vsts에서 git clone url을 복사하면 항상

https : // orgname @ dev.azure.com / org / project / _git / repo

orgname @VSTS- > 프로필-> 보안 에서 만든 대체 사용자 이름으로 바꿉니다 .

최종 자식 URL-

https : // alternateusername @ dev.azure.com / org / project / _git / repo


7

동일한 문제가 발생하여 Windows 자격 증명 관리자를 사용하여 암호를 업데이트하려고했지만 여전히 문제가 해결되지 않았습니다.

제어판-> 자격 증명 관리자-> Windows 자격 증명 관리-> git 저장소의 항목을 선택하고 사용자 및 암호를 편집합니다.

그런 다음 자격 증명 관리자에서 모든 git 관련 항목을 삭제 한 다음 Visual Studio를 사용하여 Git을 사용하려고했습니다. 이번에는 새 자격 증명을 입력하라는 메시지가 표시되었습니다.


5

'.git / config'를 삭제하고 다시 시도하십시오. 일부 git 설정도 재설정 될 수 있습니다.

올바른 자격 증명으로 대체 자격 증명과 개인 액세스 토큰을 여러 번 시도했지만 "심각 : 인증 실패"라는 메시지가 계속 표시됩니다.

마지막으로 내 Repo의 루트에 ".git / config"라는 파일이 있음을 발견했습니다. 이 파일을 삭제하고 자격 증명을 다시 입력했는데 제대로 작동했습니다.


3

VS2017에서 VSTS Git 저장소로 변경 사항을 푸시하려고 할 때 갑자기이 오류가 발생하기 시작했습니다. 이 기능은 전날 작동했습니다.

내 git.log 파일을 확인하고 다른 예외를 보았습니다.

19 : 43 : 57.116665 ... zureAuthority.cs : 184 추적 : [ValidateCredentials] 서버 반환 : '원격 서버에 연결할 수 없습니다.

Gits Credential Manager repo 에서 최신 Git CredentialManager 소스를 다운로드 하고 디버깅했습니다.

인증되면 다음 예외가 발생했습니다.

대상 컴퓨터가 적극적으로 거부했기 때문에 연결할 수 없습니다. 127.0.0.1:8888

그런 다음 최근에 capturing-traffic-from-.net-services-with-fiddler 기사에 따라 모든 서비스에 대한 프록시 역할을하도록 Fiddler를 설정했음을 깨달았습니다.

Fiddler를 실행하면 성공적으로 연결할 수있었습니다.


3

내 솔루션은 조금 달랐고 더 빨랐습니다. :)

  1. Windows 자격 증명 (시작-> Windows 자격 증명)으로 이동하여 저장소에 대한 자격 증명을 제거합니다 (git : xxx로 시작됨).
  2. VSCode로 이동하고 터미널에서 다음을 작성하십시오.

    credential.helper wincred 구성

  3. Visual Studio (VSCode 없음)로 이동하여 git pull을 수행합니다. 자격 증명을 묻는 팝업이 표시됩니다. 저장소에 대한 자격 증명 입력

  4. VSCode로 이동하여 git pull을 수행하십시오. wincred 저장소에서 자격 증명을 자동으로 가져 왔습니다.

자격 증명은 자동으로 생성되고 wincredentials에 저장되므로 다음에 자격 증명을 요청할 수 없습니다. (또한 DevOps 호스팅 git repo를 사용하는 경우 visualstudio.com에서 개인 액세스 토큰이 제공됩니다).


시작-> Windows 자격 증명은 매력처럼 작동합니다! 감사!
Highriser

2

Microsoft Credential Manager를 사용할 수없는 Linux 사용자의 경우. 이것은 ssh를 사용하는 것 외에 내가 찾은 유일한 해결책입니다. 저장소보기에서 자격 증명을 생성해야합니다 (아래 이미지 참조). 자식 자격 증명 얻기

결과는 다음과 같습니다. 힘내 자격 증명 결과 얻기

비밀번호 복사!. Azure devops는이를 저장하지 않으며 다시 볼 수 없습니다!

NB : 2020 년부터 대체 자격 증명이 비활성화되었습니다. Microsoft 블로그 확인


1

나는 많은 옵션을 시도했지만 나를 위해 일한 것은 다음과 같습니다.

  1. 릴리스 섹션 에서 Git Password Manager를 다운로드 하십시오.

  2. git fetch자동으로 창 (예 : 기본 창으로 대체)을 가져오고 사용자 이름과 암호를 입력하도록 요청하는 간단한 작업을 시도 하지만 표준 방식보다 더 우아한 방법을 사용합니다.

자격 증명을 올바르게 입력하면 이전에 오류가 발생했지만 작동했습니다.

추신 "잘못된 자격 증명"과 같은 오류가 발생하는 경우 항상 저장소 사용자 이름암호 가 올바른지 확인하십시오. 주저하면 비밀번호를 재설정하고 Git 비밀번호 관리자 창에서 동일한 비밀번호를 사용하십시오.


1

이 문제가 발생했으며 Microsoft 기술 담당자의 지침에 따라 해결되었습니다.

  • Visual Studio의 모든 인스턴스를 닫습니다.
  • 작업 관리자를 열고 TFS 서비스가 실행 중인지 확인합니다. 각각을 선택하고 프로세스 트리 종료를 클릭하십시오.
  • 아래 폴더로 이동하여 % LocalAppData % \ Microsoft \ Team Foundation {version} \ Cache의 모든 콘텐츠와 폴더를 삭제합니다.
  • 제어판-> 사용자 계정-> 자격 증명 관리-> Windows 자격 증명으로 이동하여 제거 할 VSTS URL을 선택합니다.
  • 그런 다음 "C : \ Users \ USER NAME \ AppData \ Local \ GitCredentialManager \ tenant.cache"로 이동하여 삭제합니다.
  • 또한 "C : \ Users \ USER NAME \ AppData \ Local.IdentityService"로 이동하여 삭제하십시오.

0

내가 필요한 것은 올바른 자격 증명뿐이었습니다. 웹 앱에 배포하는 동안 배포 센터, 배포 자격 증명으로 이동해야했습니다. 그런 다음 앱 자격 증명을 사용하거나 사용자 자격 증명을 만듭니다. 그런 다음 로컬 컴퓨터에서 캐시 된 자격 증명을 삭제합니다 (Windows : 제어판 \ 사용자 계정 \ 인증 관리자). "git push webapp master : master"를 다시 실행하고 배포 자격 증명 중 하나를 입력합니다. 이것은 나를 위해 일했습니다.


0

다른 작업을하고있는 경우 Windows와 상사가 azure devops를 사용하도록 강요하고 SSH를 사용하고 싶지 않고 평범한 방식으로 사용하려는 경우 다음을 수행합니다.

'대체 자격 증명'을 활성화해야하거나 (성가신다는 것을 알고 있습니다) 액세스 토큰을 만들어야합니다. 이 경우 액세스 토큰을 만드는 것은 임시 임의 암호와 비슷합니다. Windows 도구를 사용하면 자동으로 수행됩니다.

어쨌든 Security오른쪽 상단 모서리에있는 프로필 상황에 맞는 메뉴 로 이동합니다 .

보안 설정

그런 다음 관리자 권한이있는 상사 / 관리자 / 친구가 선호하는 경우 '대체 자격 증명'이 활성화됩니다. 그렇지 않으면 운명을 받아들이고 '개인 액세스 토큰'을 생성하십시오.

보안 설정


0

설정하는 데 2 ​​~ 5 분 소요!

  • SSH 키 (~ / .ssh /) 만들기

ssh-keygen -C "jamal@fabrikam.com"

  • Azure DevOps Services / TFS에 공개 키 추가
  • SSH로 Git 저장소 복제

출처


0

다른 답변을 자식 인증 및 푸른 개발 운영 서버와 고민과 노력 후이 팁은 여기에 날 위해 일했습니다.

Visual Studio를 사용하십니까? Team Explorer는 Azure Repos로 인증을 처리합니다.

Team Explorer를 사용하여 리포지토리에 연결하면 명령 줄을 사용하여 git 명령을 실행할 수 있습니다.


0

Windows 자격 증명 관리자로 이동하여 GIT에 대한 자격 증명을 업데이트합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.