🧑‍💻/Command

Git) fatal: Authentication failed for ...

유리맥 2021. 8. 29. 16:47
반응형

Git을 사용하여 Github에 push 하는 중 오류가 발생했습니다.
2021년 8월 13일 이후로 비밀번호 인증을 지원하지 않는다고 하네요.
비밀번호 탈취 시 보안에 취약한 문제때문에 토큰 기반 인증 방식을 채택한 것으로 보입니다.

$ git push
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: Authentication failed for 'https://github.com/bigtoy2645/Raywenderlich-Video-iOS.git/'

 

영향을 받는 작업

  • 커맨드라인으로 Git에 접근
  • Git을 사용한 데스크탑 프로그램 (GitHub 데스크탑은 영향 X)
  • Github Repository에 비밀번호를 사용해 직접적으로 접근하는 모든 앱/서비스

Git에서 Github Repository에 연결 시 HTTPS 또는 SSH를 사용해 인증해야 합니다.
자격 증명을 위해 몇 가지 작업을 거쳐야 합니다.

 

1. Github CLI 설치

각 OS 별로 CLI 설치 방법이 나와 있습니다.

https://github.com/cli/cli#installation

 

GitHub - cli/cli: GitHub’s official command line tool

GitHub’s official command line tool. Contribute to cli/cli development by creating an account on GitHub.

github.com

 

저는 macOS의 Homebrew를 사용해 설치했습니다.
아래 내용을 복사해 터미널에 명령어를 입력해 줍니다.

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

 

gh를 설치합니다.

$ brew install gh

 

오류가 발생하네요. 터미널 새로 열어 기본 홈 디렉토리에서 입력하니 성공했습니다.

$ brew install gh
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
pwd: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
Error: The current working directory doesn't exist, cannot proceed.

 

 

2. HTTPS를 사용해 Github에 인증

터미널에 gh 명령어를 입력합니다.

$ gh auth login

 

키보드로 옵션을 선택할 수 있네요. 저는 이렇게 선택했습니다.
토큰은 최소 권한인 repo, read:org, workflow 를 체크하여 생성했습니다.

 

이후에 git push 명령어를 입력하면 성공입니다. 👏👏

반응형