我正在编写一个脚本,只有在源代码发生变化时才会运行构建.我需要知道自上次构建以来是否有变化.这曾经起作用,因为文件夹不会被删除,因此很容易确定是否有更改,但现在每次运行构建时都会删除所有内容.我想过使用TFS TF历史命令来查询最后一个变更集或最后两个变更集,但是在解析输出中的变更集编号时遇到了问题.我还考虑过使用changeset命令.是否有可用于回答问题的命令行参数,自日期或变更集编号以来是否有变化?
小智 6
对于没有本地工作空间的最新变更集编号,请使用以下命令:
tf history /collection:"http://server:8080/tfs/Collection" "$/Project" /recursive /stopafter:1 /noprompt /login:domain\user,password
Run Code Online (Sandbox Code Playgroud)
正如 Andrew 提到的,TFS 具有内置的持续集成功能。但是,是的,查询自某个点以来的变更集很容易,无论是日期还是变更集。您想要查看该变更集和最新变更集之间的历史记录:
tf history <folder> /version:C<changeset>~T /noprompt /recursive
Run Code Online (Sandbox Code Playgroud)
如果唯一的行输出是您查询的变更集,那么显然自该签入以来没有发生任何更改。否则,您将看到额外的变更集,每行一个。