我使用从http://codex.wordpress.org/Using_Subversion和其他此类wordpress codex网站收集的信息设置了一个wordpress网站。
我注意到在设置它时,会从外部存储库中复制askimet源。
这很容易吗?我想要的是为我的网站建立一个单独的存储库,它导入其他存储库,例如Wordpress存储库以及我为自定义插件和各种插件设置的任何其他存储库。
在我的存储库中我不想拥有完整的Wordpress源代码,我希望能够将Wordpress存储库链接到其中,这样当我checkout
我的主干 repo它还复制了所有的Wordpress文件。
所以基本上我会有这样的结构:
将共享一些目录。例如,在Wordpress存储库的根目录中,我希望能够在我的站点存储库(wp-config.php)中拥有一个文件。
可以这样做,如果是这样,我该如何去做呢?
谢谢。
答案 0 :(得分:4)
您可以使用svn:externals
属性。此属性值中的每一行都给出一个URL和一个目录; SVN客户端将检查URL中的存储库到命名目录中。例如:
$ svn propget svn:externals .
http://foo.bar/svn/repo wordpress
将在当前目录中生成一个名为wordpress的目录。
答案 1 :(得分:1)
要在您要检查其他分支的目录中添加svn:externals
属性使用svn:propedit (pe)
或svn propset (ps)
。
E.g:
签出基本分支:
$ svn co hxxp://wordpress/svn/repo/trunk siteroot
编辑svn:externals
属性:
$ svn pe svn:externals
将打开编辑器,您可以在其中添加一个或多个外部分支/存储库:
$ hxxp://wordpress/svn/repo/plugin wordpress_plugin
$ hxxp://plugin2site/svn/repo/trunk another_plugin
保存并提交。
$ svn ci
最后,您将获得以下工作副本结构:
siteroot/
siteroot/wordpress_plugin
siteroot/another_plugin
您还可以指定分支的特定修订版,因此外部分支将被冻结到该修订版(例如,如果您知道它是稳定的)。为此,请将@REV
添加到网址的末尾:
$ hxxp://plugin2site/svn/repo/trunk@123 another_plugin
您可以使用svn propset
代替svn propedit
,但请注意,它会覆盖svn:externals属性中的所有现有数据:
$ svn ps hxxp://plugin2site/svn/repo/trunk another_plugin .
有关详细信息,请参阅SVN handbook。
中的以下章节