2013-08-06 3 views
1

Я хочу научиться использовать git-svn. У меня есть локальный репозиторий SVN на моем диске, Я проверил некоторое время назад, используя что-то вроде этого:Как клонировать репозиторий git из локального репозитория svn

svn co http://myserver.com/mysvnrepo/trunk/ /mysvnrepo/ 
ls -a /mysvnrepo/ 
.  ..  .svn  foo  bar 

Это /mysvnrepo/ огромна, поэтому я хочу, чтобы избежать повторной загрузки или копирования файлов на все затраты ,

Мне интересно, есть ли способ git clone этого локального репо без загрузки/копирования чего-либо (потому что он уже существует).

У меня есть this, который кажется тем, что я ищу, но когда я это делаю, он не совсем дает мне то, что я ожидаю.

cd /mysvnrepo/ 
git svn clone file://mysvnrepo/ 
ls /mysvnrepo/ 
.  ..  .git  .svn  foo  bar 
git status 
# On branch master 
# 
# Initial commit 
# 
# Untracked files: 
# (use "git add <file>..." to include in what will be committed) 
# 
# .svn/ 
# foo/ 
# bar/ 

Я ожидал бы git обнаружить foo и bar как «версионируются и уточненный».

Согласно docs, кажется, что мне нужно использовать git svn init потому git svn clone работает fetch, который я, конечно, не хочу. Поэтому я пробовал

git svn init --trunk=file:///mysvnrepo/ 

... но не повезло.

Я совершенно не знаком с git, поэтому мое замешательство вне графика ... Я делаю что-то совершенно неправильное?

Заранее спасибо

ответ

1

Вы не можете взять подрывной снимок и преобразовать его в репозиторий.

Похоже, вы пытаетесь избежать длительной инициализации git-репозитория из svn: который обычно попытается подготовить всю вашу историю. Это может быть сделано по-другому, путем ограничения выборки в недавнюю историю в зависимости от того, как много истории имеет отношения к вам:

git svn clone -s -r 12334:HEAD https://svn.host.org/repo 

Где 12334 является самой ранней ревизией SVN вы заинтересованы и при условии, что репо уложен в стандартном порядке svn с ветвями и тегами.

+0

Спасибо andygavin ... Я узнал об этом, и это лучшее, что я мог сделать, но, к сожалению, он все еще перезагружает все файлы, чего я хотел избежать. – OLL

Смежные вопросы