나는 많은 svn 경험이 없지만 나는 자식과 함께 일하는 데 익숙하다.git-svn을 사용하여 svn 분기를 git 분기에 통합하는 방법은 무엇입니까?
다음과 같은 svn 저장소 구조 및 개정판이 있습니다.
https://server/svn/solution/trunk/solution.sln @ R100
https://server/svn/solution/trunk/project1/project1.csproj @ R150
https://server/svn/solution/trunk/project2/project2.csproj @ r160https://server/svn/solution/branches/solution.sln @ R100
01,235을 복제하는 경우 R350
https://server/svn/solution/branches/project1/project1.csproj @ R200
https://server/svn/solution/branches/project2/project2.csproj 내가 저장소
@ 16,
--stdlayout 난 원격 하나자식 svn의 복제 https://server/svn/solution 내가 다에게 얻을
(master)$ git checkout -b local-project1 project1
내가 얻을 모든 로컬 브랜치를 만들려면
(master)$ git branch -a
* master
remotes/project1
remotes/project2
remotes/trunk
내가 체크 아웃 할 때 지점은 project1입니다.
(local-project1)$ git checkout master
Switched to branch 'master'.
(master)$ git branch local-project1 -D
Deleted branch local-project1 (was 1111a11).
(master)$ git checkout -b local-project1
Switched to new branch 'local-project1'.
(local-project1)$ pwd
/c/workingcopies/solution
(local-project1)$ cd project1
(local-project1)$ pwd
/c/workingcopies/solution/project1
(local-project1)$ git branch --set-upstream local-project1 remotes/project1
Branch local-project1 set up to track local ref refs/remotes/project1.
(local-project1)$ git svn fetch
(local-project1)$ git reset --hard ae8e9b1a ;# go to last commit of the remote branch
을 페치 저장소에있는 지점에서 마지막 버전을 가져옵니다 분기는 내가 수행하면 시도 문제를 해결하기 위해 R100
@
https://server/svn/solution/branches/solution.sln에서 아무것도 포함되어 있지 않습니다 HEAD는 마지막 커밋으로 설정되지만 여전히 프로젝트 1을 솔루션이 아니라 지점에서만 가져옵니다. 모든 조언과 도움을 주시면 감사하겠습니다.
나는이 접근법을 시도하고 다른 자식 오류 메시지로 인해 실패합니다. – mrt181
어떤 접근 방식입니까? svn을 재구성하거나, git을 속여 지사가 정상보다 높은 디렉토리를 찾도록 속일 수 있습니까? – AFoglia
git를 속일 수 있습니다. svn repo는 표준을 따르지 않습니다. 가까운 장래에 repo가 이동하고 동료가 repo를 재구성합니다. – mrt181