女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用這六個 Git 協(xié)作策略,讓嵌入式團隊工作更高效

如意 ? 來源:Linux中國 ? 作者:Ravi Chandran ? 2020-09-17 11:46 ? 次閱讀

采用這些 Git 協(xié)作策略,讓團隊工作更高效。

Git 非常有助于小團隊管理他們的軟件開發(fā)進度,但有些方法能讓你變得更高效。我發(fā)現(xiàn)了許多有助于我的團隊的最佳實踐,尤其是當不同 Git 水平的新人加入時。

在你的團隊中正式確立 Git 約定

每個人都應(yīng)當遵循對于分支命名、標記和編碼的規(guī)范。每個組織都有自己的規(guī)范或者最佳實踐,并且很多建議都可以從網(wǎng)上免費獲取,而重要的是盡早選擇合適的規(guī)范并在團隊中遵循。

同時,不同的團隊成員的 Git 水平參差不齊。你需要創(chuàng)建并維護一組符合團隊規(guī)范的基礎(chǔ)指令,用于執(zhí)行通用的 Git 操作。

正確地合并變更

每個團隊成員都需要在一個單獨的功能分支上開發(fā)。但即使是使用了單獨的分支,每個人也會修改一些共同的文件。當把更改合并回 master 分支時,合并通常無法自動進行。可能需要手動解決不同的人對同一文件不同變更的沖突。這就是你必須學會如何處理 Git 合并的原因。

現(xiàn)代編輯器具有協(xié)助解決 Git 合并沖突的功能。它們對同一文件的每個部分提供了合并的各種選擇,例如,是否保留你的更改,或者是保留另一分支的更改,亦或者是全部保留。如果你的編輯器不支持這些功能,那么可能是時候換一個代碼編輯器了。

經(jīng)常變基你的功能分支

當你持續(xù)地開發(fā)你的功能分支時,請經(jīng)常對它做變基rebase:rebase master。這意味著要經(jīng)常執(zhí)行以下步驟:

采用這六個 Git 協(xié)作策略,讓嵌入式團隊工作更高效

這些步驟會在你的功能分支上重寫歷史(這并不是件壞事)。首先,它會使你的功能分支獲得 master 分支上當前的所有更新。其次,你在功能分支上的所有提交都會在該分支歷史的頂部重寫,因此它們會順序地出現(xiàn)在日志中。你可能需要一路解決遇到的合并沖突,這也許是個挑戰(zhàn)。但是,這是解決沖突最好的時機,因為它只影響你的功能分支。

在解決完所有沖突并進行回歸測試后,如果你準備好將功能分支合并回 master,那么就可以在再次執(zhí)行上述的變基步驟幾次后進行合并:

采用這六個 Git 協(xié)作策略,讓嵌入式團隊工作更高效

在此期間,如果其他人也將和你有沖突的更改推送到 master,那么 Git 合并將再次發(fā)生沖突。你需要解決它們并重新進行回歸測試。

還有一些其他的合并哲學(例如,只使用合并而不使用變基以防止重寫歷史),其中一些甚至可能更簡單易用。但是,我發(fā)現(xiàn)上述方法是一個干凈可靠的策略。提交歷史日志將以有意義的功能序列進行排列。

如果使用“純合并”策略(上面所說的,不進行定期的變基),那么 master 分支的歷史將穿插著所有同時開發(fā)的功能的提交。這樣混亂的歷史很難回顧。確切的提交時間通常并不是那么重要。最好是有一個易于查看的歷史日志。

在合并前壓扁提交

當你在功能分支上開發(fā)時,即使再小的修改也可以作為一個提交。但是,如果每個功能分支都要產(chǎn)生五十個提交,那么隨著不斷地增添新功能,master 分支的提交數(shù)終將無謂地膨脹。通常來說,每個功能分支只應(yīng)該往 master 中增加一個或幾個提交。為此,你需要將多個提交壓扁Squash成一個或者幾個帶有更詳細信息的提交中。通常使用以下命令來完成:

git rebase -i HEAD~20 # 查看可進行壓扁的二十個提交

當這條命令執(zhí)行后,將彈出一個提交列表的編輯器,你可以通過包括遴選pick或壓扁squash在內(nèi)的數(shù)種方式編輯它。“遴選”一個提交即保留這個提交。“壓扁”一個提交則是將這個提交合并到前一個之中。使用這些方法,你就可以將多個提交合并到一個提交之中,對其進行編輯和清理。這也是一個清理不重要的提交信息的機會(例如,帶錯字的提交)。

總之,保留所有與提交相關(guān)的操作,但在合并到 master 分支前,合并并編輯相關(guān)信息以明確意圖。注意,不要在變基的過程中不小心刪掉提交。

