2013-03-25 2 views
0

svn repo가 ​​있어야합니다. 내 컴퓨터의 로컬 폴더에 있습니다. 가능한지 모르겠지만 변환하여 git 만 사용하도록하고 싶습니다. 나는 더 이상을 .svn 폴더 안에 거기 SVN 서버에 대한 액세스 및 모든이없는 내가 svn log을하고 시도로컬 svn repo를 자식으로 변환

all-wcprops 
entries 
format 
prop-base 
props 
text-base 
tmp 

이지만 자격 증명을 묻는 시작합니다. 나는 또한 svnadmin verify /folder 같은 것을함으로써 svn repo임을 확인하려고 시도했지만, 모두 그것이 svnadmin: Can't open file 'format': No such file or directory이라고 말합니다. 내가 필요한 것은 커밋 히스토리뿐입니다.

+2

AFAIK 기록은 중앙 SVN 서버에 저장되어 있습니다. 액세스 권한을 상실한 경우 더 이상 기록이 없습니다. 이것이 DVCS가 SVN보다 우수한 이유 중 하나입니다. 모든 개발자는 일종의 오류가 발생할 경우 백업으로 사용할 수있는 전체 기록 사본을 가지고 있습니다. –

+0

[이 질문] (http://stackoverflow.com/questions/13574743/does-the-svn-1-7-working-copy-format-store-the-entire-history-of-the-repo)는 다음과 같이 나타냅니다. 많은. 따라서 중앙 저장소에 대한 액세스 권한이 상실된 경우 더 이상 커밋 내역이없고 git로 신선한 상태로 시작해야합니다. – ajp15243

+0

전문 용어로, 실제로 가지고있는 것은 svn _working copy_입니다. 이것은 저장소와 같은 것이 아닙니다. 저장소는 svn 서버에 저장된 것입니다. 찾고있는 정보는 작업 카피에서 사용할 수 없습니다. – ThatBlairGuy

답변

1

를 GIT에 추가 중앙 서버에 대한 액세스 권한이없는 경우 기록에 액세스 할 수 없음) 동일한 폴더에서 git repo를 초기화하고 .svn/ 행 외에 SVN에서 일반적으로 무시하는 모든 파일/폴더가있는 .gitignore 파일을 추가하십시오. .svn 폴더를 무시한 다음 모든 것을 추가/커밋하십시오.

cd path/to/repo 
git init 
touch .gitignore 
#EDIT THE .gitignore FILE HERE 
git add . 
git commit -m "Initial commit" 

나중에을 .svn 폴더를 정리하려면

, 당신은 werd의 대답이나 clone the repo to another folder에있는 링크를 사용할 수 있습니다 : 같은 명령 줄 자식으로

,이 보일 것이다.

3

리포지토리 (로컬 작업 공간 아님) 인 경우 git svn clone을 사용하여 새로 만든 git 리포지토리에 버릴 수 있습니다. 일요일을 통해 5 가지 방법으로 결과를 확인하고 SVN을 안전하고 쾌적한 CD/DVD에 보관하십시오. 이 순차적으로 커밋 같은 것을 통합 한 후이 이제까지 있었다 각 sigle 개정을 다시 SVN을 요청하고, 같은 git svn clone이하는 매우 시간이 오래 걸릴 수

참고. SVN은 낡은 물건을 파낼 때 비효율적이며, git svn에 의한 핸들링은 정확하지 않습니다. 너무 크지 않은 원격 SVN 저장소의 경우 하루 또는 이틀 정도 소요될 수 있습니다. 연결이 끊어짐에 따라 여러 번 다시 시작해야했습니다. 나는 올바른 주문이 git svn clone이거나 git svn rebase이거나 뭔가 다른 것 (예, 무서운 복제 복제 저장소를보고 있지만 다운로드 한 내용이 있음)을 기억하지 못합니다.

+1

불행히도 로컬 작업 공간처럼 들리지만 Repo 자체는 아닙니다. – ajp15243

관련 문제