0

我正在使用 MSBuildCommunityTasks 在构建时检索 git 提交哈希:

<GitVersion LocalPath="$(MSBuildProjectDirectory)">
  <Output TaskParameter="CommitHash" PropertyName="GitRevision" />
</GitVersion>

MSBUILD 在我的本地计算机上按预期执行此任务,但在 Team Foundation Service 的 Hosted Build Controller 执行它时失败:

SalesApplication.Versioning.csproj (81): The "GitVersion" task failed unexpectedly.
System.Exception: Could not find git.exe.  Looked in PATH locations and various common folders inside Program Files.

显然,根据已安装软件包的列表,TFService 使用的托管构建控制器无法直接访问 git.exe:http: //listofsoftwareontfshostedbuildserver.azurewebsites.net/

MSBUILD 如何检索托管构建控制器上的 git 提交信息?

4

2 回答 2

2

实际上有帮助。我基本上不得不使用选项重新安装 Git

从 Windows 命令提示符使用 Git

在此处输入图像描述

于 2015-11-03T15:15:05.263 回答
1

这是由于 MSBuild 未能找到 git.exe 位置(即 C:\Program Files\Git\bin)。您可以检查您的 java.library.path(管理 Jenkins > 系统信息)是否包含 git 路径,如果没有,您需要将 git 位置添加到您的 Path 变量中,然后重新启动服务器以使其生效。希望这有帮助。

**在 Windows 环境中,java.library.path 与 PATH 变量相同。

于 2015-12-16T16:17:18.277 回答