我有一个充满WordPress网站的Subversion存储库。存储库结构如下所示:
/WordPress/tags/2.9.2 /a-wordpress-site.com/trunk /another-wordpress-site.com/trunk ...
当我想要创建新网站时,我只需将/WordPress/tags/<latest-tag>
复制到/<new-site>/trunk
即可。太棒了! - 除了现在,自从我创建存储库以来,第一次有了新版本的WordPress:WordPress 3.0。
WordPress.org使用Subversion,它们提供对their repository的只读访问权限。我想将2.9.2和3.0之间的差异合并到我的存储库中。除非我弄错了,否则我应该能够使用TortoiseSVN的“合并两个不同树”功能来实现这一目标。
...但是当我指定http://core.svn.wordpress.org/tags/2.9.2
作为发件人URL,http://core.svn.wordpress.org/tags/3.0
作为收件人网址时,将差异合并到我的存储库的/WordPress/trunk
目录中trunk
= 2.9.2),我遇到了几次树冲突,至少发生了一次正常冲突。
我不介意手工解决冲突,但我不确定如何解决。 Subversion告诉我已对已删除的文件进行了更改。正常的冲突尤其令人困惑。怎么会这样?我做错了什么?
答案 0 :(得分:0)
假设你没有更改你签出的WordPress代码的任何内容,即目录/WordPress/tags/2.9.2
中包含的代码,那么从他们的SVN仓库中检出Wordpress 3.0代码就没有问题。你不需要自己合并。
答案 1 :(得分:0)
不要误解我的意思:)但是为了理解svn合并大量的GUI工具,它会让它变得更加复杂。
你用于项目的所有wordpress实例都是你所拥有的“当前”wordpress的祖先。只有那个“当前”是你的/tags/2.9.2
在一个更好的供应商分支场景中,您将基于一般“/ vendor / wordpress / current”的项目为基础
也许阅读Subversion svn:externals file override?
但是它还好,你仍然可以使用新wordpress 3.0的代码覆盖你的存储库中的tags / 2.9.2
之后,您必须在每个项目中合并。我使用命令行客户端:
svn merge http://svnserver.tld/repository/tags/2.9.2