Я пытаюсь объединить два репозитория SVN. Один является своего рода вилкой другого. Но это не совсем вилка, поэтому я не могу найти общую точку.
Я клонировал оба репо в одном локальном репозитории git-svn, каждое репо в одной ветви, и я уже интегрировал оба репо, но знаю, что мне нужно перенести изменения в одно из оригинальных репо. Я пытаюсь определить лучший рабочий процесс для загрузки изменений, сохраняя историю. Я думаю, что это должно быть что-то вроде этого:
# Move the trunk of the remote repo to a branch
$ svn move svn+ssh://host.example.com/repos/project/trunk svn+ssh://host.example.com/repos/project/branches/NAME_OF_BRANCH -m "Creating a branch of project"
# Make a commit that explains the change that is going to happen
# Change to the branch that tracks the remote repo, and fetch the changes
$ git checkout myBranch
$ git svn rebase
# The folder should be empty at this point
# Upload the local changes to the trunk of the remote repo
$ git merge integrationBranch
# ¿rewrite the history?
# Upload it
$ git svn dcommit
Я не могу найти лучшего объяснения , но я думаю, что git svn dcommit использует git-svn-id последнего коммита для фигуры, который является URL для нажатия, так что я думаю, что в какой-то момент я должен переписать историю, но я не знаю как.
Также, если кто-то может предоставить способ сделать тест до того, как загрузить его, это будет здорово.