将SourceSafe与SVN同步

时间:2020-03-06 14:26:10  来源:igfitidea点击:

我们公司有一项政策,要求将源代码保留在SourceSafe存储库中。我已经尽力说服管理层迁移到SVN,但没有成功(无论如何,这是另一个问题)。

当我和几个同事使用通过我的计算机(通过Apache)放置的SVN存储库时,我制作了一个PowerShell脚本,该脚本将存储库备份到公司服务器上(然后定期进行备份)。这很好用,但是我还想在SourceSafe服务器上保留源代码的副本。

有任何经验或者技巧吗?

谢谢

解决方案

可怜的你,我感到你的痛苦。

每晚压缩导出并存储在VSS中的代码如何?大多数工具都以其他方式移动,因此,如果要自动化,就必须自己编写一些东西。

创建一个批处理文件似乎是一个好主意,该文件可以定期将当前的源代码从SVN检入sourcesafe。

我们可以创建一个通过计划任务每​​晚运行的批处理文件。它将使用sourcesafe命令行实用工具将整个代码库签出到本地文件系统。然后,它将使用subversion命令行客户端执行相同的操作,以获取最新版本到同一目录中。然后,我们可以使用sourcesafe命令行util进行检入。

困难的部分将是检测添加到Subversion的新文件并将这些文件添加到Sourcesafe数据库。假设,我们可以遍历所有文件,并查看在上次签入后未将哪些文件标记为只读。另一个问题是处理重命名和删除。我想删除的文件保留在源安全中并没有多大关系,因为听起来好像没有人真正在使用该代码库。

将SVN存储库检入SourceSafe怎么样?

我不确定是否有一个好的方法,但是一种方法是使用SVN服务器挂钩在VSS中使用VSS命令行工具在Source Safe中执行类似的操作。我认为这已经在svn用户的邮件列表中进行过讨论。我们可以尝试在此处搜索档案。