我正在使用Git
+ MSBuild
。我需要从中获取 Git Long Hash 编号,MSBuild
以便将构建与哈希编号联系起来(并找出构成该“修订”的文件)
我可以使用内置任务MSBuild
来获取哈希数吗?
任何帮助表示赞赏。谢谢。
我正在使用Git
+ MSBuild
。我需要从中获取 Git Long Hash 编号,MSBuild
以便将构建与哈希编号联系起来(并找出构成该“修订”的文件)
我可以使用内置任务MSBuild
来获取哈希数吗?
任何帮助表示赞赏。谢谢。
我建议将它作为 CI 服务器本身的属性传递,它的工作是处理 VCS,这样开发人员可以对不是 git repo 的普通文件夹使用相同的脚本,例如用于黑客攻击的愚蠢复制/粘贴从 CLI 提供它。也就是说,可能有适当的基于 api 的社区任务,但我是这样做的:
<Target Name="Foo">
<Exec Command="git rev-parse HEAD > head" />
<ReadLinesFromFile File="head">
<Output TaskParameter="Lines" PropertyName="Head" />
</ReadLinesFromFile>
<Delete Files="head" />
<Message Text="Head: $(Head)" />
</Target>
<Target Name="Bar">
<PropertyGroup>
<Head>$([System.IO.File]::ReadAllText(".git\refs\heads\master").Trim())</Head>
</PropertyGroup>
<Message Text="Head: $(Head)" />
</Target>