Используйте git-svn с существующим репо без .git / svn / - PullRequest
5 голосов
/ 09 июля 2010

Я клонировал исходники проекта, используя Git, который конвертируется на сервере из репозитория SVN. Проблема с этим Git-репозиторием состоит в том, что в нем отсутствуют теги, ветки и отсутствуют некоторые ревизии. Количество ревизий огромно (~ 20000) для меня, чтобы использовать клон git-svn, и это было бы пустой тратой пропускной способности и времени, поскольку у меня уже есть большинство объектов в моем локальном репо. Из-за этого я хотел бы знать:

  • Как я могу преобразовать свой репозиторий Git в репозиторий git-svn для обновления непосредственно из репозитория SVN вместо испорченного репозитория Git.
  • Могу ли я получить недостающие ревизии без клонирования всего?
  • Можно ли загружать теги напрямую с помощью Git?
  • Будут ли эти ветви дополнительной проблемой?

1 Ответ

8 голосов
/ 31 марта 2011
  • Легко позволить git-SVN захватить ваш клон;просто запустите git svn init с теми же аргументами, которые вы использовали в исходном репо, и тогда ваш git svn fetch должен найти существующие коммиты в репо.

  • Добавление веток сделать невозможнобез серьезной операции репо: вам придется переписать большую часть своей истории, чтобы включить слияния между ветвями.

  • Вставка тегов выполняется легко, и я считаю, что это можно сделать после первоначального репоклон.

...