PowerShell スクリプトを使用して、複数の Subversion 作業コピーを更新するという朝の儀式を自動化しようとしています。svn の更新は正常に機能していますが、 SvnUpdateResultにフックして、変更や競合を表示するとよいでしょう。
更新結果の出力パラメーターを指定するところまでは行きましたが、あいまいなオーバーロードの例外を克服する方法がわかりませんか? 私はすでにパラメータの型を指定しています:
try {
Add-Type -Path "C:\Program Files\SharpSVN\SharpSvn.dll"
}
catch [System.BadImageFormatException] {
Write-Host "LFMF: You're probably using 32bit SharpSVN.dll in 64bit powershell ;-)"
}
$paths = @("Project-Trunk", "Project-Branch");
$currentPath = (Get-Location).Path
$svnClient = New-Object SharpSvn.SvnClient
foreach ($path in $paths) {
Write-Host "Updating" $path
$svnLocalPath = Join-Path $currentPath $path;
# Throws: Multiple ambiguous overloads found for "Update" and the argument count: "2".
$svnClient.Update([string]$svnLocalPath, [ref][SharpSvn.SvnUpdateResult]$result)
}
svn client または tortoiseproc を使用できたことに感謝していますが、powershell についてもっと学ぼうとしています。