很多嵌入式開發人員使用版本控制系統來管理他們的軟件。有不同的版本控制系統,但當今最流行的系統是 Git。如果你從未使用過修訂控制系統或剛開始使用 Git,這里有一些掌握 Git 的技巧和竅門,可以幫助你快速上手。
技巧1 – 從命令行開始使用 Git
當第一次開始使用 Git 時,開始使用圖形用戶界面 (GUI),它完全抽象出了 Git 的細節以及幕后發生的事情。這當然很方便,但問題是不知道幕后發生了什么。對這些細節缺乏了解,這使得管理存儲庫變得更加困難。
開始時,最好的辦法是通過命令行使用 Git,盡管一開始會比較慢。這迫使開發人員完全了解 Git,它是如何工作的,命令是什么,并獲得幕后知識。只有這樣,開發人員才真正有意義地將這些細節抽象化并轉移到 GUI。
技巧2 – 使用測試項目進行練習
開發人員可以在項目中即時學習 Git,但最好的學習方式是花一些時間創建一個測試項目。測試項目為開發團隊提供了幾個優勢,例如:
嘗試分支
體驗合并分支
與多個開發人員一起在存儲庫中工作
集成持續集成和測試
弄清楚工作流程以及如何解決不可避免的問題
測試項目不必很復雜。它可以是嵌入式開發人員將隨機文本粘貼到其中的幾個文本文件。開發人員可以玩他們的項目組織,如何忽略特定的文件類型,例如目標文件,甚至創建子模塊。
技巧3 – 使用子模塊
Git 子模塊基本上是另一個 Git 存儲庫,它作為另一個存儲庫的一部分包含在內。例如,我最近正在開展一個項目,該項目使用 Microchip Harmony 庫來提供所有低級驅動程序和一些中間件支持。我沒有創建單個項目存儲庫,而是創建了一個存儲庫來存儲 Microchip Harmony 庫,然后為我的應用程序代碼創建了另一個存儲庫。Microchip Harmony 庫作為子模塊包含在應用程序存儲庫中。
在這種情況下,子模塊還有一些額外的優點。首先,我可以跨多個存儲庫使用子模塊。如果我正在處理多個使用 Microchip Harmony 的項目,我不必保留庫的單獨副本。我只是將 Microchip Harmony 存儲庫作為子模塊添加到我的應用程序存儲庫中。其次,當我簽出我的應用程序并進行更改時,默認情況下,如果沒有其他命令或命令選項,子模塊將不會被包含在內。這很有用,因為如果我將所有內容都簽入到單個存儲庫中,由于 Microchip Harmony 庫中包含的文件數量,git 需要幾分鐘來搜索我的項目以查找更改。
技巧4 – 利用 Git GUI 簡化軟件管理
終端確實提供了許多開發人員可能想要使用的額外控制級別,但是一旦你了解了 Git 在幕后所做的事情及其功能,通常會更快地將這些細節抽象出來并使用 GUI 工具與之交互存儲庫。嵌入式開發人員可以使用許多 GUI 工具,比如SourceTree 和 TortoiseGit。SourceTree 是 Atlassian 免費提供的一個工具,適用于 Mac 和 Windows 機器。TortoiseGit 適用于 Windows,將目錄集成到 Windows 資源管理器中,非常方便。
技巧5 – 開發和/或采用標準 Git 流程
開始使用 Git 的好處在于,開發人員已經開發和使用了很多工作流程多年。開始時,你可以嘗試通過反復試驗找出適合你的方法,或者你可以使用標準的 Git 流程。有幾種不同的工作流程變得非常流行,例如:
Gitflow 工作流程
分叉工作流程
功能分支工作流程
技巧6 – 提交帶有有用注釋的代碼
將代碼提交到存儲庫時,嵌入式開發人員應包含有用的注釋,以便他們輕松地返回存儲庫并了解該版本代碼中的內容。例如創建一個分支時,將分支命名為 FEATURE_ADC 之類的有用名稱。當提交該代碼或將結果與主線合并時,確保將幾條信息包含在評論日志中:
軟件和/或功能的版本號
做了哪些改變
該版本的任何已知問題
普通的留言
注釋對于識別該版本中的內容非常有用,但它們也有助于在午餐后查看以記住你離開的位置以及軟件中下一步需要解決的問題。
今天的每個嵌入式開發人員都應該使用版本控制系統。Git 是最受歡迎的,上手當然也不難。對于新手來說,其中一些細微差別肯定是具有挑戰性的。在今天的文章中,我們探討了一些簡單的入門技巧,這些技巧可以幫助讀者快速上手。