我正在執行一些python腳本,全部使用相同(大)框架的部分。我使用這個框架的各種版本,全部在版本控制之下,並且由於每個測試使用了它的不同部分,我決定只檢出我需要的部分將更快。換句話說,我期待使用稀疏結賬。我的意圖是一步一步簽出一份空的工作副本,並通過更新進行更新,以便隨着時間的推移收集(幾乎)完整的框架。我正在使用一個python腳本和modulefinder來決定我爲每個項目需要的框架的哪些部分。所以我得到如下:svn checkout/update不刪除磁盤上的現有(版本化)文件
FOO項目,框架樹:
\R100
\Framework
\Module_1
\Submodule_1
\Submodule_5
\Module_2
\Module_3
結帳程序:
svn checkout repo.url/[email protected] local\R100\Framework --depth empty
svn update \local\R100\Framework --depth immediates --revision 100
svn update \local\R100\Framework\Module_1 --depth immediates --revision 100
svn update \local\R100\Framework\Module_1\Submodule_1 --depth immediates --revision 100
svn update \local\R100\Framework\Module_1\Submodule_5 --depth immediates --revision 100
svn update \local\R100\Framework\Module_2 --depth immediates --revision 100
svn update \local\R100\Framework\Module_3 --depth immediates --revision 100
項目欄:
\R100
\Framework
\Module_1
\Submodule_1
\Submodule_2
\Module_2
\Module_3
結帳程序:
svn checkout repo.url/[email protected] local\R100\Framework --depth empty
svn update \local\R100\Framework --depth immediates --revision 100
svn update \local\R100\Framework\Module_1 --depth immediates --revision 100
svn update \local\R100\Framework\Module_1\Submodule_1 --depth immediates --revision 100
svn update \local\R100\Framework\Module_1\Submodule_2 --depth immediates --revision 100
svn update \local\R100\Framework\Module_2 --depth immediates --revision 100
svn update \local\R100\Framework\Module_3 --depth immediates --revision 100
項目武:
\R100
\Framework
\Module_1
\Submodule_1
\Submodule_3
\Module_6
\Module_9
結帳程序:
svn checkout repo.url/[email protected] local\R100\Framework --depth empty
svn update \local\R100\Framework --depth immediates --revision 100
svn update \local\R100\Framework\Module_1 --depth immediates --revision 100
svn update \local\R100\Framework\Module_1\Submodule_1 --depth immediates --revision 100
svn update \local\R100\Framework\Module_1\Submodule_3 --depth immediates --revision 100
svn update \local\R100\Framework\Module_6 --depth immediates --revision 100
svn update \local\R100\Framework\Module_9 --depth immediates --revision 100
的問題是,每個連續的更新與已存在的文件的刪除而不是隻檢查出的新的這個工作拷貝文件開始。有什麼辦法可以克服嗎?我意識到設置更新/結帳深度是原因,但我想克服這個問題,告訴svn客戶端「好吧,那些文件和文件夾不再在結帳範圍內,但由於它們已經在這裏,所以請保留它們」