设置Git源控制
您可以在MATLAB中使用Git™源代码控制®管理您的文件并与他人协作。使用Git,您可以跟踪文件的更改,并在以后召回特定版本。有关更多信息,请参见克隆Git存储库而且将项目添加到源代码控制中.
在使用Git之前,按照以下步骤为MATLAB设置Git:
用Git注册二进制文件以避免文件损坏。(所有系统都需要)
在Windows上配置MATLAB for Git®系统。(推荐用于Windows系统)
配置MATLAB以使用Git SSH身份验证或安装Git凭据助手以防止频繁的登录提示。(可选)
禁用Simulink压缩®模型来减少Git存储库的大小。(可选)
如果您正在处理大文件,请配置Git以使用Git LFS。(可选)
配置Git使用MATLAB进行差异和合并。(可选)
在R2020b之前,必须安装命令行Git客户端才能在MATLAB中使用Git合并分支。有关更多信息,请参见安装命令行Git客户端.
注册二进制文件Git
如果使用第三方源代码控制工具,则必须注册MATLAB和Simulink文件扩展名,例如.mlx
,.mat
,.fig
,.mlapp
,. mdl
,.slx
,.mdlp
,.slxp
,.sldd
,每分钟
二进制格式。还要为MEX文件注册扩展名,例如.mexa64
,.mexmaci64
,.mexw64
.如果您没有注册扩展名,这些工具可能会在提交文件时通过更改行尾字符、展开令牌、替换关键字或尝试自动合并来破坏文件。如果使用MATLAB之外的源代码控制工具,或者尝试从MATLAB提交文件而未首先注册文件格式,则可能发生损坏。
还要检查其他文件扩展名是否注册为二进制,以避免签入时损坏。检查并注册文件扩展名,例如.xlsx
,jpg
,. pdf
,。docx
等等。
要用Git注册二进制文件扩展名,请将它们添加到.gitattributes
文件。如果您创建一个使用Git源代码控制的新项目,或者将现有项目从另一个源代码控制系统切换到Git源代码控制,MATLAB会自动创建一个.gitattributes
文件,并用要注册的常用二进制文件列表填充它。
如果一个.gitattributes
文件不会自动创建,您可以创建一个包含要注册的常用二进制文件列表的文件。在MATLAB命令窗口中输入:
拷贝文件(fullfile (matlabroot,“工具箱”,“共享”,“cmlink”,“git”,“auxiliary_files”,...“mwgitattributes”), fullfile (pwd,“.gitattributes”))
或者,创建一个空白.gitattributes
文件,输入:
编辑.gitattributes
方法中尚未包含的二进制文件.gitattributes
文件,为所需的每种文件类型在文件中添加一行。例如,*.mlapp二进制
.
配置MATLAB为Git在窗户
在Windows系统上,如果您正在处理具有长路径的文件,请启用对长路径的支持。此外,要使用Git与MATLAB挂钩,请安装Cygwin并将其添加到MATLAB库路径中。Git钩子是自定义脚本,可以由提交、合并和接收推送提交等操作触发。
开启长路径支持(推荐)
要在Windows系统上启用长路径支持,请在MATLAB中运行此命令:
git配置——全局核心。longpaths真实
安装Cygwin(可选)
在Windows系统上安装Cygwin并将其添加到MATLAB库路径:
下载并运行安装程序https://www.cygwin.com/.
在MATLAB中,打开
librarypath.txt
.编辑(fullfile (matlabroot,“工具箱”,“本地”,“librarypath.txt”))
将Cygwin bin文件夹位置添加到
librarypath.txt
,例如,C: \ cygwin64 \ bin
.## ## FILE: librarypath.txt ## ##入口:## o path_to_jnifile ## o [alpha,glnx86,sol2,unix,win32,mac]=path_to_jnifile ## o $matlabroot/path_to_jnifile ## o $jre_home/path_to_jnifile ## $matlabroot/bin/$arch $matlabroot/sys/jxbrowser/$arch/lib C:\cygwin64\bin
如果您没有权限编辑
librarypath.txt
文件的更多信息,请参考定位本机方法库.重启MATLAB。
配置MATLAB使用GitSSH身份验证
当您使用HTTPS与远程存储库交互时,要避免频繁的登录提示,请添加一个新的公钥并使用SSH来克隆存储库。该表提供了关于如何配置MATLAB以基于您的操作系统使用SSH身份验证的说明。
操作系统 | 指令 |
---|---|
窗户 |
|
Linux®而且macOS |
|
安装Git凭据助手
要将MATLAB配置为在使用Git时记住用户名和密码,请安装一个凭据帮助程序。对于所有平台,推荐的凭据助手是Git凭据管理器核心。
例如,要在Windows系统上安装Git Credential Manager Core,请使用中描述的说明下载并运行Git For Windows安装程序安装命令行Git客户端.在选择一个证书助手部分的安装程序,选择Git凭证管理器核心作为凭据助手。
要删除Git存储库中保存的登录信息,请根据您的操作系统执行相关操作。
操作系统 | 指令 |
---|---|
窗户 | 要重置存储库的Git凭据,请在凭据管理器中Windows凭据选项卡,删除下的条目通用凭证. |
Linux和macOS | 要重置存储库的Git凭据,输入: Echo "url=https://github.com/myrepo.git" | git证书拒绝 |
禁用压缩动态仿真模块模型
您可以通过保存不压缩的Simulink模型来减小Git存储库的大小。关闭压缩会导致磁盘上的SLX文件变大,但会减少存储库的大小。
要在新的SLX文件中使用此设置,使用SLX Compression设置为none的模型模板创建您的模型。对于现有的SLX文件,设置压缩,然后保存模型。有关更多信息,请参见设置SLX压缩级别.
配置Git使用GitLFS
如果您正在处理大文件,请通过安装命令行Git并设置LFS来配置Git以使用Git大文件存储(Git large File Storage, LFS)。
例如,要在Windows系统上使用Git LFS,请使用中描述的说明下载并运行Git For Windows安装程序安装命令行Git客户端.在选择组件部分的Git for Windows安装程序,选择Git LFS(大文件支持)而且将.sh文件与Bash关联选项。
MATLAB不支持Git LFS锁定。此外,MATLAB不支持LFS命令,如Git LFS跟踪
.使用git LFS跟踪
代替。
请注意
Git LFS使用Git钩子。确保安装了Cygwin。有关更多信息,请参见在Windows上配置MATLAB for Git.
配置Git使用MATLAB差异和合并
您可以配置Git使用MATLAB比较工具进行差异和合并。MATLAB比较工具提供了合并MathWorks的工具®文件,如活动脚本,MAT, SLX或MDL文件。您可以使用自动合并工具和Git来自动合并在同一个SLX文件中包含不同子系统更改的分支。
有关如何配置Git以使用MATLAB比较工具的详细信息,请参见自定义外部源控制使用MATLAB差分和合并.
安装命令行Git客户端
要使用Git LFS或凭据助手,必须安装命令行Git客户端,并使其在系统范围内可用。在R2020b之前,必须安装命令行Git客户端才能在MATLAB中使用Git合并分支。
输入命令检查Git是否安装git !
在MATLAB命令窗口中。如果该命令没有返回任何内容,则需要安装命令行Git。该表提供了如何基于您的操作系统安装命令行Git的说明。
操作系统 | 指令 |
---|---|
窗户 |
|
Linux | Git可用于大多数发行版。为您的发行版安装Git。例如,在Debian上®,输入以下命令安装Git: Sudo apt-get安装git |
macOS | 在Mavericks(10.9)或更高版本上,从终端窗口运行Git。如果你还没有安装Git,它会提示你安装Xcode命令行工具。有关更多信息,请参见https://git-scm.com/doc. |