我有一个TFS 2013u4 Git构建定义,它在源设置中定义了存储库,默认存储库和CI监控存储库。使用其他地方描述的方法,我能够从我的自定义构建xaml中的构建定义中检索默认分支名称,但我需要找到一种方法来确定触发CI构建的分支的名称。
例如:
我的构建定义将BranchA列为默认值,并将BranchA,BranchB,BranchC和BranchD列为CI触发构建的受监视分支。
假设某人对BranchD进行了更改;此提交将依次触发此构建定义。在我的自定义构建XAML中,我如何确定它是BranchD上的一个提交,它触发了这个构建?
答案 0 :(得分:1)
IBuildDetail 对象中有一个名为 SourceGetVersion 的属性。当使用构建定义中定义的默认分支手动执行或触发构建定义时,此属性只返回' T'但如果构建定义是由对受监视分支的提交触发的,那么property设置为分支名称(加上一些其他小细节)。
我只是解析了这个属性的值,并且我能够确切地确定哪个分支触发了构建定义。
答案 1 :(得分:0)
不,现在无法通过Git构建定义实现。无法将CI触发器限制到repo中的特定文件夹。
UserVoice中有一个特色请求。你可以投票支持它。
允许GIT CI构建仅监视特定子目录中的更改 回购 https://visualstudio.uservoice.com/forums/330519-team-services/suggestions/5279254-allow-git-ci-builds-to-monitor-changes-only-in-a-s