0

AutoBuild.bat

@echo off
echo Setting the directory.....
set LocalPath="C:\Appli.Net\CPAMEMO52"
set SVNPath="svn://servername/MT5_2/trunk/"
echo Getting the latest source code
"C:\Program Files\TortoiseSVN\bin\svn.exe" checkout %SVNPath%/"CPA memotech Suite" %LocalPath%\CPA52
echo Getting the latest SQL
"C:\Program Files\TortoiseSVN\bin\svn.exe" checkout %SVNPath%/Sql %LocalPath%\CPA52SQL
echo Getting the latest Templates
"C:\Program Files\TortoiseSVN\bin\svn.exe" checkout %SVNPath%/Templates %LocalPath%\CPA52Templates
echo Starting Build...
"C:\WINDOWS\Microsoft.NET\Framework\v3.5\Msbuild.exe" "C:\Appli.Net\CPAMEMO52\CPA52\CPA memotech Suite.sln"
pause

私は毎日Autobuild.batファイルを使用してファイルを取得し、アプリケーションをビルドしています。
ただし、問題は、ローカルファイルのリビジョン番号SVNリポジトリのリビジョン番号が異なる場合、マージまたは脱退する代わりにファイルを置き換えることです。

4

2 に答える 2

2
@echo off
echo Setting the directory.....
set LocalPath="D:\Appli.Net\5.2"
set SVNPath="svn://servername/MT5_2/trunk/"

(dir /b /a "%LocalPath%" | findstr . ) > nul && (echo Getting the latest source code
"C:\Program Files\TortoiseSVN\bin\svn.exe" update %SVNPath%/"CPA memotech Suite" %LocalPath%\CPA52
echo Getting the latest SQL
"C:\Program Files\TortoiseSVN\bin\svn.exe" update %SVNPath%/Sql %LocalPath%\CPA52SQL
echo Getting the latest Templates
"C:\Program Files\TortoiseSVN\bin\svn.exe" update %SVNPath%/Templates %LocalPath%\CPA52Templates) || (echo Getting the latest source code
"C:\Program Files\TortoiseSVN\bin\svn.exe" checkout %SVNPath%/"CPA memotech Suite" %LocalPath%\CPA52
echo Getting the latest SQL
"C:\Program Files\TortoiseSVN\bin\svn.exe" checkout %SVNPath%/Sql %LocalPath%\CPA52SQL
echo Getting the latest Templates
"C:\Program Files\TortoiseSVN\bin\svn.exe" checkout %SVNPath%/Templates %LocalPath%\CPA52Templates)

echo Starting Build...
"C:\WINDOWS\Microsoft.NET\Framework\v3.5\Msbuild.exe" "D:\Appli.Net\5.2\CPA52\CPA memotech Suite.sln"
pause

私はバッチファイルを使用しています。他の条件では、彼が初めて実行している場合はチェックアウトされ、すでに存在している場合は更新されます。

于 2012-11-07T05:25:30.060 に答える
2

リポジトリ UPDATEのたびにではなく、コマンドを使用することをお勧めします。CHECKOUT

Checkout最初のチェックアウトのみを対象としています。

于 2012-10-31T05:08:29.487 に答える