SVN复制项目至新目录后如何在Crucible保留原分支历史差异?
可行,但得用SVN原生复制命令(别直接复制文件)
这当然能实现,但直接复制本地文件目录的方式绝对行不通——因为这种操作完全没保留SVN的版本历史关联,Crucible根本识别不出Project 1在dev分支里的变更记录,只会把它当成一堆全新的文件。
要让Crucible能查看Project 1自分支以来的差异,你得用SVN官方的copy命令来完成迁移,这样版本历史会被完整保留,步骤如下:
- 首先确认你的两个SVN仓库的远程URL,比如Artifact folder 1的URL是
svn://your-repo/artifact-folder-1,Artifact folder 2的是svn://your-repo/artifact-folder-2(换成你实际的仓库地址)。 - 在终端执行SVN远程复制命令,这个操作直接在仓库层面完成,会保留原Project 1的所有版本历史:
svn copy svn://your-repo/artifact-folder-1/branches/dev/Project1 svn://your-repo/artifact-folder-2/branches/stable/Project1 -m "迁移Project1至stable分支,保留完整版本历史" - 复制完成后,当你从
artifact-folder-2/branches/stable创建Crucible评审时,就可以选择对比Project 1在dev分支的起始版本(或者你指定的基线版本)和当前复制后的版本,Crucible会通过SVN的版本关联,拉取出Project 1自分支以来的所有差异内容。
简单说,核心就是必须让SVN仓库记录这个复制的版本关系,而不是手动复制文件破坏历史链。
内容的提问来源于stack exchange,提问作者linuxNoob
相关产品推荐
相关产品推荐

