将GitHub与MATLAB R2014b一起使用

use*_*243 7 git matlab github

您可能知道,我们在MATLAB R2014b中有源控制.我想用Matlab R2014b 使用GitHub.在MATLAB中,有一本Git手册.第三方源控制工具的说明指出:

如果使用第三方源代码控制工具,则必须将MATLAB和Simulink®文件扩展名(如.mat,.mdl和.slx)注册为二进制格式.如果您未注册扩展名,这些工具可能会在您通过更改行尾字符,扩展令牌,替换关键字或尝试自动注册来提交文件时损坏您的文件.无论您是在MATLAB之外使用源控制工具,还是在没有首先注册文件格式的情况下尝试从MATLAB提交文件,都可能发生损坏.

我该怎么办?在MATLAB中,我们应该设置"repository"和"sandbox".如何在GitHub上设置这些(特别是"沙盒")?我应该用MATLAB或GitHub创建存储库?如何将存储库链接到第二个存储库?

MATLAB中的"沙盒"与GitHub中的"克隆"相同吗?

0xM*_*xMB 5

该图像演示了Git在MATLAB中的工作流程.

MATLAB的Git工作流程

如您所见,您将在本地目录中工作,这是您的Sandbox.从那里,您将能够提交对本地存储库的更改.然后可以将它们推送到远程存储库,例如GitHub.

您可以选择克隆远程Git存储库或创建新存储库.

我建议您在GitHub上创建一个新的存储库,然后使用clone链接从MATLAB中创建本地存储库.这会将空存储库克隆到您的工作目录中.此本地副本称为沙箱.您可以开始使用这些文件并进行修改.到达某个里程碑后,您可以将更改提交到本地存储库.然后,它将位于远程存储库(GitHub)之前.然后,您可以将这些提交推送到远程存储库(或将其他人提交的其他提交提取到远程存储库).

添加存储库后,首先需要注册二进制文件; gitattributes在存储库中创建一个文件并添加以下内容;

*.mat -crlf -diff -merge
*.p -crlf -diff -merge
*.slx -crlf -diff -merge
*.mdl -crlf -diff -merge
Run Code Online (Sandbox Code Playgroud)

这些行指定不对这些类型的文件尝试自动换行,差异和合并尝试.

您还可以检查您使用的其他文件类型,您还需要注册为二进制文件以避免在签入时损坏.检查.mdlp,.slxp,MEX文件(.mexa64,.mexmaci64,.mexw32,.mexw64),.xlsx,.jpg,.pdf,.docx等文件.在属性文件中添加一行您需要的每种文件类型;

*.mdlp -crlf -diff -merge
*.slxp -crlf -diff -merge
*.sldd -crlf -diff -merge
*.mexa64 -crlf -diff -merge
*.mexw32 -crlf -diff -merge
*.mexw64 -crlf -diff -merge
*.mexmaci64 -crlf -diff -merge
*.xlsx -crlf -diff -merge
*.docx -crlf -diff -merge
*.pdf -crlf -diff -merge
*.jpg -crlf -diff -merge
*.png -crlf -diff -merge
Run Code Online (Sandbox Code Playgroud)

您可以在此处找到更多信息:http://www.mathworks.nl/help/matlab/matlab_prog/set-up-git-source-control.html

之后,您可以标记要添加的文件并将修改提交到本地存储库.如果需要,还可以推送和获取远程存储库.

请注意,如果要合并分支,则需要安装命令行Git客户端(如果还没有).