Автоматически удалять метки Subversion по дате - PullRequest
0 голосов
/ 22 декабря 2009

Я создаю командный файл (в Windows Vista) для развертывания моего проекта с разработки на наш промежуточный сервер. Код, который у меня сейчас есть:

:: Copy files from development to staging
robocopy \\local\file\path \\staging\file\path /MIR /Z /XD .svn /NFL /NDL /XF *.cs *.sln *.csproj *.suo *.resx *.user *.sln.cache
:: Create a new SVN tag in the format 'Staging_vYYYY.MM.DD.HH.MM'
svn copy http://repo:8080/svn/project/trunk http://repo:8080/svn/project/tags/Staging_v%date:~-4,4%.%date:~-10,2%.%date:~-7,2%.%time:~-11,2%.%time:~-8,2% --username ##### --password ##### -m "Tag for newest version on staging" --force-log

Для каждого нажатия на staging / qa создается новый тег в subversion. Я хочу сохранить часть этой истории, но я также не хочу заглядывать в свой каталог тегов. В идеале я хотел бы, чтобы пакетный файл также удалял «старые» теги - скажем, старше месяца - чтобы не тратить пространство жесткого диска на ненужные резервные копии.

Есть ли способ сделать это? Есть ли намного лучший способ создать одношаговый процесс развертывания?

1 Ответ

2 голосов
/ 22 декабря 2009

Теги Subversion являются «мелкими» копиями; они ничего не делают, кроме как дают новое имя определенному состоянию хранилища. Они не стоят много места на диске вообще - конечно, не стоит полной проверки.

Тем не менее, вы можете удалить теги с помощью svn rm так же, как вы удалили бы любой другой SVN URL; Вы можете выбрать, что удалить, изучив содержимое svn info для каждого тега.

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