3.構(gòu)建錯誤是怎么來的
永昌網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護(hù)。成都創(chuàng)新互聯(lián)公司公司2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。回到工位,曉川跟師父聊起這些。師父說:“老劉當(dāng)然沒法命令你了。他只是項目經(jīng)理,不是你部門經(jīng)理。他要是敢指責(zé)你,你就跟咱們領(lǐng)導(dǎo)說,有人給你撐腰。至于他不告訴你該怎么做,那要么是他也不知道,要么是他不愿意從他嘴里說出來。這人一看就是個老油條,你小心點兒。 ”
“謝謝師父提醒。 ”
都說公司里面有辦公室政治,看來確實是這樣啊,曉川心想。師父年長我很多,這方面我要多聽聽他怎么說。不過,到底為什么構(gòu)建總是出錯呢?老劉說得也對,我得調(diào)查分析一下才能知道。
曉川著手調(diào)查。就以上個星期剛做完的集成為例吧。每次構(gòu)建出錯,我是定位到出錯的源文件,然后通過源代碼版本控制工具查一下這個文件昀近是誰動過,然后就找相應(yīng)的程序員去改正,然后把改正直接檢入到集成分支。嗯,那我去看一下在集成期間,是誰把改正檢入到集成分支上的,就能知道是誰的提交造成了問題。
曉川去查看源代碼版本控制工具的版本庫中集成分支上昀近所做的改動。咦,都是曉川改的……哦,是因為程序員都是跑到我的計算機(jī)上改的,所以都是以我的名義檢入的。唉,這么查,查不出來了。
曉川只好根據(jù)每次改動所改的具體文件去查。因為修改這個文件,讓編譯能通過,那意味著這個文件的前一次改動是有問題的。這樣,再去查這個文件當(dāng)初是誰在哪個任務(wù)分支上改的,就能知道是誰在哪兒惹的禍了。
就這樣,曉川用了大半天的時間,到快下班的時候,整理出了一張表,表明這次集成遇到的每個構(gòu)建錯誤,各是由誰,在哪個提交中帶進(jìn)來的。下班啦!
下了班,曉川在外面隨便買了點東西吃。吃著吃著,覺得不對勁兒。倒不是吃的東西不對勁兒,而是想起了自己下班前的工作成果,覺得不對勁兒。
每個構(gòu)建錯誤,確實是某個提交帶來的,確實是因為某個提交的存在而存在的。如果沒有那個提交,就沒有相應(yīng)的構(gòu)建錯誤。但是,這并不能說,這個提交本身是有問題的,是有構(gòu)建錯誤的。因為程序員在提交前構(gòu)建的內(nèi)容,并不是我構(gòu)建的內(nèi)容。我構(gòu)建的內(nèi)容,是多個提×××并到一起之后的內(nèi)容。
事實上,這正是老劉質(zhì)疑我的地方。“如果程序員的提交都沒問題,你確定你構(gòu)建的時候就肯定沒問題么?”我那時也覺得有點不對勁兒,自己的思路不嚴(yán)謹(jǐn)。怎么今天下午調(diào)查的時候又給忘了!不成,我得繼續(xù)研究清楚。不然一周后,新的一輪構(gòu)建又要開始了,就顧不上了。
星期二上班,曉川來到工位,解鎖計算機(jī),開始復(fù)現(xiàn)程序員在提交前的環(huán)境。這個比較簡單,因為程序員工作在任務(wù)分支上,在提交前把所有要提交的內(nèi)容都保存在任務(wù)分支上,所以,只要把任務(wù)分支末端的源代碼取出來,放到本地工作區(qū)里,就得到程序員在提交前的環(huán)境了。
在這樣的工作區(qū)里,曉川開始編譯構(gòu)建。構(gòu)建要一個多小時的時間,因為沒法做增量構(gòu)建,只能全量構(gòu)建。一個多小時后,構(gòu)建結(jié)果出來了,構(gòu)建是成功的!
曉川又做了幾個試驗。結(jié)果不盡相同。有的是成功的,有的報錯。雖然不能完全確定,但是憑記憶,應(yīng)該就是在集成分支上構(gòu)建時報的錯。這么說,集成分支上構(gòu)建報錯,有兩種可能,一種是提交本身的問題,一種是幾個提交相互合并帶來的問題。在數(shù)量上,大概是一半兒一半兒。
得到了分析結(jié)果,曉川覺得挺有成就感。高興的時候想想,嗯,集成這工作呢,其實也挺輕松的,因為大部分時間都在等。等著程序員解決代碼合并沖突,等著構(gòu)建。構(gòu)建失敗了,等著相關(guān)的程序員修復(fù)。而有時候是大家一起陪著等。等著把提交的代碼都合并到集成分支,相關(guān)的程序員們才能回家。等出了基線,依賴于基線中內(nèi)容的新的任務(wù)才能開始。等著等著,時間就等過去了。青春就等過去了。
本文節(jié)選自《軟件集成策略》一書
董越 著.
電子工業(yè)出版社出版。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
當(dāng)前文章:軟件集成策略故事連載----構(gòu)建錯誤是怎么來的-創(chuàng)新互聯(lián)
分享地址:http://jinyejixie.com/article16/decdgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站策劃、Google、網(wǎng)頁設(shè)計公司、網(wǎng)站設(shè)計公司、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容