2

我正在使用svncommitMSBuild 社区任务项目中的任务。不幸的是,我有一大堆文件要提交,但由于以下错误而失败:

“SvnCommit”任务的命令行太长。超过 32000 个字符的命令行可能会失败。尝试通过将对“SvnCommit”的调用分解为多个调用来减少命令行的长度,每次调用的参数更少。

我尝试将参数指向Targets父文件夹,但它似乎想要文件。有什么办法可以告诉它只提交文件夹中的所有待处理文件?

4

1 回答 1

2

实际上,提到的那个错误是 resgen.exe 特定的。在这种情况下,这仅仅是因为您正在使用的任务是按字面意思将参数传递给 .exe,而不是使用响应文件。Windows 不会接受超过 32KB 的进程参数。这就是交付 MSBuild 任务总是使用响应文件的原因。

(在提到的错误的情况下,他们使用的是不支持它们的 3.5 resgen,并试图通过使用文件的子集反复调用它来解决这个问题。不幸的是,数学是错误的。)

您需要要求修复任务以使用响应文件,或者缩短您正在使用的文件的路径,可能通过将它们移近磁盘根目录或使用“subst”。

丹(MSbuild 开发人员)

于 2012-04-01T19:46:04.897 回答