Я взял приведенную выше информацию и создал Windows-файл .bat, чтобы показать, как это можно написать в сценарии.
Мое дополнение более подробно показывает, как вы работаете с ЛОКАЛЬНОЙ РАБОЧЕЙ КОПИЕЙ, а затем фиксируете данные в хранилище.
В приведенном ниже .bat-файле я добавляю статус svn.exe, чтобы показать, что произойдет, если вы совершите коммит, а затем PAUSE, чтобы дать вам последний шанс отключиться от X и не выполнить коммит.
Вот файл .bat
К вашему сведению, я использую svn.exe 1.6.15.
set __SVNClient="C:\Program Files (x86)\CollabNet\Subversion Client\svn.exe"
set __PreviousRevisionNumber=2594
set __CheckoutFolder=".\MyCheckoutFolderRevision%__PreviousRevisionNumber%"
RD %__CheckoutFolder% /Q /S
%__SVNClient% checkout "https://www.myrepository.com/MyProject/trunk" %__CheckoutFolder% --username %USERNAME%
CD %__CheckoutFolder%
%__SVNClient% merge --revision HEAD:%__PreviousRevisionNumber% "."
%__SVNClient% status "."
PAUSE
%__SVNClient% commit -m "Manual Change. Revision %__PreviousRevisionNumber% was pulled out of repository and then it was made the HEAD Revision." "." --username %USERNAME%
CD ..
set __CheckoutFolder=
set __PreviousRevisionNumber=
set __SVNClient=
Этот сайт (и название раздела) дает немного больше объяснений:
http://durak.org/sean/pubs/software/version-control-with-subversion-1.6/svn.branchmerge.basicmerging.html
(Поиск «Отмена изменений» в качестве заголовка раздела)