我的团队很快就会从Visual SourceSafe迁移到Subversion,同时在Visual Basic 6.0中开发/支持遗留项目,所以我有几个问题:

  • 在Visual Studio 6中,Subversion IDE集成的最佳工具是什么? (或者不值得麻烦......)
  • 在Visual Basic 6.0中使用Subversion有什么最佳实践吗? (要忽略的文件类型等)

===============>>#1 票数:16 已采纳

我同意Windows资源管理器中的Tortoise SVN是使用SVN和VB6的最佳方式。

迁移到SVN的最大变化是“签出”和“签入”的想法与“更新”和“提交”不完全相同。 因此,任何IDE与VB6的集成都是有限的,因为VB6支持MSSCCI,一种签出/签入机制。 我曾经使用过Visual Studio 2003的TamTam SVN( http://www.daveswebsite.com/software/tamtamsvn/index.shtml ),但是因为我发现它有限制而停止了。 合并/分支/责备等是Tortoise SVN提供的非常强大的功能,而不是在TamTam中。 底格里斯也有http://svnvb6.tigris.org/ ,但我还没试过。

同样,虽然你很可能得到一个IDE与VB6一起工作,但我不推荐它,因为迁移到SVN的最大优势是打破源安全的签入/签出理念。

===============>>#2 票数:12

由于Subversion使用更新/编辑/提交周期(而不是签入/签出),因此您需要特别注意二进制文件。 VB6中的大多数表单由两个文件组成:MyForm.frm和MyForm.frx。 * .frx文件是二进制文件,因此无法合并。

鉴于此,我会设置Subversion以要求“锁定”.frx文件。 这意味着一次只能有一个人检出文件。 通过这样做,您将强制执行只有一个开发人员可以一次修改这些文件,并且始终清楚该人当前是谁。 如果你不这样做,你就会让自己陷入一些重大的麻烦。

===============>>#3 票数:5

要忽略的文件类型:

*.vbw
关闭项目时自动生成的工作区文件,包含已打开的文件等。

MSSCCPRJ.SCC
VB6 IDE生成的源代码控制状态文件(如果你在Windows资源管理器中使用控制SVN的解决方案,你应该在VB6中禁用源代码控制插件,这将不会生成)。

*.log
这是在加载表单GUI时出现问题时生成的文件。 该文件与表单文件位于同一位置,其名称等于表单文件。
示例: MyForm.frm生成MyForm.log

如果您没有源代码管理中需要的日志文件,您当然应该只执行此操作...

===============>>#4 票数:5

根据您计划在这些遗留项目上做多少,我会考虑不切换。

我真的建议你切换到SVN。 我知道一些丢失源代码的项目,因为VSS数据库已损坏。

我认为有一些工具可以执行从SourceSafe到SVN的迁移。 (是的 - 谷歌快速搜索确认了这一点。)这样你就不会失去修订历史。

===============>>#5 票数:3

我的猜测是不打扰集成,只需在Windows资源管理器中使用Tortoise SVN。

至于要忽略的文件类型,给它一个测试,检查,构建,并查看是否有任何文件更改(对于现代Visual Studio,我倾向于忽略.suo文件)

===============>>#6 票数:1

对于服务器端,VisualSVN Server是一个超级简单的解决方案,我们在vmware虚拟机中运行它,并且它在嗡嗡作响。

如果你是一个命令行的人,我真的很喜欢svn的命令行界面,我发现它比陷害某些动作更容易混淆,比如文件夹的状态。 但是,如果你是一个探险家的粉丝,乌龟是绰绰有余的,来自源安全的世界。

要忽略的主要事项是:

  • 可重现的工件(dll,pdb,exe)
  • 特定于环境的设置(即vs,csproj.user文件,.suo文件的设置文件)

===============>>#7 票数:1

根据您计划在这些遗留项目上做多少,我会考虑不切换。

在挖掘遗留代码时,拥有所有历史和责任真的很有帮助。 SVN比VSS好几英里,但是当你切换时,你将失去历史。

如果你要在VB6中进行大量的持续开发,那么很可能值得切换到SVN,但是如果你将要做的那么多,那还值得回顾一下这个项目吗?

我有类似的问题,只有遗留项目在Delphi中。 如果他们在VB6中,我想我会考虑将它们“升级”到VB.Net,只是为了可维护性。

  ask by Jonathan Rauch translate from so

未解决问题?本站智能推荐:

1回复

在Visual Basic 6.0中重定位引用的文件

我正在将文件从各个位置移动到SVN存储库中。 其中一些是Visual Basic 6.0中的项目,但是我使用该语言的经验非常有限,而且我不确定如何将引用重新拼合在一起。 打开VB项目会出现一个错误,即找不到文件(该文件以前所在的子目录只是偶尔地留在“我的文档”中,这显然是不可接受的)。
1回复

需要建立安装项目时,如何在Subversion中管理维护/错误修复分支?

我们有一整套用VB6编写的相关产品,带有一些C#和VB.NET项目,并且所有源代码都保存在一个Subversion存储库中。 我们尚未在Subversion中使用分支(尽管我们现在标记发布),而只是在主干中进行所有开发,并在主干足够稳定时创建新发行版。 当我们发布一个新版本时,这不会引起
1回复

Visual Basic 6项目丢失了对所有用户定义类型的引用,无法编译

我提交了一些工作,一天前使用TortiseSVN编译Subversion,关闭Visual Basic 6.0(SP6),今天当我打开项目时,IDE将无法编译项目。 我收到的错误是: 编译错误:未定义用户定义的类型 。 此外,当我尝试转到任何类型的定义,比如MSComm或Byte时
1回复

我可以从Subversion向GitHub存储库“推送”吗?

我将SVN(Subversion)与Visual Basic 6.0源文件一起使用,我有本地存储库(包含所有内容:解决方案,代码等)。 但我想知道是否.. 我可以做- 就像在Git中一样 - 推送到远程存储库吗? 想象一下我有: 使用Git将会像 我做得这么快
1回复

Image1中的“属性图片”具有无效的文件引用

我正在处理我的Office Visual Basic项目,并在设计时创建了一个表单,其中添加了一些带有.gif格式的图片文件。 我将图像上传到项目的图像文件夹,然后将其从该位置附加到UI。 我同时使用Image和PictureBox添加图片。我测试了代码并将代码提交给SVN。 然后,我
1回复

TortoiseSVN-VB6中的“另存为”命令不会打开任何菜单

我开始研究在Windows上将Visual Basic 6与TortoiseSVN一起使用的旧版软件。 在主干中工作时,我可以使用“另存为”上下文菜单命令来复制表单。 在分支上执行相同操作时,该命令无效。 我尝试将项目目录移到SVN忽略列表。 我还尝试将其全部从源代码控
3回复

使用NAnt和Ivy构建VB6项目

我正在使用Subversion,CruiseControl,NAnt和Ivy开发适用于.Net和VB6应用程序的持续集成系统。 .Net方面并没有太大的问题,但是我需要对VB6方面的一些指导,更多是从“ DLL地狱”方面的指导! 我当前的设置是按预期方式获取VB6系统的所有相关文件,
1回复

否则,如果不能在Visual Basic 6中使用

我想在图片框中显示所选图片。 以下是代码: 情况481可以正常工作,但是第二种情况,错误68根本不起作用。 它显示运行时错误68。以下是输出: 请让我知道以上代码中的错误。
1回复

在Visual Basic 6.0中使用HID USB

我正在尝试连接Gramin USB GPS来获取视觉基础项目中的坐标,但是我不知道如何实现此目的,有人指出正确的方向吗?
2回复

如何在Visual Basic 6中使用正则表达式?

如何在Visual Basic 6中使用正则表达式?