在執(zhí)行完諸如變基之類的操作后,我會再次看看 git log 并做最終的修改:

git commit --amend

最后,由于重寫了分支的 Git 提交歷史,必須強制更新遠程分支:

git push -f

使用標簽

當你完成測試并準備從 master 分支部署軟件到線上時,又或者當你出于某種原因想要保留當前狀態(tài)作為一個里程碑時,那么可以創(chuàng)建一個 Git 標簽。對于一個積累了一些變更和相應(yīng)提交的分支而言,標簽就是該分支在那一時刻的快照。一個標簽可以看作是沒有歷史記錄的分支,也可以看作是直接指向標簽創(chuàng)建前那個提交的命名指針。

所謂的“配置控制”就是在不同的里程碑上保存代碼的狀態(tài)。大多數(shù)項目都有一個需求,能夠重現(xiàn)任一里程碑上的軟件源碼,以便在需要時重新構(gòu)建。Git 標簽為每個代碼的里程碑提供了一個唯一標識。打標簽非常簡單:

采用這六個 Git 協(xié)作策略,讓嵌入式團隊工作更高效

考慮這樣一種情況:Git 標簽對應(yīng)的軟件版本已經(jīng)分發(fā)給客戶,而客戶報告了一個問題。盡管代碼庫中的代碼可能已經(jīng)在繼續(xù)開發(fā),但通常情況下為了準確地重現(xiàn)客戶問題以便做出修復,必須回退到 Git 標簽對應(yīng)的代碼狀態(tài)。有時候新代碼可能已經(jīng)修復了那個問題,但并非一直如此。通常你需要切換到特定的標簽并從那個標簽創(chuàng)建一個分支:

采用這六個 Git 協(xié)作策略,讓嵌入式團隊工作更高效

此外,如果帶附注的標記和帶簽名的標記有助于你的項目,可以考慮使用它們。

讓軟件運行時打印標簽

在大多數(shù)嵌入式項目中,從代碼版本構(gòu)建出的二進制文件有固定的名稱,這樣無法從它的名稱推斷出對應(yīng)的 Git 標簽。在構(gòu)建時“嵌入標簽”有助于將未來發(fā)現(xiàn)的問題精準地關(guān)聯(lián)到特定的構(gòu)建版本。在構(gòu)建過程中可以自動地嵌入標簽。通常,git describe 生成的標簽字符串會在代碼編譯前插入到代碼中,以便生成的可執(zhí)行文件能夠在啟時時輸出標簽字符串。當客戶報告問題時,可以指導他們給你發(fā)送啟動時輸出的內(nèi)容。

總結(jié)

Git 是一個需要花時間去掌握的復雜工具。使用這些實踐可以幫助團隊成功地使用 Git 協(xié)作,無論他們的知識水平。
責編AJX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5141

    文章

    19528

    瀏覽量

    314920
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11459

    瀏覽量

    212784
  • Git
    Git
    +關(guān)注

    關(guān)注

    0

    文章

    203

    瀏覽量

    16112
