큰 개발 회사가 Subversion을 소스 제어 저장소로 사용하도록 설정하는 데있어 이전 경험과 모범 사례를 찾고 있습니다.큰 개발 회사의 표준 소스 제어 저장소로 Subversion 사용
큰 여기에, 나는 수백 명의 개발자/사용자를 의미합니다!
큰 개발 회사가 Subversion을 소스 제어 저장소로 사용하도록 설정하는 데있어 이전 경험과 모범 사례를 찾고 있습니다.큰 개발 회사의 표준 소스 제어 저장소로 Subversion 사용
큰 여기에, 나는 수백 명의 개발자/사용자를 의미합니다!
수백 명의 사용자가 사용하는 Subversion을 사용했던 한 회사는 자체 서버가 없었습니다. 대신 Collabnet에서 관리되는 서비스였습니다.
수백 명의 개발자가 CVS를 사용하여 수백 개의 프로젝트를 보았 기 때문에 svn이 잘해야합니다. 제가 알고있는 유일한 문제는 작업 디렉토리와 백업에 사용되는 디스크 공간에 관한 것입니다.
저는 3 곳의 지리적 위치와 수백 개의 개발자 및 100 개 이상의 프로젝트에서 사내 Subversion 호스팅을 구현 한 팀에서 일했습니다. 몇 가지 주요 학습 내용
svnserve 대신 Apache mod_svn을 사용하십시오. 그런 다음 'Subversion 인증'을 LDAP (또는 ActiveDirectory 인증)에 연결하여 팀이 하나 이상의 로그인 이름과 암호를 기억할 필요가 없도록 할 수 있습니다.
각 프로젝트마다 다른 하위 폴더가있는 하나의 큰 저장소가 아닌 동일한 서버에 여러 저장소를 만듭니다. 사용자 및 액세스 제어를 관리하는이 방법은 간단합니다. 또한 마무리 프로젝트에서 리포지토리를 닫고 보관하는 작업도 간단합니다.
우리는 전자 메일 알림 및 RSS 피드에 대한 사용자, 사용 권한 및 svn 후크 스크립트를 관리하기 위해 간단한 python cgi 스크립트를 개발했습니다. 스크립트는 프로젝트 팀이 svn을보다 빨리 받아들이는 데 도움이되었습니다.
리버스 프록시를 넣고 회사 네트워크 외부에서 'https'액세스를 통해 일부 프로젝트를 선택적으로 노출 할 수 있습니다. 외부 공급자/계약자 팀이 이러한 방식으로 프로젝트에 대한 액세스를 제어 할 수 있습니다.
전반적으로, 우리는 (CVS 및 Visual SourceSafe를 같은 기존 시스템에서 데이터를 마이그레이션 포함) 새로운 시스템에 약 1 년의 모든 프로젝트 팀을 옮겼습니다.
전적으로 Nitin Bhide에 동의합니다. 내 추가는 :
당신은 SVN 몇 가지 워크 플로우를 CVS에 사용하는 경우 당신은 단지 공급 업체 폴더의 모든 파일을 삭제하기 때문에, CVS에 존재하며 복사 매우 다른, 예를 들어 공급 업체 가지이 있습니다 안에 새 버전. 이것은 더 이상 SVN에서 작동하지 않습니다.
만약 당신이 일식에 익숙하다면, Subclipse 에서처럼 파괴적인 상황에서 많은 것들이 다릅니다. 사용자에게 CVS 사용자를 파악하기 가장 어려운 것으로 전역 개정 번호에 익숙해 져야합니다.
저장소 마이 그 레이션이 성공적이지 않은 경우 개발자 팀의 대기 시간을 피하기위한 마이그레이션 전략이 중요합니다.