Git-SVN философия работы? - PullRequest
       9

Git-SVN философия работы?

3 голосов
/ 19 января 2010

Как работает git-svn?

У меня есть доступ к хранилищу svn на работе, но я собираюсь начать работать с распределенной командой, и я хотел бы начать использовать git в этом проекте (в качестве пилота).

Ответы [ 2 ]

4 голосов
/ 19 января 2010

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

Различия, о которых следует беспокоиться, взаимодействуют с апстримом: вместо git pull, как вы обычно используете для обновления изменений, вы будете использовать git svn rebase, и git попытается воспроизвести ваши локальные коммиты на удаленном HEAD, остановимся на этом пути и дадим вам знать о конфликтах, которые нужно разрешить, если таковые имеются (вместо того, чтобы объединять их, как это обычно для чистых репозиториев git). Когда вы делаете коммит, вы используете git svn dcommit, что делает ваши локальные коммиты в линейной истории и применяет их к вышестоящему HEAD в svn.

1 голос
/ 19 января 2010

Чтобы добавить к Matt Enright 's answer , рассмотрите также svn2git (и обратный скрипт git2svn), чтобы получить более похожий на gitструктура репозитория.
(т.е. стараться не использовать ветви как каталог, как в SVN)

...