图像缩略图

用于GIT源控制系统的薄MATLAB包装器

版本1.10.0.0(3.2 kB) MANU R.
完全按照您使用操作系统命令行git,但从matlab
4.9
9评级

4下载

更新2015年8月17日

来自GitHub.

查看版本历史记录

在github上查看许可证

用于GIT源控制系统的薄MATLAB包装器

引用

Manu R(2021)。用于GIT源控制系统的薄MATLAB包装器(https://github.com/manur/matlab-git),github。检索到

评论和评级(21.

Noam Greenboim

非常好。
然而,有一些改进可以制作:

1.您不应允许用户使用符号(“)键入注释。126行后添加以下代码(变量”答案的分配“):

虽然任何(cell2mat(答案)==''')
errh = errordlg('无法在git注释中使用引号(“)。请用另一个符号替换它。','错误');
Uiwait(呃)
答案= inputdlg('评论:','commit'的评论',1,答案);
结尾

2.您可以保留持久变量以避免每次调用该功能时都安装Git

我在工作中发了类似的代码,我使用“DOS”命令而不是“系统”。不确定哪个更好。

大卫

Mark Mikofski.

尝试JGIT4MATLAB,从MATLAB命令窗口工作,不需要GIT安装。

在这里找到它(//www.tatmou.com/matlabcentral/fileexchange/41348-jgit4matlab.

SCO1.

萨姆·伯特

我有一些麻烦设置这个包装器:
我已向Matlab路径下载提交,并且Git安装在我的系统上,但是我收到错误消息,说未安装Git。任何想法为什么?

Matthew Bergkoetter.

大卫

这是一个很好的补充,以便更好地与Matlab集成Git。但是,我在Windows XP X64上的Matlab X64和Git 1.7.11.msysgit上有一个问题,因为如果我调用git gui,则控制永远不会发回matlab提示符和会话冻结。使用System Escape(!)我能够使用(&)来处理新的进程来处理这个问题。但是,问题重新出现了这种实用程序。我可能可以重新落实我的工作,但我宁愿理解为什么控制没有交回更好的解决方案。

Alex Liberzon.

泰勒

使用此精彩实用程序可能存在问题,使用HTTPS上传到远程GIT存储库。(在MAC上)Git Push使用Curl将文件发送到存储库(例如Bitbucket),但Matlab应用程序包中包含的libcurl版本不支持https。金宝app要解决此问题,请将附带的libcurl重命名为其他内容(即libcurl.old)并复制可从Macport等某个地方轻松复制最新版本。在获取Macports的最新版本的卷曲时,请确保添加+ SSL(SUDO端口安装CURL + SSL)。然后,这将允许您从MATLAB命令行中调用GIT键入HTTPS远程存储库。

斯蒂芬妮刘

我是Git的新手,当控制Matlab项目版本时,它非常有用。
有一件事是,我需要使用(git commit -m'foo m的新变化),以使其在Linux中工作。

MANU R.

@ kay-uwe kirstein,

某些GIT操作页面输出文本流。除非输出被管道,否则使用系统呼叫引发此挂起。请参阅2011年3月12日的提交。

Kay-Uwe Kirstein

我自己实施了类似的包装器,我只是想知道为什么你会通过'cat'或'type'管道输出吗?

@ luis-emanual:使用双引号(“)而不是单引号(')应该工作。

你好,
提交不适用于我,因为'被删除了。例子:
>> Git Commit -M'创建了新文件,foo.m'
错误:PathSpec'Wem'与Git已知的任何文件不匹配。
错误:pathspec'文件,'与git已知的任何文件不匹配。
错误:Pathspec'foo.m'与Git已知的任何文件不匹配。

因为系统功能接收:
git commit -m创建了新文件,foo.m

我不明白为什么它为你工作......

马修·阿切顿

我同意马特,设置为“猫”的比赛使这项工作正常。

它看起来像是msysgit(无论如何,在xp上,xp),git命令和参数应该被送到cat,而不是类型。

因此,如果您对Windows上有一些困难 - 以错误消息的形式有关不正确的语法 - 尝试在第69行中删除“ISPC”条件块,并将“PROG”的值设置为“CAT”。

约翰居民们

这对Linux来说更好

[状态,i_] =系统('git status');

%如果git在路径中,则会返回0或128的状态
%取决于我们是否坐在存储库中
只有找不到命令时,它将返回一个1

if(status == 0)
%用参数调用真正的git
arguments = parse(varargin {:});
[i_,结果] =系统(['git --no-pager',Arguments]);
DISP(结果)
elseif(status == 128)
警告('不是git存储库');
别的
错误('git未安装');
结尾

Manu Raghavan.

@mikhail,shell-out运营商'!'无法捕获shell命令的输出,这与某些操作相关,例如知道git甚至在路径上。

使用系统命令!操作员还修复了与多页滚动视图相关的问题,例如查找Git帮助操作。

米哈伊尔

与Git Init,Git Status等的情况如何?..

哈菲

它可以在Windows中使用吗?使用MSYSGIT时?也许不吧

骑自行车的人

蒂莫西·哈尔斯

这是一个非常好的效用。
我发现它对Windows和Mac OS X有用。

Matlab释放兼容性
用R2010B创建
兼容任何释放
平台兼容性
视窗 苹果系统 Linux.

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!