我们使用svn并且具有应该在几天内发布的代码,但是我们希望从构建中排除一个修订版,因为我们没有时间完全进行QA。从trunk干掉该修订版的最佳方法是什么?
我们是否应该创建一个分支,在其中包含该修订,在trunk中恢复该修订的更改,然后一旦代码中断,将该分支的修订合并回trunk;
答案 0 :(得分:2)
你是如何表明构建的内容?它是存储库中的整个树,还是使用svn:externals或者是什么?
如果您使用的是svn:externals,那么您只需将修订号应用于该组件即可。
如果您正在检查整棵树,那么您可以退出更改,直到您完成发布。您不需要将其保存在分支上,它仍然存储在存储库中。
所以
svn merge -c -<revision-no>
应该取消进行特定修订的更改。 (然后你需要提交)。
如果修订版影响的不仅仅是该组件,那么您可以将合并限制为仅该组件。
然后你再做一次'合并'来重新申请改变:
svn merge -c <revision-no>
(注意修订号之前缺少' - '。
答案 1 :(得分:1)
您可以恢复此修订和提交的更改,但仍会保留旧版本,但以后不会轻易找到。
你建议恕我直言的最佳方式。
创建分支或标记以保留更改,然后在主干上恢复。 稍后,当您准备好集成更改时,您只需要合并分支并重新发送。