Skip to main content
Skip to content

다른 도구를 스택형 풀 리퀘스트와 함께 사용

Jujutsu, Sapling 또는 git-town과 같은 도구와 함께 스택형 pull request를 사용합니다.

누적 풀 리퀘스트는 표준 Git 브랜치 및 일반 풀 리퀘스트를 기반으로 하므로 로컬 워크플로에 gh stack CLI 이외의 도구를 사용하도록 선택할 수 있습니다. Jujutsu(jj), Sapling 또는 git-town과 같은 다른 도구를 사용하여 분기 체인을 관리하는 경우 gh stack link 명령을 사용하여 해당 분기를 GitHub에서 스택으로 열 수 있습니다.

이 gh stack link 명령은 GitHub API만 호출하여 누적 끌어오기 요청을 만듭니다. 로컬 추적을 만들지는 않습니다. 브랜치에 이미 열려 있는 끌어오기 요청이 있는 경우 link가 해당 요청을 사용합니다. 그렇지 않으면 올바른 기본 브랜치를 사용하여 초안 끌어오기 요청을 만듭니다.

브랜치를 스택으로 연결하기

  1. 선택한 도구를 사용하여 로컬로 분기 체인을 만듭니다. 예를 들어 Jujutsu의 경우:

    jj new main -m "first change"
    jj bookmark create change1 --revision @
    
    jj new -m "second change"
    jj bookmark create change2 --revision @
    
    jj new -m "third change"
    jj bookmark create change3 --revision @
    
  2. 브랜치를 푸시하고 아래쪽에서 위쪽으로 나열된 스택으로 연결합니다.

    gh stack link change1 change2 change3
    

    이렇게 하면 브랜치가 푸시되고, 각 브랜치마다 올바른 베이스를 사용한 풀 리퀘스트가 만들어지고, GitHub에서 스택으로 연결됩니다.

기존 스택에 추가

link으로 만든 스택에 분기를 더 추가하려면 스택의 맨 아래부터 맨 위까지 끌어오기 요청 및 분기의 전체 목록으로 gh stack link를 다시 실행합니다. 숫자로 기존 풀 리퀘스트를 참조할 수 있습니다.

gh stack link 123 124 125 change4 change5

기본 브랜치 설정 또는 풀 리퀘스트 열기

기본적으로 link는 리포지토리의 기본 분기를 대상으로 하며 초안 풀 리퀘스트를 만듭니다. 이 동작을 변경하려면:

  • --base를 사용하여 다른 트렁크 브랜치를 지정합니다.
  • 풀 리퀘스트를 초안 대신 검토할 준비가 되도록 표시하려면 --open을(를) 사용합니다.
gh stack link --base develop --open change1 change2 change3

전체 로컬 추적을 위한 브랜치 설정

전체 로컬 스택 추적을 원한다면 gh stack rebase, gh stack sync와 같은 명령 및 스택 탐색을 사용할 수 있도록, 대신 gh stack init로 기존 브랜치를 adopt한 다음 제출하세요.

gh stack init change1 change2 change3
gh stack submit

추가 읽기