使用Keil的SVCS+GIT管理软件版本
扫描二维码
随时随地手机看文章
点击上方蓝字关注我哦~
01
前言
SVCS(softwate version control system),即软件版本管理系统,是keil集成的软件版本管理工具。首先更正上篇中关于keil的版本管理系统在μVersion5版本以后才有,实际上在μVersion2,主菜单内就有了SVCS,只是在接触Git前没有去关注它。
μVersion5的SVCS在菜单中也未曾改变。
02
添加SVCS的git模板
1)点击SVCS-Configure Software Version Controll。
2)导入git模板。在keil安装目录Keil_v5\UV4下自带一个英文的模板:GIT.SVCS,到日即可。
导入后在SVCS菜单下多出了一系列git操作的菜单。
git模板可以自己编译,在网上也可以找到中文版的,效果如下。如有需要可以添加小编好友索取。
导入SVCS模板后后新增的这些菜单项,每一条对于的一个git语句。本质上就是给不熟悉命令行操作的开发者提供一个UI界面,将常用的指令做成了菜单形式。详细对应如下:
注意本篇是建立在上篇《使用git管理嵌入式软件版本》 windows环境已将搭建好的前提下操作的。
03
编译运行
下面一个简单的开发过程作为示例。假如新的需求开发改动了uart.c和_uart.h。
1)查看修改的内容
选中uart.c,选择菜单中的“查看差异Blame ‘uart.c’”,在output的窗口中可以看到修改点。用于确认修改点。
diff --git a/src/uart.C b/src/uart.C
index 3ec85cb..01ede88 100644
--- a/src/uart.C
+++ b/src/uart.C
@@ -45,7 +45,7 @@ void uart_Init
GPIO_InitStructure.GPIO_Mode = UART1_TXD_GPIO_MODE;
GPIO_Init(UART1_TXD_GPIO_PORT, &GPIO_InitStructure);
- USART_InitStructure.USART_BaudRate = 115200;
+ USART_InitStructure.USART_BaudRate = 38400;
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
USART_InitStructure.USART_StopBits = USART_StopBits_1;
USART_InitStructure.USART_Parity = USART_Parity_No;
同样可以查看uart.h的改动内容。
2)查看工作区状态
选择菜单中的“GIT状态”,在output的窗口中可以看到
git status
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: ../inc/_uart.H
modified: ../src/uart.C
Untracked files:
(use "git add <file>..." to include in what will be committed)
../Libraries/
./
../SVCS/
no changes added to commit (use "git add" and/or "git commit -a")
可以看到在已改动的两个文件_uart.H和 uart.C。
3)提交修改点到暂存区
选中uart.c,选择菜单中的“GIT增加修改的文件(添加修改的文件) ‘uart.c’”。同样提交_uart.h。再次查看GIT状态。
git status
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: ../inc/_uart.H
modified: ../src/uart.C
Untracked files:
(use "git add <file>..." to include in what will be committed)
../Libraries/
./
../SVCS/
可以看到,此时_uart.H和uart.C已经在暂存区了。
4)提交版本
选择菜单中的“(提交版本)(将增加的文件提交到本地的版本库)”。弹出的菜单中填写本次提交的内容注释。
此时再Git Staus,这两个文件已经不在暂存区了,因为已经提交到版本上了。
5)推送版本到远程服务器
选择菜单中的“(发布版本)将更改的文件工程推送到服务器”。
推送版本到远程服务器不仅有利于备份代码,也是多人合作开发必须操作。
在Gitee的首页上能看到推送的内容。
正常的一次开发提交通过以上几步就完成了。在真实的开发过程中,可能会反复的修改一个文件,反复的提交到暂存区又取消,这样就要灵活使用git add、git reset、git checkout、git stash等等指令。Keil中可以根据实际的使用需求来自行修改.scvs模板文件。
/ The End /
本文由【嵌入式案例Show】原创出品,未经许可,请勿转载
扫码关注我们
看更多嵌入式案例
免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!