2010-11-25 74 views
0

我在與外部引用的svn項目,例如保護SVN的外部

 
- myproject 
| 
|--------stuff1 
|--------stuff2 
|--------external-lib // svn::external 

我需要添加一個文件(Makefile文件)的外部lib目錄裏面,我想commint這裏面存儲庫(myproject),而不是外部的。不要修改外部存儲庫非常重要。可能嗎?我想使用外部存儲庫的頭版本。

+0

外部svn路徑,它包含文件,或只是目錄? – jgifford25 2010-11-29 19:51:57

回答

1

我建議將Makefile直接存儲到myproject中。完全的外部:然後你就可以從外部的lib使用

make -f ../Makefile.external 
0

你想要什麼是不可能的,除非你在你自己創建外部存儲庫的一個分支,溝SVN運行它。當然,這意味着你必須自己維護外部庫的更新(通過合併(這可能相對容易實現自動化,因爲除了添加此文件以外不需要修改任何內容)。

也就是說,馬丁的解決方案似乎是在你的情況阻力最小的路徑...

0

基於你的問題下的響應,以我的意見,如果你的服務器和客戶機使用Subversion 1.6.x版, 你可以這樣做。在Subversion 1.6.x中,文件外部支持現在可用。因此,對於包含在svn :: external路徑中的每個文件和目錄,您需要在myproject目錄的svn:externals屬性中創建並輸入。

,當svn:externals屬性會是這個樣子:這裏的外部:

^/external-lib/file1 file1 
^/external-lib/directoryA directoryA 
^/external-lib/file2 file2 
^/external-lib/directoryB directoryB 

您可以閱讀更多有關SVN http://svnbook.red-bean.com/nightly/en/svn.advanced.externals.html

現在,只要外部lib和MYPROJECT 中存在同一個存儲庫,工作副本將允許您提交對external-lib中文件和目錄的更改。