Matlab下使用Git管理代码


前言

最近用Matlab写了一个用于分析神经电生理数据的图形用户界面(GUI,现在在Matlab里称为App)。之前写小鼠脑机接口实验程序用过Git将整个项目保存在Git-hub,当时并未写下任何博客以记录整个过程。这次,我想直接在Matlab里使用Git以备份和进行程序开发,遇到不少问题,故写博客将整个过程记录下来,以促进自己学习,并与网友分享。这里面许多内容都是参考了网上搜索到的解决办法,可以视为各种资源的集合,当然也有我一些个人粗见。


一、了解Git

这方面的文章太多了,目前并不非常明白,待有所心得再写。

二、具体步骤

1. Github上 新建一个库并连接到本地

2. Matlab 里进行相关配置

  1. 注意:为了让Matlab能够记住账户和密码,你需要使用Git的凭据助手(Credential Manager Core),在安装Git for windows时,在安装程序的 Choose a credential helper 部分中,选择 Git Credential Manager Core 作为凭据助手。
  2. 根据Matlab提示,我们需要用 Git 把一些非代码文件注册为二进制文件以避免文件损坏,如.Fig, .mat, .mexw64, .mlapp,.p等等。据称 “如果不注册这些扩展名,则当您通过更改行尾字符、扩展标记、替换关键字或尝试自动合并来提交文件时,这些工具可能会损坏您的文件。不论您是在 MATLAB 外部使用该源代码管理工具,还是在未先注册文件格式的前提下尝试从 MATLAB 提交文件,都可能发生损坏。”这些配置都在.gitattributes 文件中,一般在创建工程时会自动生成,你也可以用如下代码生成。
copyfile(fullfile(matlabroot,'toolbox','shared','cmlink','git','auxiliary_files', ..
### 如何在 MATLAB使用 Git 进行代码版本控制和管理 #### 初始化 Git 仓库并设置工作目录 为了开始使用 GitMATLAB 项目进行版本控制,需先初始化一个新的 Git 仓库。这可以通过命令行完成,在目标文件夹内执行 `git init` 命令来创建新的本地存储库[^2]。 ```bash cd "F:/汪汪/git_test" git init ``` #### 添加文件至暂存区 一旦有了初始的空仓库,就可以把现有的 `.m` 文件加入其中。“sor.m”这样的源码文件应该被添加到索引(即暂存区域),准备提交: ```bash git add sor.m ``` 此操作会标记该文件为即将保存的新快照的一部分。 #### 提交更改到仓库 当所有期望纳入首次提交的内容都已准备好之后,通过下面这条命令正式记录这些改动: ```bash git commit -m "Initial commit with sor.m file." ``` 每次修改后都应该重复上述过程——更新、测试并通过 Git 记录下每一次有意义的变化点[^3]。 #### 查看当前状态 任何时候都可以运行 `git status` 来查看哪些文件已被修改但尚未提交,以及那些已经被追踪过却未包含于最新一次提交里的变动情况。理想状态下,如果没有任何待处理的任务,则应显示“working tree clean”。这对于确认一切正常很有帮助。 #### 配置全局用户名与邮箱地址 为了让每条历史记录都能关联上正确的贡献者信息,建议尽早设定好个人的身份标识符: ```bash git config --global user.name "Your Name Here" git config --global user.email you@example.com ``` 以上步骤确保了即使跨不同设备也能保持一致性的身份验证方式[^4]。 #### 关联远程仓库 (可选) 如果有计划与其他开发者协作或是打算公开分享自己的成果,那么建立一个在线托管平台上的远端副本就显得尤为重要了。GitHub 是最受欢迎的选择之一;只需按照官方指南新建一个空白 repo 并将其链接回来即可: ```bash git remote add origin https://github.com/username/repository.git git push -u origin master ``` 这样做的好处是可以轻松同步最新的进展给团队成员们查阅或共同编辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值