用 SVN 中项目的当前主干版本替换分支项目 [英] Replacing Branched project with current Trunk version of a Project in SVN

查看:37
本文介绍了用 SVN 中项目的当前主干版本替换分支项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有 \trunk\root\,其中包含文件夹 ProjectA、ProjectB 等.我已经创建了根分支 -> \branches\task\root\

I have \trunk\root\ which contains folders ProjectA, ProjectB etc. I have creates branch of root -> \branches\task\root\

现在我对包括 ProjectB 在内的任务中的项目进行了大量更改.

Now I've made considerable changes to the projects in task including ProjectB.

然而,\trunk\root\ProjectB 也发生了变化,使得 task\Root\ProjectB 中的所有更改变得多余.

However \trunk\root\ProjectB has also moved on to a point that makes all the changes in task\Root\ProjectB redundant.

我想用\trunk\root\ProjectB 的内容完全替换\branches\task\root\ProjectB 的内容.不合并只是使任务版本 ProjectB 与主干版本相同.请注意,在将任务合并回主干时,我不希望在 ProjectB 中发生任何奇怪的事情,SVN 应该只看到它现在在 ProjectB 中的旧版本,而不要更改其中的任何内容.

I would like to completely replace the content of \branches\task\root\ProjectB with the content of \trunk\root\ProjectB. No merging just make the task version ProjectB identical to the trunk version. Note when it comes to merging task back into trunk I don't want any weirdness happening in ProjectB, SVN should just see that its an old version of what is now in ProjectB and not change anything in it.

任何人都可以通过使用 TortoiseSVN 来指导像我一样一无所知的 SVN(他也恰好是一个完整的 CLI 傻瓜)来实现这一点?

Can anyone guide an SVN know-nothing like me (who also happens to be a complete CLI whimp) through using TortoiseSVN to acheive this?

推荐答案

  1. 在分支上删除当前的 ProjectB,在 svn repo 上执行此操作
  2. 再次将主干 ProjectB 复制到该分支位置(以前 ProjectB 所在的位置).
  3. 恢复,或者更好的是,重新签出 ProjectB.

也就是说,如果您可以丢失历史记录.

That is if you're okay with losing the history.

保留历史记录的另一种方法 - 但这将使用 Eclipse IDE

An alternative approach where the history will be kept - but this will use the Eclipse IDE

  1. 从主干签出 ProjectB
  2. 从分支签出 ProjectB(到 Eclipse 中的不同项目)
  3. 比较两个版本的ProjectB,将Trunk Project B的所有变化都引入到分支ProjectB中
  4. 签入分支项目 B

这篇关于用 SVN 中项目的当前主干版本替换分支项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