git-svn의 복제 작업을 사용하여 SVN 저장소 복제를 시작했습니다. 약 6 시간의 가져 오기 (큰 저장소) 후에 내 컴퓨터가 작동하여 잠을 잤습니다. 초기 작업을 모두 다시 실행하지 않고 작업을 재개 할 수있는 방법이 있습니까?
git-svn의 복제 작업을 사용하여 SVN 저장소 복제를 시작했습니다. 약 6 시간의 가져 오기 (큰 저장소) 후에 내 컴퓨터가 작동하여 잠을 잤습니다. 초기 작업을 모두 다시 실행하지 않고 작업을 재개 할 수있는 방법이 있습니까?
답변:
git svn fetch
재개 명령은 git svn clone
여러 소스에 의해 확인된다 :
(참고로, 초기 복제 단계에서 연결이 끊어 지거나 연결을 중지해야하는 경우 복제를 다시 시작하려면 위의 명령을 실행하여 기록 다운로드를 다시 시작해야합니다).
.NET에서 메모리 누수가있는 것 같습니다
git-svn
.git-svn
프로세스 의 크기 는 느리게 커졌고 약 2 주 후에는 1.2GB의 상주 크기가되었으며,이 시점에서 OS는 포크를 거부했습니다.
사실, 이것은 변장 한 축복이었습니다.
간단한 "git svn fetch
"로 중단 된 클론을 재개 할 수 있었고 이제는 훨씬 더 작은 힙으로 훨씬 더 빠르게 실행되었습니다.
이것은 실제로 매우 잘 작동하여 매일 저녁과 매일 아침 프로세스를 중단하고 다시 시작하는 습관이 생겼습니다. 며칠 후 완료되었습니다.
git-svn
기존 Subversion 저장소를 복제 하여 모험을 시작 합니다.
git svn clone url://path/to/repo -s
이
-s
플래그는 저장소가 "트렁크, 브랜치, 태그"규칙을 사용한다고 가정합니다. 그렇지 않은 경우 Git에서이를 알도록하려면 브랜치와 태그를 나타내는 디렉토리를 수동으로 지정해야합니다.SVN에서 모든 단일 개정판을 가져와 로컬로 커밋하므로 시간이 오래 걸립니다. 어떤 이유로 든 중지되면을 사용하여 다시 시작할 수 있습니다
git svn fetch
.
git svn clone
하여 프로세스를 중단했습니다. git svn clone
다시 실행 하면 진행중인 클론이 다시 시작됩니다. 다른 사람이 한 건가요?
나는 (나는 희망하는) 정답을 제공 하는 블로그 게시물 을 찾았 습니다 .
분명히 실행 git svn fetch
하면 복제 작업이 효과적으로 완료됩니다. 여기에 희망이 있습니다!
git svn rebase
가져 오기 후에 작업을 완료하고 트렁크를 반영하는 마스터 브랜치 를 사용해야 합니다.
최소한 git 2.1.0부터 다시 발행하여 재개 할 수 있습니다. git svn clone
그러나 이것은 .git / config의 일부 항목을 복제하여 제거하면 모든 것이 정상입니다
From at least git 2.1.0...
이 기능이 git 1.9.1에 존재했는지 아십니까?
git svn fetch
나를 위해 체크섬 불일치의 원인 - 분명히 더 HEAD 없었기 때문에 재설정 불가능했다 : / -하지만 잘 작동, 바로 제거했다 svn-remote.fetch
에서.git/config
git svn clone
를git svn fetch
. 예를 들어 HEAD SVN 개정판 만 가져 오도록 설정-r HEAD
했습니다git svn clone
. 재개하려면git svn fetch
모든 개정판을 가져 오기 시작하는을 실행 했습니다.