點擊上方藍字關注我哦~
01
前言
SVCS(softwate version control system),即軟件版本管理系統(tǒng),是keil集成的軟件版本管理工具。首先更正上篇中關于keil的版本管理系統(tǒng)在μ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語句。本質上就是給不熟悉命令行操作的開發(fā)者提供一個UI界面,將常用的指令做成了菜單形式。詳細對應如下:
注意本篇是建立在上篇《使用git管理嵌入式軟件版本》 windows環(huán)境已將搭建好的前提下操作的。
03
編譯運行
下面一個簡單的開發(fā)過程作為示例。假如新的需求開發(fā)改動了uart.c和_uart.h。
1)查看修改的內容
選中uart.c,選擇菜單中的“查看差異Blame ‘uart.c’”,在output的窗口中可以看到修改點。用于確認修改點。
diff --git a/src/uart.C b/src/uart.Cindex 3ec85cb..01ede88 100644--- a/src/uart.C+++ b/src/uart.C@@ -45,7 +45,7 @@ void uart_InitGPIO_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)查看工作區(qū)狀態(tài)
選擇菜單中的“GIT狀態(tài)”,在output的窗口中可以看到
git statusOn branch masterYour 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.Hmodified: ../src/uart.CUntracked 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)提交修改點到暫存區(qū)
選中uart.c,選擇菜單中的“GIT增加修改的文件(添加修改的文件) ‘uart.c’”。同樣提交_uart.h。再次查看GIT狀態(tài)。
git statusOn branch masterYour 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.Hmodified: ../src/uart.CUntracked files:(use "git add <file>..." to include in what will be committed)../Libraries/./../SVCS/
可以看到,此時_uart.H和uart.C已經在暫存區(qū)了。
4)提交版本
選擇菜單中的“(提交版本)(將增加的文件提交到本地的版本庫)”。彈出的菜單中填寫本次提交的內容注釋。
此時再Git Staus,這兩個文件已經不在暫存區(qū)了,因為已經提交到版本上了。
5)推送版本到遠程服務器
選擇菜單中的“(發(fā)布版本)將更改的文件工程推送到服務器”。
推送版本到遠程服務器不僅有利于備份代碼,也是多人合作開發(fā)必須操作。
在Gitee的首頁上能看到推送的內容。
正常的一次開發(fā)提交通過以上幾步就完成了。在真實的開發(fā)過程中,可能會反復的修改一個文件,反復的提交到暫存區(qū)又取消,這樣就要靈活使用git add、git reset、git checkout、git stash等等指令。Keil中可以根據實際的使用需求來自行修改.scvs模板文件。
/ The End /
本文由【嵌入式案例Show】原創(chuàng)出品,未經許可,請勿轉載
掃碼關注我們
看更多嵌入式案例
免責聲明:本文內容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!





