2012-07-16 93 views
2

在工作中,我們使用SVN和trunk包含不同開發人員使用的MANY文件夾。 我工作在我們產品的C++端,經常因爲各種原因需要簽出單獨的代碼副本,但這需要花費大量的時間。 問題是trunk包含很多我不需要的東西,我的C++部分(它包含很多與iPhone相關的gui相關項目,我不需要Android)。那麼,是否有可能在svn中籤出某種只檢出特定文件夾的簽出?svn:如何加快結帳(在svn選擇結帳)?

我知道我可以檢查出來,然後排除一些文件夾,但我可以在開始時做到這一點,這樣我就不需要檢查所有內容了嗎?

是否有一些特定於svn的方式來製作一些checkout標籤,例如,我可以爲C++,android或iPhone開發者分別設置快捷方式,以便它們不需要檢出所有內容並且不需要有一些神祕的簽出字符串只簽出一些選定的文件夾?

(SVN變化,重新排列結構不是期權)

+0

我敢肯定你可以使用svn來簽出單個文件。您是使用IDE來管理結賬過程,還是使用命令行或專用工具進行結賬?哪一個? – Wug 2012-07-16 21:24:12

+0

我使用tortoisesvn。當然,我可以結帳個人檔案。我需要檢出整個樹(數千個文件),但我想排除我不使用的部分(也包括數千個文件)。我想我需要使用sparce結帳。 – Pavel 2012-07-16 21:36:44

回答

0

您可以隨時手動籤需要子項目。如果您需要經常這樣做,您可以通過svn:externals創建您自己的「超級項目」,其中包含所有需要的子項目。之後,您可以使用一個命令檢出所有內容。

+0

這可能會起作用。唯一的問題是我需要排除一些頂級目錄以及其中的一些部分。 – Pavel 2012-07-16 21:38:44

+0

看起來像你SVN存儲庫沒有組織良好... – qehgt 2012-07-16 21:40:39

+0

是的,它沒有很好的組織,但會保持那樣。我在問題中提到過它。 – Pavel 2012-07-17 20:11:33

0

TortoiseSVN具有您需要的完全功能。在這裏看起來如何(抱歉模糊)。

首先,你選擇「選擇項...」在這裏: enter image description here

然後在打開的樹中選擇你想要什麼: enter image description here

的「忽略外部」是獨立於這個過程中,你可能會也可能不會選擇它。

請注意,如果稍後您執行「更新」,則您的初始選擇將被忽略,並且更新會拉取所有內容。

並回答你的最後一部分,如果你需要任何奇特的結帳,恐怕腳本是唯一的選擇。