svn 在同一分支上恢复

svn revert on same branch

我的开发分支 [dev] 已全部准备好发布,但不知何故很少有功能需要恢复。
我的分支负责人指向修订版 7627。
以下是我要恢复功能的步骤。
1. 我已经签出最新版本[7611].
2. 并在我的本地工作副本中合并了来自不同修订提交的所需功能。即修订版 7622 部分(a、b、c、d 文件更改我只进行了 a 和 b,其中 c 和 d 文件是新文件),7623,7625 完成合并。
3. 现在我正在尝试提交工作副本。提交乌龟时,svn 会在对话框中显示要提交的文件。列出了我更改的文件,但没有列出 HEAD 中已经存在的文件(例如我不想在 HEAD 中存在的 c 和 d)并且需要删除。
4. 如果我继续提交,c 和 d 会从 HEAD 中删除吗?
因为这是主分支,所以我想在提交之前要小心一点。
希望这是有道理的。

首先你应该记住,SVN 总是在修订中前进;我的意思是 SVN 将始终要求您的工作副本在任何提交之前更新为 HEAD 修订版。所以你尝试的似乎是错误的,我建议你两个解决方案:

  1. 从修订版 7611 创建一个新分支:
    • 然后将修订版 7622(部分)、7623、7625 执行本地合并到该分支中。
    • 最终提交到这个新分支,它成为您的开发分支。
  2. 或保留您当前的分支:
    • 执行 HEAD 修订的签出
    • 然后执行本地 reversed 修订版本 7612-7621,7624,7626,7627 的合并:with TortoiseSVN,选择后勾选框 Reverse merge修订
    • 您还可以执行其他本地修改,如删除 c 和 d 文件,如您post
    • 中所述
    • 终于提交了。