9

我在我的 svn 存储库中提交了一些更改。假设 HEAD 位于 r750,我想在不丢失 r746-r750 的情况下恢复 r745。这可能吗?

而且,我可以以某种方式保存 r745 并稍后重新应用它(作为新修订版)吗?

4

2 回答 2

17

假设你得到一个干净的向后合并,你可以这样做......

svn merge -r 745:744 <source>

然后,当您想重新应用它时,可以将其转发合并:

svn merge --ignore-ancestry -r 744:745 <source>

有关更多信息,请查看“合并的常见用例”。

于 2009-05-01T22:08:59.373 回答
2

是的,这绝对是可能的。

当您恢复更改时,它仍会在存储库中创建新修订。所以你会做这样的事情:

1)查看当前副本 r750。

2)使用 . 在工作副本上指定恢复svn merge -r。您的工作副本将合并旧版本。

3)将工作副本签入为 r751。

现在您将在历史记录中进行两次修订。新的 (r751) 不包括 r745,因为您已将其回滚。但是如果您想重新应用它,r745 仍然会存在。您可以简单地签出 r745 的副本,将其合并到您的工作副本中,然后将其重新签入(例如 r752)。

于 2009-05-01T22:13:31.513 回答