git-svn импорт только ветка - PullRequest
1 голос
/ 27 ноября 2010

Я хочу импортировать только 1 ветку из моего репозитория SVN в качестве репозитория git.Поэтому я хочу, чтобы содержимое этой ветви стало мастером.Я не хочу ничего другого в хранилище.Я также не очень хочу иметь возможность совершить первоначальное SVN-репо.На самом деле, я не хочу, чтобы что-то происходило с моим репозиторием SVN.

Пример:

branches
  branch1
  branch2
  some-branch
    project

, поэтому я хочу, чтобы содержимое папки project стало моей главной веткой.Как я могу это сделать?

Спасибо.

РЕДАКТИРОВАТЬ

похоже, что есть ветви, которые были объединены в мою ветку, и git-svnне может найти историю, потому что она смотрит в

branch / some-branch / project / branch / branch1

, она думает, что моя удаленная ветвь является корнем.Как я могу это исправить?

1 Ответ

2 голосов
/ 27 ноября 2010

1) Определите новую ветку в .git / config:

[svn-remote "release-branch"]
        url = svn+ssh://user@yourdomain.com/source/branches/mono-2-2/mcs
        fetch = :refs/remotes/git-svn-release-branch

2) Импорт ветки SVN. SVN_BRANCHED_REVISION - это версия, когда произошла ветвь в SVN.

[~]$ git svn fetch release-branch -r SVN_BRANCHED_REVISION

3) Подключите локальную ветку Git к удаленной ветке:

[~]$ git branch --track release git-svn-release-branch

5) Оформить заказ и обновить

[~]$ git checkout release
[~]$ git svn rebase
...