2009-02-05 3 views
3

Я новичок в git и имею репозиторий subversion, который я хочу иметь возможность импортировать в репозиторий git время от времени (для развертывания). Поэтому я хочу выполнить большую часть обновлений с помощью svn, но хотел бы посмотреть, как лучше всего нажать на git (только ветка по умолчанию/мастер).Импорт ветки svn в git

ответ

5

Я знаю, что вы хотите импортировать только мастер/магистральную ветвь вашего репозитория SVN, но я хотел бы упомянуть svn2git для того, чтобы импортировать SVN в репозиторий.

Это лучше, чем git svn clone, потому что если у вас есть этот код в SVN:

trunk 
    ... 
    branches 
    1.x 
    2.x 
    tags 
    1.0.0 
    1.0.1 
    1.0.2 
    1.1.0 
    2.0.0 

git-svn будет проходить через всю историю совершить, чтобы построить новый Git репо.
Это будет импортировать все ветки и теги в качестве удаленных ветвей svn, тогда как то, что вы действительно хотите, это git-native local branch и git tag objects.
Таким образом, после импорта этого проекта, вы получите:

$ git branch 
    * master 
    $ git branch -a 
    * master 
    1.x 
    2.x 
    tags/1.0.0 
    tags/1.0.1 
    tags/1.0.2 
    tags/1.1.0 
    tags/2.0.0 
    trunk 
    $ git tag -l 
    [ empty ] 

После svn2git делается с вашим проектом, вы получите вместо этого:

$ git branch 
    * master 
    1.x 
    2.x 
    $ git tag -l 
    1.0.0 
    1.0.1 
    1.0.2 
    1.1.0 
    2.0.0 

Наконец, он убеждается ГОЛОВУ мастера это то же самое, что и текущий ствол svn repo.

3

Почему бы просто не работать в git на вашей рабочей станции? Это было бы самым простым.

  • git svn clone будет захватывать ваш репозиторий SVN и импортировать изменения в новое репозиторий git.
  • Если вам нужно нажать на удаленный репозиторий git для развертывания, то git remote add добавит его для вас.
  • Если вам нужно отодвигать в хранилище SVN затем git svn dcommit
1

в двух словах:

mkdir my_blog_tmp 
cd my_blog_tmp 
git-svn init http://code.yoursite.net/my_blog/trunk/ --no-metadata 
git config svn.authorsfile ~/Desktop/users.txt 
git-svn fetch 

и поздравления присоединились к нам мерзавцев! Here - отличный чит-лист для (бывших) пользователей svn.

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