Обновить зеркало git -svn git без повторной загрузки всего
Я создал зеркало git репозитория svn, используя
git svn clone svn://svn.svnrepo.com
Я загрузил его в github и смог обновить локальное репо, используя
git svn rebase svn://svn.svnrepo.com
и нажмите обновления github
Позже после того, как я удалил локальную копию, я снова хотел обновить удаленный
Итак, я клонировал git repo
git clone git://git.gitrepo.com
Но когда я попытался переустановить, я получил сообщение об ошибке
git svn rebase svn://svn.svnrepo.com
Data from a previous version of git-svn exists, but
(required for this version (1.8.3.2) of git-svn) does not exist.
Done migrating from a git-svn v1 layout
то он дает Невозможно определить восходящую информацию SVN из ошибки истории HEAD
Ive попробовал:
git svn init svn://svn.svnrepo.com
с:
git svn fetch
но он запускает повторную загрузку всего репозитория svn, который занимает более 24 часов
Текущая версия svn помечена git -svn-id в журнале фиксации и кажется прекрасной, как мне остановить git svn fetch от повторной выборки уже существующих файлов или их перекомпоновки без полной повторной загрузки? У этого зеркала никогда не было коммитов, которые бы отличались от svn вверх по течению.
Ответы
Ответ 1
просто нужно запустить следующие команды
git config svn-remote.svn.url $SVN_URL
git config svn-remote.svn.fetch :refs/remotes/git-svn
svn2git --rebase
или вы также можете вручную отредактировать .git/config
, чтобы добавить раздел svn-remote
:
[svn-remote "svn"]
url = SVN_URL
fetch = :refs/remotes/git-svn
и отныне только svn2git --rebase
-
PS: кредит для моих источников: