반응형

GitHub CLIgh pr 명령어와 삼각형 워크플로우(triangular workflow) 지원


1. GitHub CLIgh pr의 개요

  • GitHub CLIGitHub를 명령줄에서 손쉽게 사용할 수 있도록 지원하는 공식 도구입니다.
  • 이 중 gh pr 명령어는 Pull Request(풀 리퀘스트) 를 생성하고 관리할 수 있도록 도와주는 핵심 기능 중 하나로, GitHub 기반 협업에서 매우 유용합니다.


2. gh pr의 주요 기능

  • gh pr은 다양한 하위 명령어를 통해 풀 리퀘스트의 전체 생명주기를 관리할 수 있습니다:
    • gh pr create: 새로운 풀 리퀘스트 생성
    • gh pr view: 풀 리퀘스트 내용 보기 (웹 또는 CLI 내에서 가능)
    • gh pr checkout: 특정 풀 리퀘스트 브랜치로 체크아웃
    • gh pr merge: 풀 리퀘스트 병합 (merge, squash, rebase 지원)
    • gh pr list: 현재 리포지토리의 열린 풀 리퀘스트 목록
    • gh pr close: 풀 리퀘스트 닫기
    • gh pr status: 현재 작업 브랜치 기준 상태 확인

  • 예를 들어 다음 명령어는 현재 브랜치를 기반으로 풀 리퀘스트를 만들고, main 브랜치로 병합하려는 요청을 생성합니다:
    • bash

    gh pr create --base main --head my-feature --title "기능 추가" --body "이 기능은 ..."
    


3. 삼각형 워크플로우 지원

  • GitHub CLI는 최근 v2.71.2 업데이트를 통해 삼각형 워크플로우(triangular workflow) 를 지원하게 되었습니다.

  • 이는 다음과 같은 구조를 의미합니다:

    • 개발자는 원본 저장소를 포크하여 자신의 계정에 복사
    • 로컬에서 개발 후, 포크 저장소로 푸시
    • 포크 저장소에서 원본 저장소로 풀 리퀘스트 생성
  • 이전에는 GitHub CLI에서 이 방식이 번거로웠지만, 이번 업데이트로 gh pr create 등을 통해 손쉽게 포크 기반 워크플로우를 사용할 수 있게 되었습니다.

  • 오픈 소스 기여자에게 특히 유용한 개선입니다.



4. gh prGitHub 전용 명령어

  • gh pr일반 Git 서버(GitLab, Bitbucket, 자체 Git 등) 에서는 사용할 수 없습니다. 그 이유는 다음과 같습니다:

    • gh prGitHub의 전용 API(REST, GraphQL 등)를 호출하여 동작합니다.
    • Git 자체는 Pull Request라는 개념이 없으며, 이는 GitHub, GitLab 등의 플랫폼에서 제공하는 고유 기능입니다.
  • 따라서 gh prGitHub 저장소 에서만 사용 가능하며, GitLab에서는 glab, Bitbucket에서는 bb 같은 별도 CLI 도구를 사용해야 합니다.



5. 요약

  • GitHub CLIgh pr 명령은 GitHub 사용자를 위한 강력한 협업 도구입니다.
  • 특히 최근의 삼각형 워크플로우 지원을 통해 오픈 소스 프로젝트 참여가 훨씬 수월해졌습니다.
  • 다만, GitHub 전용 기능이므로 일반 Git 서버 환경에서는 작동하지 않는다는 점에 유의해야 합니다.



  • 도움이 되셨으면 하단의 ❤️ 공감 버튼 부탁 드립니다. 감사합니다! 😄
  • 일부 모바일 환경에서는 ❤️ 버튼이 보이지 않습니다.

728x90
반응형

+ Recent posts