簡體   English   中英

如果項目沒有改變,如何在 tfs 上檢測

[英]How detect on tfs if project doesn't change

我有本地 TFS2012。 我如何檢測項目是否有任何更改? 我需要這個變量在 powershell 腳本中決定:不部署包。

如果您想查看任何特定文件是否已更改,您可以查看特定文件夾的歷史記錄並查看變更集上的日期。 這也可以使用 TFS API 以編程方式完成。

以編程方式,您可以使用 tf.exe 獲取項目根目錄的歷史記錄:

tf history . /stopafter:1 /format:brief /noprompt

注意: ' . ' 只是使用映射到 TFS 位置的當前位置,您可能會使用$/Some/branch/location而不是 ' . '

需要解析輸出以獲取日期字段

Changeset Change                     User              Date       Comment
--------- -------------------------- ----------------- ---------- -------------
375564    merge                      developer    (... 8/24/2010  Merge comment

您可以通過運行 tf history /?

另一種方法是嘗試獲取最新信息,如果您得到任何信息,則有變化:

tf get . /preview /noprompt /recursive

返回:

Getting somefile.cpp
Getting someotherfile.cs
:
:

我只為更改的項目生成 nuget 包,所以我需要找出更改的文件。 擁有更改的文件后,您可以搜索包含(或正在)這些更改項(文件/文件夾)的項目:

. "$tf" 差異。 /noprompt /format:brief /version:D"$($lastBuildstartTime.ToString())"~W /recursive |? {$_ -like " only " -or $_ -like " different "}

希望有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM