有沒有辦法跟蹤TFS 2010中構建定義的更改?請在Visual Studio中轉到「團隊資源管理器> ProjectName>構建」以查看我在說什麼。您需要訪問TFS服務器以查看我所指的內容。現在,當您進入團隊資源管理器> ProjectName> Builds時,您可以創建一個構建定義來編譯TFS上的csproj或sln文件。我想知道的是,如果對現有的定義進行任何更改或添加新的定義,是否有辦法對這些定義進行版本化?TFS 2010跟蹤構建定義更改?
1
A
回答
1
無法跟蹤對構建定義的更改。如果你有多個分支/版本需要構建,我建議創建一個不同的構建定義。
當您對構建進行排隊時,可以設置一些屬性,因此如果您想要一個不會將其輸出複製到放置服務器的構建,您可以擁有該構建,但如果要部署某個版本可以在排隊構建時設置放置文件夾。
在TFS Power Toys中,您會看到一個「克隆構建定義」上下文菜單,以便您可以更容易地複製構建,只要您有許多要保持相似的設置即可。
0
有一種方法。有了這個工具在vsgallery:
http://visualstudiogallery.msdn.microsoft.com/ec36f618-d122-48a3-8236-7d9cd19791ee
我tfs2012使用它。我不知道它是否適用於tfs2010
2
我遇到了同樣的問題,當團隊中有人修改了構建定義時,我試圖找到所有可用的選項,但沒有發現除Xeam Build Definition Extension
之外的任何其他內容,僅支持VS 2012以後並有一些缺點,所以最終得到即時的工作,我寫了一個小應用程序,返回Last Modified By
和Last Modified Date
和完整的Build Definition
細節,你可以與以前的版本比較,以找到發生了什麼變化。
進口Microsoft.TeamFoundation.Build.Client
Private Const RootFolder As String = "C:\TFS Utility Reports\"
''' <summary>
''' To Get the Build Definition Details
''' </summary>
''' <param name="teamProjectName"></param>
''' <param name="buildDefinitionName"></param>
''' <returns></returns>
''' <remarks></remarks>
Public Shared Function GetBuildDefinitionDetails(teamProjectName As String, buildDefinitionName As String) As String
Dim buildDefinitionSummary As String = Nothing
Dim buildDefinitionDetails As String = Nothing
Dim reportPath As String = RootFolder & "Build Definitions\" & buildDefinitionName
Dim buildDefinitionDetailsFileName As String = reportPath & "\" & buildDefinitionName & "_" & Date.Now.ToString(CultureInfo.CurrentCulture).Replace("/", String.Empty).Replace(":", String.Empty) & ".txt"
Dim buildService = CType(TfsTeamProjectCollection.GetService(GetType(IBuildServer)), IBuildServer)
Dim buildDefinition As IBuildDefinition = buildService.GetBuildDefinition(teamProjectName, buildDefinitionName)
If buildDefinition IsNot Nothing Then
GetAllBuildDefinitions(teamProjectName)
buildDefinitionSummary = buildDefinition.ToString()
UpdateFile(buildDefinitionSummary, buildDefinitionDetailsFileName, reportPath)
If buildDefinition.Workspace IsNot Nothing Then
buildDefinitionDetails = String.Format(CultureInfo.CurrentCulture, "Last Modified By: {0}, Last Modified Date: {1}",
buildDefinition.Workspace.LastModifiedBy,
buildDefinition.Workspace.LastModifiedDate)
End If
End If
Return buildDefinitionDetails
End Function
''' <summary>
''' Generate Log/Summary/Report
''' </summary>
''' <param name="lineToWrite"></param>
''' <param name="filePath"></param>
''' <param name="folderPath"></param>
''' <remarks></remarks>
Private Shared Sub UpdateFile(ByVal lineToWrite As String, ByVal filePath As String, ByVal folderPath As String)
Dim strFileName As String = String.Empty
lineToWrite = lineToWrite.Trim()
strFileName = filePath
Dim di As IO.DirectoryInfo = New IO.DirectoryInfo(folderPath)
If Not di.Exists Then
di.Create()
End If
Dim streamWriter As New StreamWriter(strFileName, True, System.Text.Encoding.ASCII)
Try
Dim strOutput As String
strOutput = lineToWrite.ToString
streamWriter.WriteLine(strOutput)
Catch ex As Exception
Throw
Finally
streamWriter.Dispose()
End Try
End Sub
相關問題
- 1. TFS 2010在TFS 2010中構建定義
- 2. TFS構建腳本跟蹤
- 3. 在TFS 2010中編輯構建定義
- 4. 如何複製TFS 2010構建定義?
- 5. 生成tfs 2010的構建定義
- 6. 自定義構建摘要TFS 2010
- 7. 導出TFS 2010構建定義
- 8. 更改跟蹤結構
- 9. 構建自定義印象跟蹤器
- 10. Jenkins跟蹤構建的自定義值
- 11. 在TFS 2012中實現更改跟蹤
- 12. Tfs構建定義
- 13. 使用TFS 2010運行TFS 2008構建定義
- 14. TFS 2010構建:Microsoft.TeamFoundation.Build.Workflow.Activities.SyncWorkspace
- 15. 跟蹤更改
- 16. 跟蹤更改
- 17. 跟蹤更改
- 18. 跟蹤更改
- 19. 創建TFS 2010構建定義需要幫助
- 20. TFS 2010 Build定義
- 21. 跟蹤MySQL架構和程序更改
- 22. TFS構建定義問題
- 23. LINQ跟蹤更改
- 24. 定製TFS 2010構建過程
- 25. TFS 2010定製構建步驟
- 26. 基於構建定義更改配置TFS 2012
- 27. TFS 2010構建時機
- 28. TFS 2010構建服務
- 29. 將構建定義更改合併到TFS 2013中的構建模板中
- 30. 定義和跟蹤
戴夫您好,感謝您的回覆。我確實安裝了TFS Power工具。但是這並沒有解決我追蹤構建定義隨時間變化的目的。 – Kalyan
你真的不能。如果你真的想,你可以定期將定義過程參數作爲XML導出,或者類似的東西,但是根本沒有任何內容。 – DaveShaw