Внесите изменения git-svn в репозиторий SVN - PullRequest
0 голосов
/ 20 июня 2011

у нас есть центральное репо SVN в нашей компании. Я использую git-svn на своем ноутбуке, чтобы иметь возможность использовать репо, когда я не подключен к сети компании. Теперь я был в командировке 3 недели и много сделал для своего местного репозитория Git. Также было много коммитов в репозитории SVN. Когда я пытаюсь «SVN Rebase», мне приходится редактировать конфликты в каждом из моих наборов изменений Git. Я хотел бы просто зафиксировать все свои локальные изменения сразу, а затем редактировать конфликты только один раз.

Я довольно новичок в Git, так что я не знаю, как это делается правильно и является ли это лучшим способом. Я использую TortoiseGit в Windows, поэтому до сих пор меня не волновала командная строка.

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 20 июня 2011

Как только вы пройдете разрешение конфликтов в git-svn rebase, как только вы окажетесь в новом дереве с новыми коммитами, которые включают ваши разрешения.Будущее git-svn rebase не столкнется с такими же проблемами (в отличие от повторных слияний, где rerere пригодится).

Если под «зафиксировать все мои локальные изменения сразу» вы подразумеваете, что хотите сброситьвсе ваши коммиты в один коммит в git (и позже SVN), тогда вы можете использовать git rebase -i, чтобы "раздавить" все ваши коммиты в один коммит.Вы не должны включать какие-либо ревизии, которые уже были отправлены в SVN с dcommit в этом rebase -i, потому что вы переписываете историю.Вам все равно придется разрешать конфликты, когда вы git-svn rebase точно так же, как если бы вы использовали только SVN и сделали svn update.

...