2010-02-15 2 views
3

svn을 사용하는 오픈 소스 프로젝트 용 패치 작업. 액세스를 저 지르지는 않았지만 내 자신의 변경 사항을 추적 할 수있는 버전을 원합니다. 나는 this guide을 읽고 svn repos를 읽고 hg로 변환했다.수은으로 마이그레이션 한 후 svn repos에서 변경 사항을 가져 오는 방법

내 새 로컬 복사본을 공식 복사본 svn repos에서 내 로컬 사본에 가져올 수있게하려면 어떻게 수행 할 수 있습니까? 가져온 후 내 로컬 폴더에 추적 할 수없는 .hgignore 파일이 포함되어 있습니다. 나는 그 중 하나를 수은으로 추적해야한다고 추가해야합니까?

나는 또한 this tool을 들여다 보았지만, svn repos에 연결되어있는 수은 지역에서 일하는 것보다 더 많은 것으로 보인다. 나는 나의 수은 리포지엄을 bitbucket에두고 싶다. 그리고 이전의 가이드는 더 이해가가는 것처럼 보였다.

내 생각이 일찍 생각할 수도 있지만 나중에 내 기고가 완료되면 업스트림으로 보낼 패치를 생성하는 가장 좋은 방법은 무엇일까요? 내가 곧 알아야 할주의 사항이 있습니까?

편집 :orip's answer (그것의 편집 부분) 거의 정확히 내가하고 싶은 것을 요약 : local hg copy하는 내 온라인 bitbucket의 repos에 svn에서 update뿐만 아니라 push 수 있습니다.

답변

1

당신은 TortoiseHg wiki on SVN 한 번 봐 걸릴 수 있습니다 - 서브 버전 서버 섹션에 대한 클라이언트로 TortoiseHg를 사용 , 어쩌면 당신은 당신이 당신의 질문에 연결된 의욕 위키에 표시되는 도구에 대한 결정을 내릴 도움이 될 것입니다. 당신은 MQ 작업을 고려할 수 Mercurial from Subversion: moves, renames and tags

+0

TortoiseHg 클라이언트가 체크 아웃을 한 다음 svn repos에서 업데이트를 수행 할 수있는 동시에 내 hg repos에 푸시 할 수 있다면 멋질 것입니다. 아프다. – Mizipzor

2

새로운 변경 사항을 가져 오는 것은 쉽습니다. svn 코드를 체크 아웃하고 정기적으로 'svn update'을 다운로드 한 다음 다운로드 한 파일을 수은 리포에서 확인하십시오.

.hgignore 파일은 어떤 파일 형식이 추적되지 않을지를 알려주는 역할을합니다. 즉, 무시하십시오. 이것을 수은 저장소에 추가하지 마십시오. 전 세계 전역 무시와 동일한 예외가 포함될 가능성이 큽니다. SVN에서

패치 생성이 쉽고, 그렇지 계속 상호 운용성을 위해, HG에 svn을 변환을 사용하지만, 한 번 변환을위한 것입니다

+0

내 로컬 수은 트리에 일반 파일 복사 만 하시겠습니까? 초기 수입과 같이 역사를 보존 할 수있는 방법이 있습니까? – Mizipzor

+0

.hgignore 파일을 repo에 추가하는 데 아무런 문제가 없습니다. 실제로 책에서 권장합니다. –

1

가이드합니다 (svn의 REPO를 업데이트 한 후) svn diff > myPatch.diff을한다.

너는 hgsubversion과 같은 것을 원한다.

편집 : 방금 질문에 링크 된 것으로 나타났습니다. 저장소의 복제본을 bitbucket에 보관할 때 문제가 없어야합니다. - hgsubversion을 사용하여 SVN과 로컬로 상호 작용하고 일반적으로 hgsubversion을 사용하여 bitbucket으로 푸시하십시오.

+0

당신이 원하는 부분 (편집 부분)을 꽤 많이 잡았습니다. 그러나 .svn과 .hgsvn 폴더를 내 사본에서 추적해야한다면 알아 내지 못했을 것입니다. 그 사실을 알지 못합니까? 또한 새로운 것들이 공식 svn repos에서 업데이트를 시도 할 때까지 기다리고 있습니다. – Mizipzor

2

:

또한,이 질문에 VonC에 의해 주어진 답을 확인하십시오.

  • SVN : 각 후 addremove 명령을 수행 할 수 있습니다 : 주요 저장소
  • HG와 최신을 유지하는 데 사용 그래서, 당신은 프로젝트가 동시에 두 VCS에서 관리하는 것 SVN에서 업데이트하고 MQ를 사용하여 패치를 작성합니다.

이렇게하면 주 저장소에 패치를 제공하는 것이 더 쉬울 것입니다.

+0

언뜻보기에 조금 지나치게 복잡해 보입니다. 하지만 어쩌면 여기서 당면한 문제를 과소 평가할 수도 있습니다. 나는 그것을 조사 할 것이다, 고마워! – Mizipzor

+0

원한다면 여기에 설명 된 워크 플로우를 참조하십시오 : http://bitbucket.org/segv/hg-website/wiki/Workflows "CVS 다루기"섹션 – gizmo