爲了保持我的SVN幹線清潔並準備部署,我一直在使用the following source control model。對於不耐煩的人來說,基本的概念是你創建開發分支去做實際的開發,並且隨時保持乾淨並準備好部署(幹線中沒有垃圾)。TeamCity項目和多個SVN分支
除此之外,我正在配置TeamCity進行持續集成。在TeamCity中,我希望確保所有開發分支以及部署就緒分支(在我的情況下爲trunk)正確構建並通過所有單元測試。
這可能是一個愚蠢的問題,但不是過於熟悉TeamCity,我應該爲每個分支創建一個新的TeamCity項目嗎?特別是,部署就緒的分支比開發分支有一些額外的規則。例如,版本應保存在文件系統上的版本化目錄中(例如,C:\ Projects \ MyProject \ 1.0.187 ...,C:\ Projects \ MyProject \ 1.0.188 ...),以便輕鬆訪問二進制文件,在任何時間點。另一方面,在開發分支中保存程序集的版本化拷貝是不必要的,並且會浪費硬盤空間。
在TeamCity中,我希望每個軟件項目只能看到一個項目。換句話說,如果我的公司正在開發X個開發項目,我寧願看到該項目只列出一次,而不是X * 2(假設每個項目只有兩個分支)。