Импортируйте предыдущие коммиты, используя git-svn - PullRequest
2 голосов
/ 09 мая 2011

Что я сделал до сих пор:

git svn init http://example.com/svn/trunk

(последняя редакция - 1000)

git svn fetch -r1000
git svn rebase

Мой репозиторий обновлен, и у меня в журналах все коммиты начиная с rev 1000

Как импортировать историю начиная с версии 800?
Как оформить заказ до ревизии 800?

Ответы [ 3 ]

1 голос
/ 09 мая 2011

Чтобы найти хеш коммита для конкретной ревизии svn, вы можете сделать

git svn find-rev r800

Тем не менее, это поможет вам только после того, как вы получите коммиты subversion в вашем репозитории git. Как правило, лучшим вариантом является получение извлечения, которое включает в себя всю историю подрывной деятельности.

git svn clone http://example.com/svn/trunk

Или, если хотите, все ветви, а также ствол

git svn clone -s http://example.com/svn/

Если вы хотите продолжить работу по текущему пути (что будет болезненно), вы можете получить второй репозиторий git, содержащий больше ревизий, чем текущий, а затем собрать их вместе, используя git-трансплантаты. Например, если вы уверены, что вам нужна только версия 800, вы можете сделать еще один

git svn init http://example.com/svn/trunk git svn fetch -r 800

Однако, если вам нужна ревизия 600, 400, 900 и т. Д., Вам навсегда придется связываться с вашим локальным git-репозиторием. Лучше просто начать все сначала, получить надлежащую проверку git svn, которая включает в себя все ревизии, а затем вы можете свободно проверять произвольные ревизии без необходимости перепрыгивать через обручи.

1 голос
/ 09 мая 2011

Вы можете сделать:

git svn fetch -r1000:HEAD
git svn rebase

Вы также получите эти коммиты.

Git svn clone: ​​как отложить выборку истории изменений

0 голосов
/ 09 мая 2011

Я не знаю, как решить первую проблему, но что касается второй, это так же просто, как найти хеш-тег фиксации для этой ревизии и набрать git checkout <commit tag>.

...