我对以下情况的 svn merge 有疑问:
repo/A 是主干。它有两个子分支调用 repo/B 和 repo/C
- 假设最初 repo/B 有修订版 10。
- repo/C 将 foo.c 合并到 repo/A,修订版变为 11。
- repo/B 的工作副本提交 bar.c 到 repo/B,revision 变为 12。注意此时 repo/B 没有 foo.c。我们称之为“NO-FOO-STATE”。
- 现在 repo/B 从 repo/A 合并并得到 foo.c,repo/B 中的修订版变为 13。
我的问题是:
所以现在如果我从 repo/B 中查看第 12 版。我还将在我的工作目录中获取 foo.c,对吗?我如何(或我能够)签出与“NO-FOO-STATE”内容完全相同的第 12 版?
如果我使用以下命令 sudo 代码:
svn 删除回购/B
svn 复制 repo/B@12 repo/B
我尝试通过删除 repo/B 和 svn copy repo/B@12 来恢复到修订版 12。新还原的 repo/B 是否还有 foo.c?如果是,我怎样才能恢复到“NO-FOO-STATE”。
非常感谢。