2009-08-24 8 views
15

나는 사람들이 코드 리뷰를 얼마나 자주하고 있는지, 얼마나 자주 리뷰를하는 것이 좋다고 생각하는지 알고 싶습니다. 또한 코드 검토 수행 방법에 대해 알려드립니다. 지금은 TTC를 사용하고있어 매우 만족하지만 코드의 모든 부분을 다루지는 않는다고 생각합니다.얼마나 자주 코드 검토를 수행해야합니까?

답변

14

코드가 트렁크에 코드 을 투입하기 전에 항상 코드 검토를 수행합니다. 닐 버터 워스 (Neil Butterworth)는 잦은 커밋이 장려되고 커밋하기 전에 코드 검토가 필요하다는 사실에 동의합니다.

정확한 조건은 환경 및 프로젝트에 따라 다릅니다. 우리의 환경은 다음과 같습니다

  • 트렁크가 항상 작업 (예 : 컴파일하거나 테스트를 실패하지 않는 트렁크에 물건을 저 지르지해야하는 규칙을 가지고 트렁크에 개발의 우리의 메인 라인을 유지 등) 각각의 경우 (기능, 버그 수정 등)
  • 이 검토
  • 을 통과 할 때 트렁크에 아래로 가지를 병합
  • 주어진 지점에서 작업이 완료되는 코드 검토를 수행하기위한
  • 지점
  • 릴리스가 생성되면 골드 릴리스 개정 및 분기에 태그를 지정합니다. 특정 릴리스에 대한 모든 새로운 버그 수정이 해당 분기에서 발생합니다. 릴리스 분기는 트렁크로 다시 병합되지 않습니다. 우리의 환경에서

, 이것은 개발자가 코드 (그러나 모든 커밋) 작업의 모든 단위를 수행 할 리뷰 (자신의 지점의 범위 내)와 자주 커밋 할 수 있습니다.

코드 검토를 수행하는 방법에 관해서는 훨씬 야심적인 질문입니다. SO에 자신의 질문을받을 권리가 하나는 (이미 실제로 여러 가지가 있습니다) :

https://stackoverflow.com/questions/89163/how-to-conduct-a-successful-code-review Best Peer Code Review Software https://stackoverflow.com/questions/tagged/code-review

+0

흥미로운 접근 방식으로,이 도구를 간소화하기 위해 어떤 도구를 사용하여 버그/기능/기타 작업을 시작할 때 gazillion 단계가 필요하지 않습니까? –

+0

+1 : 제가 작업 한 모든 프로젝트에서 꽤 일반적인 표준 사례입니다. 쉽고 간단합니다. –

+0

FogBugz를 사례 추적에 사용하고 Subversion을 소스 제어에 사용합니다. TortoiseSVN을 사용하여 트렁크에서 분기하고 작업 복사본을 전환합니다. 그런 다음 작업이 완료되고 검토 준비가 완료되면 검토 자에게 사례를 지정합니다. 검토가 완료되면 원래 개발자가 TortoiseSVN을 사용하여 트렁크에 병합합니다. 나는 FogBugz 7 (우리는 여전히 6에있다)이 워크 플로우 관리를 제공하므로 SVN 단계가 아닌 워크 플로우를 자동화 할 수 있다고 생각한다. 우리는이 워크 플로우를 따르는 것이 어렵거나 지루하다는 것을 알지 못했습니다. –

1

체크인하기 전에 체크 인은 종종 프로그래머에 따라 함수/모듈의 논리적 완성과 연결되기 때문에 좋은 시간입니다. 코드를 체크인 할 때 누가 언제 무엇을 코딩했는지 추적하기가 이미 어렵습니다.

+3

나는 완전히 코드 검토는 체크인하기 전에 개최해야한다는 것을 동의하지 않는다. 빈번한 체크인은 장려되어야 할 것이고 코드 검토는 꼭 필요한 도구이지만이 방법으로 만 얻을 수 있습니다. –

+0

@ Neil, 대안 PLZ로 답변 해 주시겠습니까? –

+0

각 팀이 귀하의 팀이 편할만한 크기를 검토하는 것도 좋은 생각입니다. 변경 사항의 크기와 검토가 수행되는 빈도 사이의 균형을 찾고 있습니다. 덩어리가 너무 크고 검토자가 관심을 잃고 세심한주의를 기울이지 않고 넘어 질 수 있습니다. 너무 빈번한 리뷰는 리뷰어의 실제 작업에 찬성하여 연기 될 수 있습니다. –

1

체크인 할 때마다 체크 인 전에 언제든지 체크인 할 수 있습니다. 그러나 프로젝트에 따라 코드를 수행하는 것이 더 자주 필요할 수 있습니다.

프로젝트를 진행하는 데 수주가 걸리고 해당 기간 동안 코드를 체크인하지 않으면 프로젝트의 다양한 구성 요소가 완료 될 때 코드를 받아야합니다. 그 이유는 잘못된 디자인 패턴이 전체 프로젝트를 통해 반복되지 않고 검토에서 필요한 변경 사항이 적게 드는지 확인하기 위해 코드를 지속적으로 검토해야하기 때문입니다.

개발자가 많으면 많을수록 코드를 검토해야한다고 제안합니다.

+4

몇 주 동안 체크인하지 않으셨습니까? 코드는 하루에 여러 번 점검해야합니다. –

+0

아마도 더 좋은 방법은 부모 지점으로 승격하는 것보다는 오히려 체크인하는 것입니다. –

관련 문제