GitHub CLI가 만료 시간이 있고 자동 갱신되는 OAuth 토큰을 선택적으로 사용하는 공개 프리뷰를 안내했습니다. gh 2.103.0부터 로그인 시 요청할 수 있으며, 기존 로그인 전체를 즉시 바꾸는 방식은 아닙니다. GitHub 공식 발표
gh 내부에서 자격 증명을 갱신하더라도 다른 스크립트가 한 번 복사한 토큰은 나중에 만료될 수 있습니다. 토큰 문자열을 파일에 저장해 오래 재사용하는 흐름이 있는지 먼저 확인해야 해요.
이 글의 목차
액세스 토큰과 갱신 토큰은 역할이 다릅니다
액세스 토큰은 API 요청에 쓰는 자격 증명이고, 갱신 토큰은 새 액세스 토큰을 받는 흐름에 쓰입니다. 액세스 토큰이 만료되도록 하면 그 값 하나가 노출됐을 때 계속 사용할 수 있는 시간을 줄일 수 있습니다. 다만 갱신 토큰과 로컬 자격 증명 저장소도 보호해야 합니다. 짧은 만료 시간은 권한과 비밀 값 관리에 더하는 통제이지 이를 없애는 기능은 아닙니다.
CLI가 갱신을 맡으면 사용자는 매번 로그인하지 않고 작업할 수 있습니다. 하지만 다른 프로그램에 넘겨 둔 토큰 문자열까지 자동으로 교체되는 것은 아닙니다. 한 번 받은 값을 파일이나 환경 변수에 오래 보관하는 스크립트는 처음에는 성공하다 나중에 인증 오류가 날 수 있어요. 값을 발급받는 순간과 실제 사용하는 순간을 함께 살펴야 합니다.
Git의 인증 경로도 함께 확인합니다
gh를 통한 API 호출과 Git의 HTTPS 전송은 서로 다른 실행 경로일 수 있습니다. Git이 별도의 자격 증명 캐시에 오래된 값을 보관하면 gh 쪽의 갱신만으로 문제가 해결되지 않을 수 있습니다. 공식 안내가 gh를 Git의 자격 증명 도우미로 구성하는 방법을 권장하는 배경입니다. SSH로 Git을 쓰는 경우에는 그 연결의 인증 방식도 구분해서 기록합니다.
또한 선택 기능을 요청해도 서버가 지원하지 않으면 기존 만료 없는 동작으로 돌아갈 수 있습니다. 로그인 명령이 성공했다는 결과만 보고 만료형 전환까지 완료됐다고 판단하지 않습니다. gh와 Git 버전, 접속 호스트와 서버 지원 상태, 실제 자격 증명의 만료 정보를 함께 확인해야 합니다.
즉시 호출과 시간이 지난 호출을 나눠 시험합니다
먼저 아래 명령으로 현재 버전과 인증 상태를 확인합니다. 그다음 공식 안내에 맞춰 선택형 로그인을 시험할 별도 사용자 환경을 정합니다. 인증 직후 읽기 작업이 성공하는지뿐 아니라 시간이 지난 뒤 CLI와 Git 경로가 계속 동작하는지도 확인합니다. 토큰 원문을 화면이나 공유 로그에 출력하는 방식으로 시험하지 않습니다.
장기 자동화에서는 사람의 대화형 로그인 자격 증명을 계속 복사하기보다 업무에 맞는 앱 신원이나 승인된 인증 방식을 검토합니다. 스크립트가 토큰을 자체 캐시하는 구조라면 만료 처리와 재발급 책임을 분명하게 해야 합니다. 공개 프리뷰를 도입할 때는 이런 소비자를 찾고 전환할 수 있는 범위부터 선택하는 편이 좋습니다.
gh --version
git --version
gh auth status
이 명령은 현재 상태를 확인하는 용도입니다. 선택형 로그인과 Git 자격 증명 도우미 설정은 연결한 공식 안내의 조건을 확인한 뒤 적용합니다.
선택형 전환 전 확인
- gh와 Git의 실제 버전, 접속 서버의 지원 상태를 확인합니다.
- 한 번 얻은 토큰을 캐시하는 스크립트·확장을 찾습니다.
- 자격 증명 도우미와 자동 작업을 분리해 로그인·갱신을 시험합니다.
토큰의 유효 기간을 줄이는 일과 장기 자동화의 인증 설계는 함께 다뤄야 합니다. 지원되지 않는 서버의 동작을 성공적인 전환으로 오해하지 않습니다.
발표문 기준일: 2026-10-21 · 확인일: 2026-10-24



