Я сейчас использую git-svn со следующим рабочим процессом
git clone <SVN TRUNK URL> #done once
впоследствии, когда я работаю над функцией
git branch featureZ
git checkout featureZ
#make edits for featureZ
git commit
git checkout master
git svn rebase # fetch changes from server
git checkout featureZ #go back to branch
#git merge master
git rebase master #get the changes from SVN->master onto the branch now. Optional if I want the branch to be current. (EDITED: Got from the answer given below)
#make edits for featureZ
git commit #featureZ completed
git checkout master
git merge featureZ #getting featureZ onto master. Prepare to send to SVN
git svn dcommit #push featureZ back to SVN
Теперь некоторые моменты, когда я делаю git merge feature на master, все отдельные коммиты в ветви featureZ объединяются в один, что мне подходит.
Сообщение фиксации заменяется на «объединено с featureZ». Это можно исправить с помощью merge fmt msg .
Теперь мой вопрос
Есть ли что-то, что может пойти не так с этим рабочим процессом или о котором нужно позаботиться. Я прочитал в git-svn manual , что объединение не должно выполняться при работе с git svn. Является ли то, что я делаю в моем рабочем процессе, к чему они относятся? если да, то какую проблему это вызовет? Во-первых, я не хочу делать что-то, что мешает магистрали SVN.