有没有办法将一个 svn trunk 附加到另一个上,包括更改历史记录?

问题描述 投票:0回答:1

我有一个有点雄心勃勃的开发人员,不了解 SVN 中的分支,并提出了自己的解决方案。他们需要做出重大改变,但不想阻碍主干中的任何错误修复。因此,他们为此更改创建了一个与主项目文件夹处于同一级别的新文件夹。

原版看起来像这样(rev 100)

/bigProj/branch
        /tag
        /trunk/config
              /docs
              /src 

新文件夹看起来像这样(版本 150)

/bigProjChange/trunk/config
                    /docs
                    /src

我想做的,是将

bigProjChange
的内容空运到
bigProj
的分支中,或者将这大约 50 个修订附加到
bigProj
主干的末尾(没有错误修复,所以这创造力没有任何作用)。然后吹走
bigProjChange
,因为它造成了混乱。

有没有办法做到这一点并保留

bigProjChange
中发生的所有事情的更改/评论?还是我一直在获取
bigProjChange
第 150 版的内容并对
bigProj
的主干进行大规模更新?

svn tortoisesvn visualsvn-server
1个回答
0
投票

如果

bigProj
bigProjChanged
都位于同一个存储库中,您可以像处理任何分支一样简单地
svn merge
它们。请记住,所谓的 标准布局
trunk
/
branches
/
tags
纯粹是按照惯例。对于 Subversion,目录名称没有区别。

解决此问题的简单方法就像进行任何重新集成合并一样:

svn switch ^/bigProj/trunk
svn merge ^/bigProjChanged/trunk .
# resolve conflicts, if any
svn commit -m"Reintegrate bigProjChanged"

svn rm ^/bigProjChanged -m"Blow away!"
© www.soinside.com 2019 - 2024. All rights reserved.