깃허브(GitHub)가 개발자들이 대규모 코드 변경을 보다 효율적으로 관리할 수 있도록 돕는 새로운 기능인 '스택형 풀 리퀘스트(Stacked Pull Requests)'를 공개 프리뷰로 선보였습니다. 이 기능은 하나의 거대한 풀 리퀘스트(PR) 대신, 서로 의존하는 작은 PR들을 순서대로 쌓아 올리는 방식으로, 코드 리뷰 과정을 간소화하고 개발 워크플로우의 병목 현상을 해소하는 데 중점을 둡니다.
스택형 PR은 각각의 PR이 전체 변경 사항의 특정 계층(layer)을 나타내도록 설계되었습니다. 개발팀은 각 계층의 PR을 독립적으로 검토하고 테스트할 수 있으며, 준비가 완료되면 전체 스택을 한 번의 클릭으로 병합하거나 개별 계층만 병합할 수도 있습니다. 넥스트JS(Next.js) 리드 개발자 팀 노이켄스(Tim Neutkens)와 제이쿼리(jQuery) 창시자 존 레식(John Resig) 등 이미 이 기능을 사용해본 개발자들은 대규모 기능 개발 시에도 작은 변경 사항들을 빠르게 반영하고, 리뷰 부담을 줄여 생산성을 높이는 데 큰 도움이 된다고 평가했습니다. 기존 브랜치 보호(branch protection) 및 검사(checks) 기능도 그대로 적용됩니다.
이 기능은 특히 인공지능(AI) 개발 등으로 코드베이스가 빠르게 확장되고 복잡해지는 현대 개발 환경에서 그 중요성이 더욱 부각됩니다. TED의 CTO 앤디 메리맨(Andy Merryman)은 AI 덕분에 개발자 생산성이 극적으로 향상되었지만, PR 크기 증가로 리뷰 병목 현상이 발생했는데, 스택형 PR이 이를 해결하여 피드백 루프를 단축하고 안정적인 코드 배포를 가속화했다고 언급했습니다. 깃허브 CLI(Command Line Interface) 확장 프로그램 설치를 통해 쉽게 시작할 수 있으며, 깃허브 웹사이트, 모바일 앱, 심지어 깃허브 코파일럿(GitHub Copilot)과 같은 코딩 에이전트에서도 스택을 관리할 수 있습니다.
스택형 PR은 개발팀이 병렬적으로 짧고 집중된 PR을 검토하여 대규모 변경 사항의 진행 속도를 유지하고, 각 계층의 품질을 독립적으로 관리할 수 있게 합니다. 이는 기존의 단일 대형 PR이 가져오던 리뷰 지연과 수동 리베이스(rebase)의 번거로움을 크게 줄여줄 것입니다. 궁극적으로 개발팀의 협업 효율성을 높이고, 더 빠르고 안정적인 소프트웨어 배포를 가능하게 하여 전체적인 개발 프로세스의 생산성을 한 단계 끌어올릴 중요한 변화로 평가됩니다.
