2012-12-14 1 views
1

알고 있습니다. 이 제목은 그다지 자기 설명 적이 지 않습니다. 그러나 여기 거래가 있습니다.읽기 전용 체크 아웃을 사용하여 svn 저장소의 미러를 갱신 할 수 있습니다.

회사 네트워크 (Subversion)에 저장소가 있습니다. 우리는이 저장소를 정상적으로 사용합니다. 클라우드 서버에이 저장소의 미러를 만들고 싶습니다.

여기에 워크 플로 아이디어는 다음과 같습니다

  • 는 클라이언트가
  • 우리는 로컬 서버의 repo
  • 에 커밋을 계속이 거울의 체크 아웃을하게
  • 구름이 거울을 확인 우리가 결정되면
  • 이는
  • 클라이언트가 거울에서 저장소의 업데이트 거울로 볼 수 변경하기

기본적으로 클라우드에서 직접 업데이트 (이 내용은 일정 함)를 얻을 수있는 쉬운 방법을 만들고 싶습니다. 그리고이 Repo가 로컬에서 업데이트 될 때 제어 할 수는 없지만, repo. 명심해야 할

어떤 것들은 : - 아니, 우리의 네트워크에 (우리보다는 자신의 보안 정책에 대한 자세한 내용을) 클라이언트에 대한 직접 액세스를 열 수는 - 예,이를 통해 'svn-을 만들고 싶어 쪽으로'. 패키지 준비는 '더 복잡합니다', 업데이트는 일정합니다.

어떻게 생각하세요?

svnsync 및 기타 도구를 살펴 보았지만 원하는대로 할 수있는 방법을 찾지 못했습니다.

+0

왜 미러가 SVN 저장소 일 필요가 있습니까? 읽기 전용 인 경우 소스 제어를 사용하는 지점이 없으며 공유되는 웹 서버 디렉토리에 대한 코드를 체크 아웃하는 스크립트가있을 수 있습니다. Subversion 1.5는 여러분을 도울 수있는 프록시 함수를 도입했습니다. –

+0

클라우드에서이 미러에서 체크 아웃 및 업데이트해야하기 때문에. 이 프록시 기능을 살펴 보겠습니다. – lcguida

+0

다중 저장소가있는 설정에 대해 Git 및 Mercurial/Hg가 설계되었습니다. SVN은 IMHO 그 목적을위한 잘못된 버전 시스템입니다. – Robert

답변

2

확인.

좀 더 검색 한 결과 svnsync가 내가 원하는 것을 발견했습니다.

나는 내가 필요한 것을 얻은이 두 링크를 따라 갔다.

Making a local mirror of a subversion repository: using svnsync

Google Code - How do I import an existing Subversion repository?

첫 번째 동기화에

시간이 많이 걸리지 만, 다음은 새로운 버전을 업데이트합니다. 그리고 내 클라이언트는 클라우드에서 체크 아웃을 할 수 있으며 repos는 내가 명령을 내릴 때만 동기화합니다.

+0

또한 저장소에 수정할 수있는 유일한 사용자가 svnsync이므로 수행 할 구성이 있습니다 (링크에 설명되어 있음). – lcguida

관련 문제