2008-09-22 164 views
4

這裏只是一個小SVN「問題」。SVN版本控制

我建立我自己的SVN服務器http://www.codinghorror.com/blog/archives/001093.html

現在,我做了一個代表在我所有的項目都會去。

現在,我在一個名爲「Projects」的文件夾中檢查了代表。

現在,如果我做一個項目,並檢查它,該項目是修訂1.如果我做第二個項目,並在檢查,該項目是在修訂2。因此,如果我做了更改項目1 ,該項目將在第3修訂版。

我真正想要的是每個項目都有自己的修訂方案。我該怎麼做呢?

回答

1

您需要在「Projects」文件夾中創建存儲庫,並在初始結帳時簽出「???/projects/repo1」..這將使工作副本在你的機器上保持分離,並且你將完全獨立地簽入/簽出。

+0

這是不正確的,問題是關於保持不同項目的修訂版分開,你的例子不會這樣做 – Palmin 2008-09-23 20:25:37

15

唯一的方法是讓每個項目都在一個完全獨立的存儲庫中。同一個存儲庫中的項目將始終顯示您在問題中提到的行爲。

From Here

不像其它版本控制系統,Subversion的版本號是針對整個目錄樹的,而不是單個文件。每個修訂號都會選擇整個樹,即某個確定的更改後的特定存儲庫狀態。

1

你必須爲每個項目創建一個單獨的存儲庫。這通常是一個好主意,所以沒有缺點:)

+0

我不同意沒有缺點。從http://svnbook.red-bean.com/en/1.0/ch05s04.html開始,您有重複的(或更多)維護工作,而且任何「共享」代碼難以維護。在選擇某種方式之前應該做一些思考。 – 2008-09-22 21:02:00

1

您能否描述爲什麼在多個項目中使用單個Subversion修訂版號對您而言是個問題?

在您的所有項目中使用單個存儲庫有一些合理的優勢。最大的問題是你可能更好地控制多個項目中的通用代碼之間的變化。

如果你現在有多個項目的單一遞增顛覆版本號的概念的問題,你有沒有考慮,你的分支項目之一的情況呢?(記住,一個正常的分支也將有一個全球遞增顛覆版本號)

這聽起來像你想使用的存儲庫版本號作爲構建的一部分或釋放多少? 如果是這種情況,也許你可以考慮爲你的項目實現一個不同的內部編號方案,然後可以將其與Subversion版本號相關聯。

這樣的關聯可以通過使用創建具有版本號的分支的約定並將該Subversion修訂放入分支的註釋中來進行。

一些方案在this中討論問題