在 SVN 中签出以前的修订版,然后提交对此修订版的更改?

Checkout a previous revision in SVN and then commit changes to this revision?

我需要从我的 SVN 中检出以前的版本,然后对其进行一些更改,提交它,然后从 Jenkins 的这个新修订版准备构建。

如何做到这一点?

我知道我可以签出以前的修订版,但是当我将更改提交到此修订版时,新提交仍将包含所有其他以前的更改。

我正在使用 TortoiseSVN。

我想要实现的示例: 假设当前版本是 111。 我想恢复到修订版 99,然后能够在没有从 100 到 111 的所有更改的情况下提交。然后从 Jenkins 构建这个新修订版。

这个SO问题也在找类似的东西,这样的东西还是不行吗?

每次提交都会导致新的修订。您的旧提交将保留在日志中。

在您的情况下,您必须使用 "revert to this revision"(Tortoise 上下文菜单)。然后进行更改并提交。这将创建一个提交,它对从 100 到 111 的更改以及您的新更改进行 "anti-commit"。

但我建议您在两次提交中执行此操作。首先 "revert to this revision" -> 签入并第二次提交您的新更改。

也许这有助于:What is Reverse Merge ( Revert Merge ) in SVN, a simple explanation and the step by step processes from start to finish