воскресенье, 22 февраля 2009 г.

Svn backup via PowerShell

На днях все же дошли руки посмотреть на PowerShell. Поднял себе локальный svn server, дабы с комфортом заниматься "домашними" проектами. Встала задачка бэкапа... Получилось довольно деревянно ) Первый опыт с PowerShell

if(!(test-path z:\Svn_Backup)){mkdir z:\Svn_Backup}
cd ~/
svnadmin dump svn_repository > svn_dump
$path = "z:\Svn_Backup\"+(Get-Date).ToString("ddMMyyyy_hhmmss")+".dump.zip"
cd "c:\Program Files\7-zip"
.\7z.exe a -psvnbackup31337 ((gi ~/).FullName + "\svn_dump.zip") ((gi ~/).FullName + "\svn_dump")
cd ~/
mv svn_dump.zip $path
rm svn_dump

Z:\ - это мой NAS. сохраняем это все в фал формата ps1 и с помощью "Task Scheduler"'а ставим на 2 часа ночи каждого дня.
Вообще довольно удобная, гибкая система, хотя и весьма непривычно, к примеру на bash такое у меня бы заняло гораздо меньше времени...

1 комментарий:

Павел Култышев комментирует...

каждый день бекапит чтоль? а если ревизия не изменилась тож.. может, можно номер ревизии проверять?