Отменить SVN-изменения 1276-1284 и 1286-1294 - PullRequest
4 голосов
/ 20 мая 2010

Прямо сейчас я нахожусь на версии 1307. Я хочу отменить изменения наборов изменений 1276-1284 и 1286-1294. По сути, это все наборы изменений 1276-1294, за исключением 1285. Я также хотел бы сохранить свои последние изменения, которые вряд ли будут конфликтовать с изменениями, которые я хочу отменить.

Кто-нибудь может дать мне несколько советов?

Ответы [ 2 ]

3 голосов
/ 20 мая 2010

В общих чертах, вы можете применить обратный дифференциал для каждого диапазона, который вы хотите отменить. Например:

svn diff -r1276:1285 > first.patch

для создания различий (обратите внимание, что конечная версия на один номер ревизии больше , чем последняя, ​​которую вы хотите отменить), затем

patch -R < first.patch

Переключатель -R указывает patch применить патч в обратном порядке. svn diff говорит вам, что вы сделали, поэтому patch -R отменяет это. Конечно, у вас могут быть конфликты, которые вы должны разрешить вручную.

1 голос
/ 20 мая 2010

Я думаю, что вы можете просто сделать пару команд слияния с обратными номерами ревизий. Попробуйте это:

svn merge -r 1294:1285
svn merge -r 1284:1275

Я бы порекомендовал вам зафиксировать текущие изменения, прежде чем пытаться это сделать, или, по крайней мере, создать файл патча для их резервного копирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...