Jujutsu에서 GitHub 스택형 PR 사용하기

1 day ago 6

GitHub가 2026년 7월 30일 공개 프리뷰로 출시한 스택형 PR을 Git 호환 버전 관리 시스템 Jujutsu(jj)에서 생성·수정·병합하는 절차를 정리함 커밋마다 jj 북마크를 만들고 gh stack link에 북마크 목록을 전달하면 브랜치 업로드부터 초안 PR 생성, 스택 연결까지 처리됨 새 커밋은 스택 맨 위에 바로 추가할 수 있지만, 중간이나 아래에 넣거나 기존 커밋을 제거하려면 스택을 삭제하고 재생성해야 함 변경된 커밋은 jj git push -r "stack()"로 갱신하며, 병합은 명령이 복잡한 CLI보다 CI 상태를 확인할 수 있는 GitHub 웹 UI가 편리함 실제 작업에 사용할 수 있는 수준이지만 커밋별 수동 브랜치, 변경 ID와 인터디프 부재, 통합 submit 명령 부재 등으로 개발자 경험에는 한계가 있음 실행 환경 준비 GitHub의 스택형 PR은 Git 사용자를 주 대상으로 하지만 Jujutsu 같은 Git 호환 버전 관리 시스템도 지원함 다음 CLI와 gh-stack 확장이 필요함 git jj GitHub CLI인 gh gh extension install github/gh-stack 절차 작성과 테스트에 사용한 버전은 다음과 같음 jj v0.43.0 git v2.52.0 gh v2.96.0 github/gh-stack v0.1.0 jj 설정은 이전 글 Stacks in Jujutsu에서 정의한 별칭과 revset 별칭을 재사용함 커밋별 북마크 관리 GitHub 스택형 PR은 모든 PR에 Git 브랜치에 해당하는 jj 북마크가 있어야 하므로 스택을 구성할 때 여러 북마크를 직접 만들어야 함 jj b l: 북마크 목록 조회 jj b s <name> -r <commit>: 지정한 커밋에 북마크 생성 또는 이동 jj b a: 현재 커밋과 가장 가까운 북마크를 앞으로 이동하며 jj tug와 유사하게 동작 jj b --help: 전체 북마크 명령과 별칭 확인 새 빈 커밋을 편집할 때 북마크가 그 아래의 코드 커밋으로 이동하도록 bookmark-advance-to revset을 재정의할 수 있음 [revset-aliases."closest_pushable(to)"] definition = 'heads(::to & mutable() & ~empty() & description(regex:".+"))' doc = "Closest mutable, no...

Read Entire Article