VBA文件的版本控制

时间:2009-03-19 13:21:09

标签: ms-access version-control vba access-vba

我有一个巨大的MS Access文档,内置VBA代码库。是否可以使用(mercurial)版本控制系统跟踪文件(因为我正在开发它)?我可以提取代码并跟踪它吗?或者它只是二进制文件路径?感谢。

4 个答案:

答案 0 :(得分:5)

MS Access可以通过脚本导出大部分代码。我刚才在这里贴了一些:

How do you use version control with Access development?

答案 1 :(得分:1)

可以对版本控制二进制文件进行控制,但将代码分开会更加清晰(IMO)。如果它对你有用,那么一定要做你做的事。

答案 2 :(得分:0)

这里有一个很好的工具https://github.com/hilkoc/vbaDeveloper

它可让您轻松导出和导入所有vba代码,并且只需点击“保存”即可自动执行此操作。 导出文件都是纯文本,然后您可以按照常规方式将其放入版本控制中。

答案 3 :(得分:0)

一直到2010年的访问都支持源代码控制,其中包括对团队基础服务器的支持。将所有文件放在一个zip文件,一个硬盘驱动器上的文件夹或一个称为accDB的容器中的事实是一个MOOT点。只要EACH单个对象可以被视为SEPARATE对象,那么为什么要关心是使用zip文件还是accDB文件?这是一个“逻辑”视图与物理视图问题。

简单的事情是每个访问对象都可以作为文本对象导出。因此Access支持源控制集成使用此功能与自Access 97(即17年以上!!)以来的标准Microsoft SCC接口。

当您使用SCC(如Visual Source安全或Team Foundation服务器)时,Access中的BUILT IN UI支持显示有问题的对象状态。您有分辨率到表单,报告,SQL查询和代码模块级别。因此,多个开发人员可以同时处理该应用程序。他们只需要查看他们正在处理的表格,报告问题等。因此每个开发人员都有自己的本地构建。

如果使用Visual Source Safe,则会在功能区中看到:

enter image description here

如果您使用的是团队基础服务器,那么您会看到:

enter image description here

对于签出的对象,您会看到:

enter image description here

当您打开,甚至右键单击某个对象时,您会看到以下附加选项:

enter image description here

当然,鉴于“少数”使用此功能甚至不知道它是什么(并且SO上的帖子证实了这种缺乏知识),所以这些年后这个功能在Access 2013中被删除了,这是一个小小的惊喜! 。但是,某些第三方加载项声称可以恢复此功能。因此,在2013年将对象导出为单个文本文件的能力仍然存在。