git - TFS 构建定义关联的提交

标签 git msbuild octopus-deploy

谁能帮我从 TFS 2013 中获取与我当前正在创建的构建关联的 git 提交列表?

目前我在做

  • 构建我的 Azure 云服务
  • 使用msbuild任务获取版本号
  • 更新我的 nuspec 中的版本号
  • 使用nuget.exe打包成一个nuget包
  • 使用nuget.exe推送到 Octopus 服务器
  • 使用 octo.exe 创建一个版本并将其部署到暂存区

我还想做的是将已附加到 TFS 中的构建定义摘要页面的提交列表添加到我的 nuspec 的发行说明部分,以便它包含在 octopus 版本中。

有人指出我正确的方向吗?

谢谢!

编辑

那么让我们稍微调整一下这个问题,有谁知道如何获取与给定构建定义的最后一个构建关联的 GiT 提交?它必须存储在 TFS 中的某个地方,因为这必须是它用来生成列表的方法。

如果我能捕获它,那么我就可以跑

git log <last commit>^..HEAD --format="%ci - %cn - [%h](<path to my TFS>/commit/%H) %s%n" > rn.txt

这将允许我将我的 octo create-release 命令更改为

octo create-release --server=<server> --version=<version> --project=<proj> --apikey=<key> --releasenotefiles=rn.txt

要开心:-)

编辑 2 我使用的是 TFS 而不是 VSO,所以我无法访问 REST API

最佳答案

所以我可能被否决了,因为我可以使用 git 来完成这一切,但是指出这一点的评论会很好。

无论如何,

因为我是 git 的新手,所以我错过了一个事实,我可以创建一个标签并使用它来代替提交 ID,然后运行到 HEAD 版本以获取它们之间的所有提交

git log <last tag>..HEAD --format="%ci - %cn - [%h](<path to my TFS>/commit/%H) %s%n" > rn.txt

非常适合我的目的。

关于git - TFS 构建定义关联的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27081857/

相关文章:

git - 在 AWS 上设置远程 git 存储库并从 Windows 推送

svn - TeamCity SVN 提交消息

continuous-integration - 八达通部署在同一台机器上

linux - 如何方便地在两个git存储库之间同步文件

git - 如何检查 git merge 问题是否已修复?

python - Git 不跟踪 virtualenv 中的更改

tfs - 如何为自定义 MSBuild 任务设置 "Version control path to custom assemblies"

Azure 云服务与现有 ccproj 配置文件持续集成

msbuild - 输出标签 - TaskParameter 和 PropertyName,ItemName - 这两个包括什么?

powershell - 八达通部署缓存