如何在VSS和SVN之间同步
时间:2020-03-05 18:51:44 来源:igfitidea点击:
我被迫在工作中使用VSS,但将SVN用于个人存储库。在VSS和同步之间进行同步的最佳方法是什么?
解决方案
回答
我过去所做的工作如下:
- 确保所有更改都已提交给svn:// trunk
- 从VSS获取最新信息到我的工作副本中。
- 在我的工作副本中手动合并更改。
- 将合并的代码提交到svn:// trunk
- 进行VSS差异检查并签出任何有差异的文件(不覆盖文件)
- 检入这些文件。
回答
为了摆脱手动合并步骤,我可以使用一个单独的svn分支(svn:// branches / VSS),如下所示:
- 创建svn:// branches / VSS的工作副本
- 在此工作副本上进行VSS更新
- svn提交
- svn从svn:// trunk合并
- svn提交
- 进行VSS差异检查并签出所有具有差异的文件(不覆盖)
- 检入这些文件
- 将svn:// branches / VSS重新集成到svn:// trunk
回答
我们还可以将其视为redbean书中定义的供应商提供的分支:
供应商分支
这样,基本流程将是:
- 有一个供应商分支"分支/ VSS /当前",其中包含来自VSS的最新代码
- 将当前版本标记为" branches / VSS / 2008-09-15"
- 第二天,将新文件放入"当前文件"中
- 再次标记为"分支/ VSS / 2008-09-16"
- 将两个标签之间的差异合并到主干中,以解决冲突
- 根据需要删除旧标签
这实际上是我们从VSS迁移到SVN时使用的技术。
如果我们关心SVN-> VSS的返回行程,则只需在干线和分支/ VSS /电流之间进行区分,然后将差异应用于VSS。