2012-03-29 68 views
2

我正在使用MSBuild社區任務項目中的svncommit任務。不幸的是我有一個相當大的一堆文件提交&它失敗,此錯誤:svncommit msbuild任務失敗,因爲命令行太長

The command-line for the "SvnCommit" task is too long. Command-lines longer than 32000 characters are likely to fail. Try reducing the length of the command-line by breaking down the call to "SvnCommit" into multiple calls with fewer parameters per call.

我試過只是指着父文件夾的Targets參數,但它似乎想要的文件。有什麼辦法可以告訴它只提交一個文件夾中的所有未決文件?

回答

2

其實這個bug是resgen.exe特有的。在這種情況下,這只是因爲您使用的任務是將參數直接傳遞給.exe,而不是使用響應文件。對於一個進程,Windows不會接受超過32KB的參數。這就是運送MSBuild任務總是使用響應文件的原因。

(在提到的錯誤的情況下,他們使用3.5 resgen不支持他們,並試圖通過反覆調用它的一部分文件來解決這個問題。不幸的是,數學是錯誤的。 )

您需要或者要求修復任務以使用響應文件,或者縮短您使用的文件的路徑,或許將它們移近磁盤根目錄,或者使用「SUBST」。

Dan(MSbuild dev)

相關問題