Ich habe mit diesemSVN checkout Automatisierung Batch
echo.
echo. [ SVN Updater ]
setlocal enableDelayedExpansion
set SOURCE=E:\Svncheckout\
set SVN=C:\Program Files\TortoiseSVN\bin
set SVN_REPO_URL=https://SVNSERVERIP/svn/
set projects=project1/branches/hello1 project2/branches/hello2
set checkoutdir=project1 project2
echo.
SET PROJCOUNT=0
(for %%i in (%projects%) do (
echo. Checking out %SVN_REPO_URL%%%i from SVN...
"%SVN%\TortoiseProc.exe" /command:checkout /path:"%SOURCE%%checkoutdir[0]%" /url:"%SVN_REPO_URL%%%i" /closeonend:2
PROJCOUNT+=1;
)
)
echo.
echo. Operation complete.
kommen Ich mag würde die checkoutdir
Liste Array mit jedem Verzeichnisnamen iterieren. Ich stecke hier fest. Ich bin Neuling für die Batch-Programmierung. Freundlicherweise helfen
Methode 2:
echo.
echo. [ SVN Updater ]
setlocal enableDelayedExpansion
set SOURCE=E:\Svncheckout\21MAY2016\
set SVN=C:\Program Files\TortoiseSVN\bin
set SVN_REPO_URL=https://192.168.1.35:8443/svn/
set projects=JPO/JPOMobile/branches/2016-05-18 JPO/JPOWEB/branches/20160518
set checkoutdir=JPOMobile JPOWEB
set /A CHECKOUTCOUNT=1
set /A PROJCOUNT=0
(for %%i in (%projects%) do (
SET /A "PROJCOUNT+=1"
(for %%a in (%checkoutdir%) do (
IF ("%PROJCOUNT%"=="%CHECKOUTCOUNT%") (
echo. Checking out %SVN_REPO_URL%%%i from SVN...
"%SVN%\TortoiseProc.exe" /command:checkout /path:"%SOURCE%%%a" /url:"%SVN_REPO_URL%%%i" /closeonend:2
SET /A "CHECKOUTCOUNT+=1"
)
))
))
echo.
echo. Operation complete.
In dem zweiten Verfahren wird es Fehler, Set/A PROJCOUNT = 0 in unerwarteter an diesem time.I denken, es gibt ein Problem in der Schleife
for
ist
Ich kann sehen, dass Sie wissen 'für %% i in (% projekte%) tun (rem einige Code hier ...)' Ansatz. Wenden Sie es wie folgt an: 'für %% G in (% checkoutdir%) tun Sie (rem %% ich loop hier)' aber verwenden Sie '%% ~ G' anstelle von%% checkoutdir [0]%'. Es gibt nichts wie _list array_ im Batch-Scripting: Es gibt nur _strings_ (oder _numbers_ somewhen). – JosefZ
@JosefZ Ich habe einen anderen Versuch aktualisiert. Kannst du mir helfen? – Keerthivasan
Warum Tortoise GUI verwenden? Für Interessierte können Sie auch direkt die SVN-Befehlszeile verwenden: "% SVN% \ svn.exe" checkout "% SVN_REPO_URL %% ~ 1" "% SOURCE %%% D" – AFract