簡體   English   中英

TeamCity SVN結帳規則

[英]TeamCity SVN Checkout rules

我在SVN中具有以下結構

Code
|- DEV-BusinessLayer
|- DEV-DataModel
|- DEV-Engine
|- Dev-Main
    |- src
        |-BusinessLayer
        |-DataModel
        |-Engine
        |-Engine.sln
    |- lib

在構建解決方案文件之前,我需要SVN將DEV-Main中的Engine,BusinessLayer和Datamodel子目錄切換到DEV-ENgine,DEV-BusinessLayer和DEV-DataModel。 這個想法是,如果我切換了,那我就在開發分支上,如果不這樣做,那我就在主分支上。 請注意,只有一個解決方案文件。

我試圖在TeamCity中添加以下簽出規則,但是簽出的文件不是來自正確的分支(我登錄到teamcity服務器,獲取了文件並與我的手動簽出進行了比較)。 令人不安的是,它是正確的版本。 這些是我的結帳規則,應如何更改以確保正確結帳?

+:Code/DEV-BusinessLayer=>./src/BusinessLayer
+:Code/DEV-DataModel=>./src/DataModel
+:Code/DEV-Engine=>./src/Engine
+:Code/DEV-Main/src=>./src
+:Code/DEV-Main/lib=>./lib

這是我在生成日志中看到的內容,我懷疑src \\文件夾出現了多次。 DEV- *文件夾是否以某種方式被覆蓋?

[18:20:00][Updating sources] Removing C:\BuildAgent\work\6148493fca83a584
[18:20:00][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src\BusinessLayer
[18:20:00][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src\DataModel
[18:20:00][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src\Engine
[18:20:01][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\lib
[18:20:04][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src
[18:20:04][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src\Engine
[18:20:04][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src
[18:20:04][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src\BusinessLayer
[18:20:05][Updating sources] Updating C:\BuildAgent\work\6148493fca83a584\src

更新1: 文檔說:“對於每個文件,如果包含文件,則將應用最特定的規則,而不考慮規則的列出順序。” 因此,如果我整體說說DEV-Main / src,然后又指定src / Engine,第二個應該正確嗎?

更新2:SVN外部對象是否引用這種替換目錄? 我應該設置這些文件夾的屬性以使其成為SVN外部對象嗎?

我終於明白了。 訣竅是簡單地(明確地)從另一個svn位置排除要替換的目錄。 所以我的結帳規則變成了:

+:Code/DEV-Main/src=>./src
+:Code/DEV-Main/lib=>./lib

-:Code/DEV-Main/src/BusinessLayer
-:Code/DEV-Main/src/DataModel
-:Code/DEV-Main/src/Engine

+:Code/DEV-BusinessLayer=>./src/BusinessLayer
+:Code/DEV-DataModel=>./src/DataModel
+:Code/DEV-Engine=>./src/Engine

我相信只有當您明確指定排除規則時,“ 如果文件被包括在內,無論列出的順序是什么順序,最具體的規則都將適用於每個文件。插入 。請注意,一旦添加了排除項規則,您不能使用代理屬性簽出。 使用“在服務器上自動”

暫無
暫無

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

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