【问题标题】:Moving SVN Trunk head backward向后移动 SVN 主干头
【发布时间】:2015-03-20 18:56:49
【问题描述】:

我们在主干上遇到的问题是有人在移动文件并删除了顶级目录,提交了该更改,然后恢复了该目录并提交了该更改。

从外部我们认为这很好......直到其他分支从主干同步。 现在这意味着在同步分支时,SVN 将删除该顶级目录,然后重新添加该目录的主干状态...导致该目录中的所有更改在分支上丢失(哎哟)。

因此需要一种方法来倒带 SVN 头部。

我们唯一的想法是从之前的提交中创建一个分支并尝试创建那个主干,但这似乎可能会导致一些问题(例如树冲突)。

【问题讨论】:

  • 你考虑过切换到 git 吗?
  • 你是如何恢复目录的?如果您通过使用 SVN 恢复删除来做到这一点,那么我希望它不会导致您遇到的问题。您是否只是创建了一个同名的新文件夹而不是使用 SVN 恢复?

标签: svn merge trunk


【解决方案1】:

尝试反向合并到主干:

svn merge -r HEAD:prev . 

在当前的主干工作副本中执行此操作,即提交。 prev 应该是第一次删除目录之前的版本。

这样,您当然会丢失从现在到prev 之间对主干的所有更改,例如,但至少您的分支应该没问题。

【讨论】:

  • 谢谢迈克尔,这样可以很好地恢复后备箱的外观。但是删除顶级目录的签入仍然会导致所有同步到主干删除顶级目录并将其替换为原始主干副本(吹走该目录中的所有更改)。
猜你喜欢
  • 1970-01-01
  • 2016-09-08
  • 1970-01-01
  • 1970-01-01
  • 2014-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多