logo

리뷰

리뷰 패널은 Codex가 무엇을 변경했는지 이해하고, 구체적인 피드백을 주고, 무엇을 유지할지 결정하도록 돕습니다.

리뷰 패널은 Git 저장소 안에 있는 프로젝트에서만 작동합니다. 프로젝트가 아직 Git 저장소가 아니라면 리뷰 패널이 저장소 생성을 안내합니다.

표시되는 변경 사항

리뷰 패널은 Codex가 수정한 내용만이 아니라 Git 저장소의 상태를 반영합니다. 따라서 다음이 표시됩니다.

  • Codex가 만든 변경 사항
  • 사용자가 직접 만든 변경 사항
  • 저장소의 다른 커밋되지 않은 변경 사항

기본적으로 리뷰 패널은 커밋되지 않은 변경 사항에 초점을 맞춥니다. 범위를 다음으로 전환할 수도 있습니다.

  • 모든 브랜치 변경 사항: 기준 브랜치와의 diff
  • 마지막 턴 변경 사항: 가장 최근 assistant 턴의 변경 사항만

로컬에서 작업할 때는 UnstagedStaged 변경 사항 사이를 전환할 수도 있습니다.

리뷰 패널 탐색

  • 파일 이름을 클릭하면 일반적으로 선택한 에디터에서 해당 파일이 열립니다. 기본 에디터는 설정에서 선택할 수 있습니다.
  • 파일 이름 배경을 클릭하면 diff가 펼쳐지거나 접힙니다.
  • Cmd를 누른 채 한 줄을 클릭하면 선택한 에디터에서 해당 줄이 열립니다.
  • 변경 사항이 마음에 들면 변경 사항을 stage하거나 마음에 들지 않는 변경을 revert할 수 있습니다.

피드백용 인라인 댓글

인라인 댓글을 사용하면 diff의 특정 줄에 직접 피드백을 달 수 있습니다. 이는 Codex를 올바른 수정으로 안내하는 가장 빠른 방법인 경우가 많습니다.

인라인 댓글을 남기려면 다음 단계를 따릅니다.

  1. 리뷰 패널을 엽니다.
  2. 댓글을 달고 싶은 줄 위에 마우스를 올립니다.
  3. 나타나는 + 버튼을 클릭합니다.
  4. 피드백을 작성하고 제출합니다.
  5. 피드백을 모두 남긴 뒤 스레드에 메시지를 보냅니다.

댓글은 줄 단위로 연결되므로 Codex는 일반 지시보다 더 정확하게 응답할 수 있습니다.

Codex는 인라인 댓글을 리뷰 지침으로 취급합니다. 댓글을 남긴 뒤 "인라인 댓글을 처리하고 범위는 최소로 유지해 줘"처럼 의도를 명확히 하는 후속 메시지를 보냅니다.

코드 리뷰 결과

/review를 사용해 코드 리뷰를 실행하면 댓글이 리뷰 패널에 직접 인라인으로 표시됩니다.

Pull request 리뷰

Codex가 저장소에 대한 GitHub 접근 권한을 가지고 있고 현재 프로젝트가 pull request 브랜치에 있으면, Codex 앱은 앱을 떠나지 않고 pull request 피드백을 처리하도록 도울 수 있습니다. 사이드바는 pull request 컨텍스트와 리뷰어 피드백을 보여 주며, 리뷰 패널은 diff와 함께 댓글을 보여 주므로 같은 스레드에서 Codex에게 문제 처리를 요청할 수 있습니다.

Codex가 pull request 컨텍스트, 리뷰 댓글, 변경 파일을 불러올 수 있도록 GitHub CLI(gh)를 설치하고 gh auth login으로 인증합니다. gh가 없거나 인증되지 않았다면 pull request 세부 정보가 사이드바나 리뷰 패널에 표시되지 않을 수 있습니다.

전체 수정 흐름을 한곳에 유지하려면 다음 흐름을 사용합니다.

  1. pull request 브랜치에서 리뷰 패널을 엽니다.
  2. pull request 컨텍스트, 댓글, 변경 파일을 검토합니다.
  3. 처리하려는 특정 댓글을 수정하도록 Codex에 요청합니다.
  4. 결과 diff를 리뷰 패널에서 검사합니다.
  5. 준비되면 변경 사항을 stage, commit, push해 PR 브랜치에 반영합니다.

GitHub에서 트리거하는 리뷰는 GitHub에서 Codex 사용을 참고하십시오.

파일 stage와 revert

리뷰 패널에는 커밋하기 전에 diff를 정리할 수 있는 Git 작업이 포함되어 있습니다.

다음 수준에서 변경 사항을 stage, unstage, revert할 수 있습니다.

  • 전체 diff: 리뷰 헤더의 작업 버튼을 사용합니다. 예: "Stage all", "Revert all".
  • 파일별: 개별 파일을 stage, unstage, revert합니다.
  • hunk별: 단일 hunk를 stage, unstage, revert합니다.

작업의 일부를 받아들이려면 staging을 사용하고, 버리려면 revert를 사용합니다.

staged와 unstaged 상태

Git은 같은 파일 안에 staged 변경과 unstaged 변경을 동시에 표현할 수 있습니다. 이런 경우 staged와 unstaged 보기에서 패널이 "같은 파일을 두 번" 보여 주는 것처럼 보일 수 있습니다. 이는 정상적인 Git 동작입니다.

Previous
설정