我一直在为一些个人项目使用SourceGear保险库,在工作项目中使用Team Foundation Server.缺少TFS的一件事是Vault在其签入对话框窗口中具有的一个简单功能.
在Vault客户端中,您可以查看签出的文件是否已从签入的先前版本更改.这是一个屏幕截图.请注意"详细信息"列?这告诉你有区别.这样做非常有用的方法是,如果你要检查整个项目,因为你要重新生成代码.我将查看我的类库项目,然后重新生成我的CodeSmith模板.这样做可能会导致一些特定文件发生变化.当我查看待处理的登记屏幕时,我看到真正改变的文件,我可以比较以查看影响.
所以...... TFS能做到吗?也许有一个第三方工具可以帮我吗?我必须得到TFS SDK或PowerTool吗?有人想建造吗?
我们在大多数项目中使用SQL Server 2000/2005和Vault或SVN.我还没有找到一个适当的解决方案来捕获源控制系统中的数据库架构/ proc更改.
我们当前的解决方案非常繁琐且难以实施(将您更改的对象编写脚本并将其提交到数据库).
我们有很多关于如何通过一些自定义开发来解决这个问题的想法,但我宁愿安装一个现有的工具(付费工具很好).
那么:您如何跟踪数据库代码更改?你有推荐的工具吗?
编辑:
感谢所有的建议.由于时间的限制,我宁愿不在这里自己动手.大多数建议都有缺陷,他们需要开发人员遵循一些程序.
相反,理想的解决方案是监视SQL数据库的更改并将任何检测到的更改提交给SCM.例如,如果SQL Server有一个附加组件可以记录任何进行更改的用户的DML更改,那么将该对象的脚本提交给SCM,我会很激动.
我们在内部讨论了两个系统:1.在SQL 2005中,使用对象权限来限制您更改对象,直到您执行"结帐".然后,签入过程会将其编入SCM.2.运行预定作业以检测任何更改并将其(匿名)提交给SCM.
如果我可以跳过用户操作部分并让系统自动处理所有这些,那就太好了.
是否有任何工具可以促进从Sourcegear的Vault迁移到Subversion?
我真的更喜欢现有的工具或项目(我会买!).
要求:
可选的:
如果您可以分享与此流程相关的个人经验,则可获得奖励积分.
我想这样做的原因之一是因为我们在Vault和Subversion之间分布了很多项目(我们终于远离了sourcesafe).在某些情况下,能够将特定客户的回购合并到SVN会很有帮助.
此外,SVN在第三方工具中得到更好的支持.例如,Hudson和Redmine.
尽管如此:我们并没有完全抛弃金库.
svn version-control sourcegear-vault version-control-migration
我目前正在审查从SVN迁移到SourceGear Vault的好处.有没有人得到建议或链接到两者之间的详细比较?请记住,我必须移动我当前的源代码控制系统,这对SVN有利
这是我迄今为止从我自己的调查中发现的一些信息.
我一直在两者之间进行一些时间测试,并且保险库似乎更快地执行大多数操作.时间测试使用与存储库,同一工作站客户端和同一项目相同的服务器.
时间比较
(无法正确格式化)
我还找到了一个在线资源,比较了其他一些观点.这是我正在寻找的那种信息.
用法比较
Subversion只是编辑/合并/提交.Vault允许您进行编辑/合并/提交或结帐/编辑/签入.
Vault的外观和行为与VSS类似,这使得VSS用户的学习曲线实际上为零.
Vault有一个VS插件,但只有在你要以结账模式运行时它才有效.
Subversion拥有几乎所有可以想象的操作系统的客户端; Vault有一个用于Windows的GUI客户端和一个用于Mono的命令行客户端.
两者都支持远程工作,因为它们都使用HTTP作为传输(Subversion使用扩展DAV,Vault使用SOAP).
Subversion安装,尤其是使用Apache,更复杂.
Subversion有很多第三方支持.保险柜只有几件事.
我的问题
有没有人得到建议或链接到两者之间的详细比较?
我有一个使用SourceGear Vault的源代码管理系统.
我正在和Git一起玩,想看看我是否可以将我的SourceGear repo变成Git.
我看不出有什么方法可以做到这一点.
任何人都可以推荐一种方法吗?
我找到了一个文件夹导出/导入工具,可以创建一个VFE文件扩展名.
有没有简单的方法将文件版本从SourceGear Vault迁移到TFS?
我注意到这种功能存在于颠覆中,并且它的工作非常好.我想知道SourceGear Vault是否有这样的东西.
目前我正在使用Source Safe和遗留的VB6应用程序,我注意到无数次应用程序没有使用获取最新版本正确更新文件,或者向项目添加新文件.我只是觉得有人必须有更好的方法在VB6应用程序中使用版本控制.
我负责一个小型开发团队,我们主要负责数据库开发.我们目前正在使用MS Visual Source Safe作为我们的源代码控制系统,但它有其局限性,我们正在认真考虑改变.你会选择什么系统?
使用BC2,当我单击SourceGear Vault中的显示差异...选项时.它允许我从存储库复制到工作版本并保存,但我不能用BC3这样做.它不允许复制到其他(右)并禁止编辑显示在BC3的底部.它与DiffMerge甚至相同.我在这里不理解什么?
有人可以向我解释为什么BC3的变化并有解决方法吗?
sourcegear-vault ×10
svn ×5
dvcs ×2
git ×2
tfs ×2
mercurial ×1
sql-server ×1
vb6 ×1
version ×1