Как сделать git -svn использовать конкретную ветвь svn как удаленный репозиторий?

Слово предупреждения: я вообще-то от n00b до git. Моя команда использует ветки функций в svn, и я хотел бы использовать git-svn для отслеживания моей работы над определенной ветвью. Я был (грубо) после Andy Delcambre post, чтобы настроить локальное репо git, но эти инструкции, похоже, привели git выбрать ветвь svn, которая недавно была изменена как удаленный репозиторий; проблема в том, что я не интересуюсь веткой. Как определить, какая ветка git-svn использует? Или я подхожу к этому совершенно неправильно?

UPDATE: я использовал параметры -T, -b и -T (в моем случае, поскольку репо svn имеет несколько проектов, но я хочу, чтобы репо git содержало только проект я работаю).

Ответ 1

Muchas gracias для Bart Blog для этой удобной ссылка для ветвей svn в git. Очевидно, все, что мне нужно, это указать удаленную ветвь при создании ветки git, например

git checkout -b git-topic-branch-foo foo

где foo - имя удаленной ветки.

Ответ 2

Вы также можете взглянуть на это: git -svn - это шлюз-убийца на рельсах.

Я использовал что-то вроде этого, когда мне нужно было убедиться, что моя локальная ветвь указывает на правильную ветку удаленного svn:

git branch -r

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

git reset --hard remotes/svn-branch-name

чтобы явным образом изменить локальную ветвь, чтобы указать на другую удаленную ветвь.

Ответ 3

Мне сначала нужно было запустить 'git svn fetch', так как ветвь, которую я хотел связать, была создана после моего клиента git.

Ответ 4

Я использую git -svn, но я не использовал функции, которые взаимодействуют с ветвями SVN. Сказав это, я заметил, что в приведенном ниже учебнике не использовались опции - T, -b, -t для git svn init. Эти параметры указывают git -svn, что имена названий вышек/ветвей/тегов, которые могут быть важны в вашей ситуации.