<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一文讀懂 CI/CD 工具

          共 2336字,需瀏覽 5分鐘

           ·

          2020-08-11 18:29

          點(diǎn)擊關(guān)注上方“杰哥的IT之旅”,
          后臺回復(fù)“Python自動化”獲取精心整理的PDF。

          作者?|?Mallaidh?Mleziva?

          譯者?|?Arvin,責(zé)編?|?王曉曼?

          頭圖?|?CSDN?下載自東方?IC?

          出品?| CSDN(ID:CSDNnews)

          【導(dǎo)讀關(guān)于持續(xù)集成(CI)和持續(xù)交付(CD)的資源和信息有很多,但是你了解為什么我們需要CI和CD嗎?
          以下為譯文:
          關(guān)于持續(xù)集成(CI)和持續(xù)交付(CD)的資源和信息有很多,包括定義、最佳實(shí)踐和操作指南。此外,每天都有大量的 CI /CD 工具上市。但是為什么我們需要 CI 和 CD?
          讓我們從一些基本信息開始介紹。

          什么是持續(xù)集成和持續(xù)交付?

          有很多定義在流傳,但這里的兩個定義抓住了這兩個過程的本質(zhì):
          “持續(xù)集成是一種開發(fā)實(shí)踐,要求開發(fā)人員每天多次將代碼集成到共享存儲庫中?!保▉碓矗篢houghtWorks)
          “持續(xù)交付是一種軟件工程方法,團(tuán)隊(duì)可以在短時間內(nèi)生產(chǎn)軟件,確保可以在任何時候可靠地發(fā)布軟件,并且在可以手動發(fā)布軟件?!保▉碓矗壕S基百科)
          這聽起來不錯。但是你可能會問,“這有什么大不了的?” 要回答這個問題,我們需要想象一個沒有CI / CD的世界,看看為什么這么多人跳上CI / CD的列車。
          假如沒有CI / CD

          1、交付緩慢
          手動任務(wù)對于完成任務(wù)的人來說是乏味且令人沮喪的。這些任務(wù)減慢了交付過程,并最終阻礙了創(chuàng)新。如果競爭對手使用自動化而你沒有使用自動化,那么競爭對手就贏了。等待部署的代碼是不賺錢的。
          2、缺乏可見性
          “錯誤發(fā)生在哪里?是什么原因造成的?每個環(huán)境中部署了什么?我們可以把程序回退嗎?”
          如果沒有CI / CD這些就是你每天都會問并且試圖回答的問題。
          3、錯誤和用戶不滿
          沒有自動化就意味著用戶會出錯。每個手動任務(wù)都為錯誤打開了大門。這些錯誤經(jīng)常發(fā)生并且難以解決。
          另外,由于不經(jīng)常合并大量代碼,因此在漫長的開發(fā)周期結(jié)束時會發(fā)現(xiàn)錯誤,修復(fù)這些錯誤可能更具挑戰(zhàn)性,或者對難于排除故障的代碼庫中的其他部分產(chǎn)生影響。
          錯誤會導(dǎo)致軟件交付過程中涉及的個人和部門之間關(guān)系緊張。運(yùn)維部門將糟糕的代碼歸咎于開發(fā)人員。開發(fā)人員對所有手動任務(wù)感到沮喪,并指責(zé)QA沒能捕獲錯誤。當(dāng)客服人員必須解決最終用戶的不滿時,他們會責(zé)怪參與過程的每個人。最終,這個組織會缺乏協(xié)作和工作友誼。
          ?
          CI/CD 優(yōu)點(diǎn)

          1、交付更快
          當(dāng)今的商業(yè)世界需要以往任何時候都需要更快的創(chuàng)新。借助自動化,你可以更快地交付產(chǎn)品,并獲得最終用戶的反饋,因?yàn)樾枰瓿傻氖謩尤蝿?wù)更少,你可以更頻繁地發(fā)布較小的更改來促進(jìn)生產(chǎn)。CI / CD可以使你更好地參與市場競爭。
          2、增加可見性
          使用CI / CD,測試和部署過程是透明的。任何問題都幾乎可以立即看到,并且可以迅速找到原因,從而減少了常規(guī)方式在確定原因時所涉及的猜測。
          由于漏洞易于跟蹤,因此人們要負(fù)起各自的責(zé)任。這并不意味著是時候進(jìn)行互相指責(zé)了,而是說負(fù)責(zé)這部分代碼的人是解決問題的最佳人選。最終,正常運(yùn)行的時間增加了。
          3、消除錯誤?
          發(fā)生錯誤是很難避免的。現(xiàn)代軟件功能,項(xiàng)目和應(yīng)用程序很復(fù)雜。一個版本有很多地方可能出錯。畢竟,每個開發(fā)人員都是人,都可能犯錯。持續(xù)集成消除了其中的一些復(fù)雜性,減少了問題所在的領(lǐng)域,并增加了成功的可能性。自動化對于減少人為錯誤是必不可少的。如果計(jì)算機(jī)可以執(zhí)行任務(wù),請讓計(jì)算機(jī)執(zhí)行該任務(wù)。
          持續(xù)集成的兩個主要原則是頻繁運(yùn)行代碼以及自動執(zhí)行軟件交付生命周期的構(gòu)建和測試部分。每天多次運(yùn)行代碼集成意味著可以更快地發(fā)現(xiàn)錯誤,因?yàn)樾枰龅耐诰蚬ぷ鞲倬涂梢愿斓丶m正錯誤。
          開發(fā)人員的手工任務(wù)更少,這意味著出現(xiàn)人為錯誤的機(jī)會更少。運(yùn)維會收到高質(zhì)量的代碼。QA需要解決的問題較少??蛻舴?wù)不會收到那么多惱人的電子郵件和電話。每個人的工作都得到改善。
          4、釋放資源
          如果將可重復(fù)和可預(yù)測的任務(wù)移交給自動化,則可以為開發(fā)人員騰出時間,這樣他們可以做自己喜歡的事情:開發(fā)。將平凡的重復(fù)性任務(wù)留給計(jì)算機(jī)(它們不介意)),讓你的開發(fā)人員做更有成就感和回報(bào)的高級工作!
          使用CI / CD,同樣數(shù)量的資源可以進(jìn)一步分配。因此,在保持原始業(yè)務(wù)約束的同時,還可以完成更多工作。
          5、最終用戶更滿意
          更快,更頻繁的發(fā)布和更少的錯誤會促使開發(fā)人員與其他業(yè)務(wù)部門之間建立起信任,按時完成任務(wù),獲得可靠的結(jié)果,可以使最終用戶更加滿意。CI / CD是雙贏的。
          如果沒有CI / CD,交付緩慢,缺乏可見性,錯誤頻繁發(fā)生,最終用戶會感到不滿意。但是,有了CI / CD和自動化,更頻繁的集成,更好的可見性,更友好的協(xié)作和更容易定位錯誤的解決方案,所有這些問題就消除了。難怪越來越多的企業(yè)正在朝著敏捷方法論和自動化流程邁進(jìn)!
          原文:
          https://dzone.com/articles/why-the-world-needs-cicd
          本文為 CSDN 翻譯,轉(zhuǎn)載請注明來源出處。
          - End -

          本公眾號全部博文已整理成一個目錄,請?jiān)诠娞柡笈_回復(fù)「m」獲取!

          推薦閱讀:
          1、學(xué)生黨學(xué)編程,有這個開源項(xiàng)目就夠了!
          2、太贊了!程序員應(yīng)該訪問的最佳網(wǎng)站都在這里了!
          3、再見,Navicat!
          4、一款基于 Python 語言的 Linux 資源監(jiān)視器!
          5、900 多道 LeetCode 題解,這個 GitHub 項(xiàng)目值得 Star!
          6、SSH 只能用于遠(yuǎn)程 Linux 主機(jī)?那說明你見識太小了!

          好文和朋友一起看~
          瀏覽 89
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  天堂国产一区二区三区 | 一本大道久久久久 | 青娱乐亚洲精品视频 | 免费18禁 | 色秘 乱码一区二区三区唱戏 |