Command line to update SVN folders
command-line, powershell, svn
Solution
It might be easier in PowerShell:
Set-Alias tsvn 'C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe'
dir C:\workspace | %{ tsvn /command:update /path:"$($_.FullName)" /closeonend:2 }
Or if you want to specify certain project directories:
cd C:\workspace
$projects = 'Proj 1','Proj 2','Proj 3'
$projects | %{ tsvn /command:update /path:"$_" /closeonend:2 }
PowerShell scripts have a ps1 extension. You might also have to update the execution policy to allow scripts to run:
Set-ExecutionPolicy RemoteSigned
Problem
I have tried several things so far, but I haven't had much luck yet. I'm attempting to have a command line or PowerShell script that I can run once a day to make sure my numerous checked-out projects are up to date. I know I would be looping through the directory folders inside my workspace, but when setting the variables I haven't had any luck as it will error out. I am using TortoiseSVN, and Windows Vista. Here is what I have so far: ``` echo == Initiating system instance variables... echo. -- Setting the variables... :: Here you need to make some changes to suit your system. set SOURCE=C:\workspace\Project set SVN=C:\Program Files\TortoiseSVN\bin :: Unless you want to modify the script, this is enough. echo. %SOURCE% echo. %SVN% echo. ++ Done setting variables. echo. echo == Updating source from SVN echo. -- Running update... "%SVN%\TortoiseProc.exe" /command:update /path:"%SOURCE%" /closeonend:2 echo. ++ Done. echo. -- Cleaning up... set SOURCE= set SVN= echo. ++ Done. @echo off ```