2010-02-11 62 views
1

我一直在使用Subversion來存儲我的Visual Studio解決方案。到目前爲止,我一直將整個解決方案存儲在一箇中繼文件夾中,並使用單個標籤文件夾來存儲整個解決方案的修訂版。如何使用單個SVN存儲庫跟蹤Visual Studio解決方案中每個項目的版本?

\trunk\ 
\tags\1.0\ 
\tags\1.0\ 
\tags\3.0\ 

我的VS解決方案迄今通常只包含一個項目,如果它們包含一個以上的項目,它仍然沒有太大的不止一個。當我完成「官方」版本時,無論實際更改哪個項目,我都一直在創建整個解決方案的標籤。

但是現在我正在研究一個包含很多項目的解決方案,我想我應該開始分別跟蹤每個項目的版本。在SVN存儲庫中設置文件夾來執行此操作的首選方式是什麼?我見過這樣的例子。

\project1\trunk\ 
\project1\tags\1.0\ 
\project1\tags\2.0\ 
\project1\tags\3.0\ 
\project2\trunk\ 
\project2\tags\1.1\ 
\project1\tags\2.2\ 

我在哪裏放解決方案(* .sln)文件?我不太喜歡這個設置,因爲我沒有看到任何簡單的方法來導出最新的工作解決方案和所有的項目,而不是以我的工作副本中的\ trunk \文件夾結尾,或單獨導出每個項目,這看起來像一個疼痛。

回答

0

你會做這樣的事情:

// Solution file and all projects here in trunk. 
\world-domination\trunk\ 
\world-domination\trunk\volcano-lair   // <-- This is a sub-project. 
\world-domination\trunk\airborne-virus  // <-- This is a sub-project. 
\world-domination\trunk\orbital-space-station // <-- This is a sub-project. 
// ... 

// Tags are named after the sub-project... 
\world-domination\tags\volcano-lair-1.7.4 
\world-domination\tags\airborne-virus-3.6 
\world-domination\tags\orbital-space-station-5.2 

// ... or the whole system. 
\world-domination\tags\1.0-release 

// But in either case they are snapshots of trunk. 
+0

所以是'\世界統治\標籤\火山巢穴 - 1.7.4'一個的'\世界統治\幹線\火山巢穴快照\'還是整個'\ world-domination \ trunk \'? – 2010-02-11 05:33:02

+0

這是整個\世界統治\後備箱。請勿拍攝小於\ trunk的任何快照,因爲Subversion無法輕易告訴快照實際上是_of_。標籤本質上只是一個指向特定狀態的指針,所以在現代版本的'svn'中,這比複製文件本身佔用的空間要少得多。 – 2010-02-11 14:07:24

相關問題