Удаление ревизии из TortoiseSVN - PullRequest
6 голосов
/ 28 января 2010

Когда я фиксирую код в репозитории Subversion моей компании, у меня часто есть несколько файлов, которые необходимо зарегистрировать. Часто я хочу регистрировать их (фиксировать) отдельно, потому что мне нравится группировать подобные файлы вместе.

По умолчанию TortoiseSVN открывает диалоговое окно «Зафиксировать» со всеми выбранными файлами. Если я хочу зафиксировать только некоторые из этих файлов, я должен «отменить выбор» всех тех файлов, которые я не хочу фиксировать, добавить свои комментарии / заметки и затем выполнить коммит.

Время от времени я случайно забываю «отменить выбор всего» и завершить фиксацию всех файлов. Если бы я не собирался фиксировать все файлы, я хотел бы подумать, что смогу зайти, удалить ревизию и начать все сначала. Имейте в виду, я не хочу удалять файлы из ревизии, я просто хочу, чтобы эта ревизия не существовала.

Допустим, случайная фиксация привела к проверке 12 файлов, а ревизия была ревизией с номером 9651. Если бы я хотел проверить 2 файла, а не 12, я бы хотел удалить эту ревизию, чтобы я мог проверить 2 файлы правильно.

Из того, что я вижу, есть один вариант: «Отменить изменения от версии 9651». Но что он делает, так это сохраняет 9651 в хранилище и откатывает затронутый код до его предыдущего состояния. По сути, это означает, что вы потеряете только что сделанные изменения. Затем вы можете «Обновить до версии 9651» и затем повторить процесс фиксации.

Но есть ли другой способ сделать это, способ удалить ревизию из хранилища И избежать необходимости откатить уязвимый код?

Ответы [ 3 ]

4 голосов
/ 28 января 2010

Видимо, это не реализовано: http://blog.projectnibble.org/2008/03/01/subversion-obliterate-the-forgotten-feature/

Есть обходной путь, см. Статью. Я думаю Вам нужен доступ к серверу.

1 голос
/ 28 января 2010

ИМХО, лучший способ справиться с этим - избегать его. Лучше вы привыкнете работать только с одной вещью одновременно, компилировать ее, тестировать / отлаживать, а когда она работает, сразу же вносить все изменения Таким образом, вы можете проверить все измененные файлы, и в большинстве случаев приходится вводить только один комментарий в SVN. Не начинайте со следующей микро-функции, пока вы не совершите свою работу, когда это возможно. Передача только порций увеличит вероятность того, что кто-то еще получит «разрыв сборки» после обновления, так что не делайте этого!

0 голосов
/ 29 января 2010

Я рекомендую использовать наборы изменений, чтобы сначала сгруппировать измененные файлы вместе, а затем зафиксировать их (по крайней мере, при использовании SmartSVN ). К сожалению, это не работает, если файлы были изменены таким образом, что некоторые строки должны быть сохранены в этом changeset / commit, другие строки в другой.

...