簡體   English   中英

TeamCity分支機構概念可以應用於帶有構建鏈的Subversion嗎?

[英]Can TeamCity branches concept be applied to Subversion with Build Chains?

我們通過使用TeamCity的分支概念在顛覆中取得了一些成功,方法是指向此處提到的tags https://stackoverflow.com/a/6875151/2416394,盡管我們知道這是git等DVCS主要基礎。

通過提供項目參數%Tag%已成為結帳規則的一部分),我們從鏈接擴展了答案。 因此,我們的SVN根目錄為http://myserver/svn/tags/ ,結帳規則為+:%Tag%=>. 每次結帳時,都會將新標簽添加為“分支”並構建源,這很好

現在我們開始嘗試鏈式構建。 假設我有這些配置:

  • 源構建
  • 安裝程序精簡版
  • 完全安裝

兩個安裝程序都需要源,都具有快照和工件依賴性。 主要問題是: Tag是Source Build的必需參數,而不是其他參數,我不想將所有屬性復制到每個配置。 因此,每當我觸發任何安裝程序時,都將%Tag%設置為空來構建源。

然后,這會生成帶有空標記的http://myserver/svn/tags/%Tag% 這會在一個工作空間中檢出“默認”分支中的所有標簽,由於結構不同並且反而變大了,該工作空間隨后無法構建。

由於Installer-Lite和Installer-Full在Source Build上具有快照依賴性,因此它們可以使用%dep.SourceBuild.Tag% (其中SourceBuild是Source Build配置的ID)引用其%Tag%變量。

因此,您可以執行以下任一操作:

  • 選項1:Installer-Lite中的簽出規則變為+:%dep.SourceBuild.Tag%=>.
    • 這比較簡短,但較不清晰
  • 選項2:Installer-Lite擁有自己的%Tag%變量,其值設置為%dep.SourceBuild.Tag% ,然后設置與Source Build相同的簽出規則,即+:%Tag%=>.
    • 需要設置更多內容,但結帳規則是對稱的,因此對於維護人員而言並不奇怪

暫無
暫無

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

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