我正在使用MATLAB R2008a,我想知道哪些源代码控制与它集成。 我听说Visual Source Safe不太好用。 Subversion是否与它集成了?
答案 0 :(得分:15)
我不担心Matlab源代码控制集成。这很方便,但不是必需的。
每个现代源代码控制系统都有一个或多个为其构建的GUI,它通常比Matlab提供的通用源代码控制GUI更强大。大多数都有命令行实用程序,它们暴露了系统的全部功能。您可以通过在系统路径上获取它们然后使用“!”从Matlab调用它们来使用它们。或者您可以编写自己的M代码包装函数来调用源代码控制实用程序。为方便起见,这些可以通过使用“which”来支持部分路径,就像这样。
function checkin(infile, comments)
file = which(infile);
if ~exist(file, 'file')
error('Not a file: %s (resolved to %s)', infile, file);
end
cmd = sprintf('cvs commit -m "%s" %s', comments, file);
对于外部工具,如果他们对文件或目录进行更改并且Matlab没有看到它们(例如,如果您的网络驱动器已经耗尽其更改通知句柄),则可以使用path(path)
强制执行Matlab重新扫描。
因此,根据自己的优点挑选源代码控制系统(只要它在命令行或ActiveX控件中公开其功能),然后在您认为需要时将其包装起来并且Matlab尚未集成它。我以这种方式使用过CVS,ClearCase和AccuRev,我们总是直接使用版本控制工具或通过自定义包装器而不是Matlab集成。
答案 1 :(得分:2)
或Git - 也是开源。
你对VSS是正确的 - 不太好。
答案 2 :(得分:2)
我在Matlab中使用TortoiseSVN / Subversion - 没有集成到Matlab IDE中(甚至没有叠加图标),但是使用它非常简单。
答案 3 :(得分:2)
我觉得用版本控制信息标记自动生成的图形或图形是最有用的。为此,我使用git和这个脚本,它为Matlab提供了当前的git存储库分支,版本哈希以及有关其相应远程存储库的信息:
答案 4 :(得分:1)
如何使用Subversion?它非常好,免费和开源!
答案 5 :(得分:1)
在Windows上(通过提及VSS猜测),MATLAB与Microsoft源代码控制API集成
http://www.mathworks.com/access/helpdesk/help/techdoc/matlab_env/f7-5297.html
(我意识到这是一个R2009b文档链接,但我相信R2008a中的功能类似)。
因此,您需要在Microsoft API和您选择的源代码管理系统之间找到一个接口。例如
答案 6 :(得分:1)
要添加到Andrew的观点,这里有一个功能齐全的包装器,可以在MATLAB命令提示符下使用Git: http://raghavan.info/blog/2010/10/30/make-matlab-git-play-well-together/