收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    嵌入式硬件電路設(shè)計的六個基礎(chǔ)知識

    嵌入式設(shè)計是龐大的工程,今天就說說硬件電路設(shè)計方面的幾個注意事項,首先,咱們了解下嵌入式的硬件構(gòu)架。我們知道,CPU是這個系統(tǒng)的靈魂,所有的外圍配置都與其相關(guān)聯(lián),這也突出了嵌入式設(shè)計
    發(fā)表于 11-18 11:36 ?1995次閱讀

    如何高效學習嵌入式

    是對的?  在這里我推薦大家學習51系列的單片機,學好了就能畢業(yè)出去生存而學習了51+canbus能夠你如虎添翼;  三、 分模塊學習嵌入式系統(tǒng)  任何一門學問,難得就是入門;而入門,就是要有一完整的知識
    發(fā)表于 08-20 17:02

    嵌入式系統(tǒng)特點詳解 嵌入式系統(tǒng)的大特點

    分享嵌入式系統(tǒng)的大特點是什么?  嵌入式系統(tǒng)特點詳解 嵌入式系統(tǒng)的大特點:  1、嵌入式系統(tǒng)
    發(fā)表于 06-15 13:34

    嵌入式系統(tǒng)特點詳解 嵌入式系統(tǒng)的大特點

    分享嵌入式系統(tǒng)的大特點是什么?  嵌入式系統(tǒng)特點詳解 嵌入式系統(tǒng)的大特點:  1、嵌入式系統(tǒng)
    發(fā)表于 06-23 11:01

    嵌入式系統(tǒng)特點詳解 嵌入式系統(tǒng)的大特點

    分享嵌入式系統(tǒng)的大特點是什么?  嵌入式系統(tǒng)特點詳解 嵌入式系統(tǒng)的大特點:  1、嵌入式系統(tǒng)
    發(fā)表于 06-28 13:40

    嵌入式系統(tǒng)有什么安全技巧?

    中間人攻擊、黑客攻擊、間諜和篡改、內(nèi)存數(shù)據(jù)錯誤——嵌入式系統(tǒng)面臨各種威脅。儒卓力GDPR專家團隊主管兼嵌入式和無線部門營銷總監(jiān)Bertron Hantsche提供了六個安全技巧,以便增
    發(fā)表于 10-18 06:28

    如何嵌入式電路設(shè)計更高效

    MCU和電源的選擇您的嵌入式電路設(shè)計更高效
    發(fā)表于 04-02 07:16

    JPEG2000算法嵌入式塊編碼的DSP高效實現(xiàn)策略

    JPEG2000算法嵌入式塊編碼的DSP高效實現(xiàn)策略
    發(fā)表于 10-20 09:40 ?4次下載
    JPEG2000算法<b class='flag-5'>嵌入式</b>塊編碼的DSP<b class='flag-5'>高效</b>實現(xiàn)<b class='flag-5'>策略</b>

    基于ARM的嵌入式系統(tǒng)程序開發(fā)要點()--開發(fā)高效程序的技巧

    基于ARM的嵌入式系統(tǒng)程序開發(fā)要點()--開發(fā)高效程序的技巧
    發(fā)表于 10-25 11:31 ?4次下載
    基于ARM的<b class='flag-5'>嵌入式</b>系統(tǒng)程序開發(fā)要點(<b class='flag-5'>六</b>)--開發(fā)<b class='flag-5'>高效</b>程序的技巧

    六個ARM嵌入式系統(tǒng)設(shè)計實驗指導書資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是六個ARM嵌入式系統(tǒng)設(shè)計實驗指導書資料免費下載包括了:本文檔的主要內(nèi)容詳細介紹的是五ARM嵌入式系統(tǒng)設(shè)計實驗指導書資料免費下載包括了:實驗一 開機自啟動程
    發(fā)表于 10-15 16:31 ?16次下載
    <b class='flag-5'>六個</b>ARM<b class='flag-5'>嵌入式</b>系統(tǒng)設(shè)計實驗指導書資料免費下載

    高效和快速學習嵌入式系統(tǒng)的步驟有哪些

    使你更容易上手,并幫助你專注于更為重要的事情。實際上,六個步驟旨在使學習嵌入式系統(tǒng)更加高效和快速。所以,讓我們看看這些步驟。
    發(fā)表于 03-17 11:33 ?6次下載
    <b class='flag-5'>高效</b>和快速學習<b class='flag-5'>嵌入式</b>系統(tǒng)的步驟有哪些

    六個步驟使學習嵌入式系統(tǒng)更加高效和快速

    使你更容易上手,并幫助你專注于更為重要的事情。實際上,六個步驟旨在使學習嵌入式系統(tǒng)更加高效和快速。所以,讓我們看看這些步驟。
    發(fā)表于 03-25 15:46 ?8次下載
    <b class='flag-5'>六個</b>步驟使學習<b class='flag-5'>嵌入式</b>系統(tǒng)更加<b class='flag-5'>高效</b>和快速

    六個方面了解嵌入式的硬件構(gòu)架資料下載

    電子發(fā)燒友網(wǎng)為你提供六個方面了解嵌入式的硬件構(gòu)架資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-14 08:50 ?18次下載
    <b class='flag-5'>六個</b>方面了解<b class='flag-5'>嵌入式</b>的硬件構(gòu)架資料下載

    嵌入式軟件接口怎么測試,嵌入式系統(tǒng)接口測試策略.doc

    嵌入式系統(tǒng)接口測試策略嵌入式系統(tǒng)接口測試策略摘要:在日益廣泛應(yīng)用的嵌入式系統(tǒng)中,軟件測試因為系統(tǒng)平臺局限性需要重復下裝,耗費較大的測試資源與
    發(fā)表于 10-20 19:06 ?16次下載
    <b class='flag-5'>嵌入式</b>軟件接口怎么測試,<b class='flag-5'>嵌入式</b>系統(tǒng)接口測試<b class='flag-5'>策略</b>.doc

    IAR發(fā)布云端平臺,助力現(xiàn)代嵌入式軟件開發(fā)團隊

    該平臺為嵌入式軟件開發(fā)人員提供前所未有的自由度與靈活性,助力開發(fā)團隊在工具選擇和日常工作流中實現(xiàn)更高效協(xié)作與創(chuàng)新。
    的頭像 發(fā)表于 03-12 11:56 ?290次閱讀