MATLAB git通过命令窗口

p1iqtdky  于 2023-10-23  发布在  Matlab
关注(0)|答案(3)|浏览(188)

我在代码开发中使用MATLABs git support,经常提交,推送和所有标准的源代码控制。
然而,我只使用MATLAB的用户界面,基本上是通过右键单击文件夹和导航菜单,直到找到正确的选择(见下图)。
有没有一种方法可以让MATLAB的命令窗口运行git命令,而不需要每次都在菜单中导航?

gr8qqesn

gr8qqesn1#

您可以在MATLAB中对git命令使用系统命令行转义!。例如:

!git status
!git commit -am "Commit some stuff from MATLAB CLI"
!git push

您需要在系统上安装Git才能工作。

4bbkushb

4bbkushb2#

我喜欢在我的路径上放置以下函数:

function varargout = git(varargin)
% GIT Execute a git command.
%
% GIT <ARGS>, when executed in command style, executes the git command and
% displays the git outputs at the MATLAB console.
%
% STATUS = GIT(ARG1, ARG2,...), when executed in functional style, executes
% the git command and returns the output status STATUS.
%
% [STATUS, CMDOUT] = GIT(ARG1, ARG2,...), when executed in functional
% style, executes the git command and returns the output status STATUS and
% the git output CMDOUT.

% Check output arguments.
nargoutchk(0,2)

% Specify the location of the git executable.
gitexepath = 'C:\path\to\GIT-2.7.0\bin\git.exe';

% Construct the git command.
cmdstr = strjoin([gitexepath, varargin]);

% Execute the git command.
[status, cmdout] = system(cmdstr);

switch nargout
    case 0
        disp(cmdout)
    case 1
        varargout{1} = status;
    case 2
        varargout{1} = status;
        varargout{2} = cmdout;
end

然后你可以直接在命令行输入git命令,而不用使用!system。但是它还有一个额外的优点,那就是你也可以静默地调用git命令(没有输出到命令行),并有一个状态输出。如果您正在为自动构建或发布过程创建脚本,这将非常方便。

62lalag4

62lalag43#

从23 b开始,有一个不需要安装Git的MATLAB Git API:gitrepo / gitclone
示例用法:

>> repo = gitrepo(pwd);
>> add(repo,"newScript.m");
>> commit(repo,Files="newScript.m",Message="Commit new file");

要克隆存储库,请执行以下操作:

>> repo = gitclone("https://github.com/myuser/myrepo");

相关问题