하모니카 묻고답하기

2020.09.22 10:18

Github CLI 사용법

조회 수 885 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

깃헙 사용을 터미널에서 쉽게 할 수 있도록 도와주는 도구 Github CLI 가 얼마전 출시되었습니다.

터미널에서 깃허브 저장소의 이슈 처리, PR 관리, 릴리즈 관리들의 유용한 기능을 제공합니다.

설치하기

 

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0
sudo apt-add-repository https://cli.github.com/packages
sudo apt update
sudo apt install gh
 

깃허브 로그인

 

먼저 자신의 깃허브 계정으로 로그인과정을 거쳐야 합니다.

$ gh auth login

어떤 방식으로 로그인할지 묻는 화면이 나오면 브라우저로 로그인을 선택하고 엔터를 치세요.

화면과 같이 일회용 디바이스 인증코드가 나오는데 이걸 복사합니다.

엔터를 치면 웹브라우저가 열리고 아래와 같은 화면이 나옵니다.

이전에 복사한 인증코드를 붙여넣기 하세요.

깃허브 계정으로 로그인 후 권한을 설정합니다.

마지막으로 어떤 프로토콜로 깃허브를 사용할지 http 또는 ssh 를 선택합니다.

정상적으로 로그인이 완료되면 다음과 같이 나타납니다.

 

Github CLI 기본 사용법

이슈 관리

다음과 같이 이슈를 확인하고 처리할 수 있습니다.

이슈 목록 확인

# Viewing a list of open issues
~/Projects/my-project$ gh issue list
 
Issues for owner/repo
 
#14  Update the remote url if it changed  (bug)
#14  PR commands on a detached head       (enhancement)
#13  Support for GitHub Enterprise        (wontfix)
#8   Add an easier upgrade command        (bug)
 
 
이슈를 터미널에서 대화형으로 생성
# Create an issue interactively
~/Projects/my-project$ gh issue create
Creating pull request for feature-branch into main in owner/repo
? Title My new issue
? Body [(e) to launch nano, enter to skip]
http://github.com/owner/repo/issues/1
 
이슈를 명령줄에서 한줄로 생성
# Create an issue using flags
~/Projects/my-project$ gh issue create --title "Issue title" --body "Issue body"
http://github.com/owner/repo/issues/1
 

이슈를 웹브라우저로 생성

// Quickly navigate to the issue creation page
~/Projects/my-project$ gh issue create --web
Opening https://github.com/owner/repo/issues/new in your browser.
 
이슈 닫기

gh issue close {<number> | <url>} [flags]

 

풀리퀘스트(PR) 관리

요청된 PR을 체크아웃

// Checking out a pull request locally
~/Projects/my-project$ gh pr checkout 12
remote: Enumerating objects: 66, done.
remote: Counting objects: 100% (66/66), done.
remote: Total 83 (delta 66), reused 66 (delta 66), pack-reused 17
Unpacking objects: 100% (83/83), done.
From https://github.com/owner/repo
 * [new ref]             refs/pull/8896/head -> patch-2
M       README.md
Switched to branch 'patch-2'
 
PR의 변경내용 확인
gh pr diff [<number> | <url> | <branch>] [flags]

 

PR 머지하기

기본값으로 PR을 머지한 후에는 원격 저장소와 로컬 저장소의 PR 브랜치를 삭제하게 되어있습니다. 유지하려면 ‘–delete-branch=false’ 을 사용하세요.

gh pr merge [<number> | <url> | <branch>] [flags]

 

PR Close

gh pr close {<number> | <url> | <branch>} [flags]

 

더 많은 기능에 대한 자세한 사용법은 여기를 참고하세요.


List of Articles
번호 제목 추천 수 글쓴이 날짜 조회 수
공지 게시판에 질문하기 전 읽기 - 어떻게 질문을 하는 것이 좋을까? 1 0 Kevin 2019.11.18 13007
2315 비디오 드라이버 3 0 snowman 2023.09.20 468
2314 메뉴바 및 애플리케이션 한글 변환/ 소프트웨어 매니저 문제 관련 문의 6 0 youngman 2024.01.01 469
2313 [긴급] 유명 취업사이트 채용공고 지원문의로 위장된 랜섬웨어 피해 속출 1 0 la_Nube(누베) 2018.05.11 469
2312 하모니카 7.0 소리가 안나네요 ㅜ 4 0 트리플제로903 2023.12.25 469
2311 [ 문의] 바탕화면에 제일 위쪽에 메뉴판 5 file 0 예안고 2023.10.06 471
2310 Life is Strange: Before the Storm Is Coming 리눅스 게임 발표 예정 1 file 0 행복한펭귄 2018.03.15 473
2309 다른 사용자가 공유 억세스를 못하도록 했다는데... 해결법 있을까요??? 1 file 0 친절한우주인 2022.06.17 474
2308 git hub에 CLI 를 어떻게 사용하는거죠? 3 0 라루미 2022.08.06 474
2307 Centos 디스플레이 환경 변수 에러 1 0 luis 2023.06.30 474
2306 wine 으로 잘못설치된 파일중 아이콘이 계속 남아있어요 1 0 Japser 2023.11.24 475
2305 카카오톡 설치 문의 드립니다. 4 file 0 땀나는주전자 2023.12.09 475
2304 No1.Linux 2018.03.20 KDE Plasma5 ME(Mini Edition) 릴리즈 file 0 행복한펭귄 2018.03.22 476
2303 블루투스 이어폰 버그? file 0 killsystem10 2023.08.31 476
2302 gnome-shell에 대하여 2 0 Kevin 2023.12.24 476
2301 스크롤링 속도 질문 4 0 지디췩오 2022.07.13 479
2300 무료 호스팅 어디가 좋나요? 0 세벌 2018.02.05 480
2299 몇몇 프로그램 삭제 시 의존성 문제... 2 0 보이차 2022.07.26 480
2298 인터넷이 연결되지 않아요 답글 2 file 0 KongS 2022.12.14 480
2297 웨일 브라우저 의존적인거 바꿀 수 없을까요? 1 0 MJY 2023.11.03 480
2296 리눅스에서 인텔 아크 사용하시는 분 있나요? 2 0 cancaodosang 2023.12.29 480
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 ... 123 Next
/ 123
CLOSE