日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
CI校驗不通過,竟然被自己坑死了

大家好,我是TianTian。

創(chuàng)新互聯(lián)公司專注于朝陽企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),電子商務(wù)商城網(wǎng)站建設(shè)。朝陽網(wǎng)站建設(shè)公司,為朝陽等地區(qū)提供建站服務(wù)。全流程按需定制網(wǎng)站,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)

分享的內(nèi)容是工作中一些瑣碎的事情。

記錄一下我是如何被git config坑的,導致CI校驗竟然不通過。

事故由來

當我把bug解決休掉后,順利跑通后?!庇淇臁暗难a完單測,提了個mr,CI校驗竟然攔下來了。

圖1

當時我的心情是復雜的,于是我點開了這個Details。

看了半天,沒有啥有價值的錯誤信息,接著索性打開這個流水線,看看藍盾里面具體是哪個子流失線出現(xiàn)了問題,找了半天后,發(fā)現(xiàn)了問題。

圖2

好離譜,為啥我git email盡然有QQ郵箱。

為了驗證我這個分支是否存在上述的這個問題,我得排查一下:

 
 
 
 
  1. git log | grep 'Author' | head 

看到結(jié)果的時候,我呆滯住了:

圖3

居然真的有個commit記錄真的是qq郵箱,事情大概清楚了,之前master分支存在問題,我刪掉項目,重新拉取一次master分支。

由于我全局配置的git config 是日常郵箱的問題,沒有在意這個問題,導致現(xiàn)在CI校驗不通過。

那么解決問題的辦法就是:

修改下commit歷史

如何解決

于是google一個方案,修改 git 歷史提交 commit 信息(重寫歷史),文檔鏈接:

https://www.jianshu.com/p/0f1fbd50b4be

大致意思通過 git rebase 命令,來完成操作:

 
 
 
 
  1. git rebase -i HEAD~3 
  2. // 修改近三次的信息 

將會得到如下的信息,這里的提交日志是和git log倒敘排列的,我們要修改的日志信息位于第一位:

 
 
 
 
  1.  1 pick 2275781 should find method from parent 
  2.  2 pick 223fc80 unit test case 
  3.  3 pick 9ac1179 update test case 
  4.  4 
  5.  5 # Rebase 79db0bd..9ac1179 onto 79db0bd (3 commands) 
  6.  6 # 
  7.  7 # Commands: 
  8.  8 # p, pick = use commit 
  9.  9 # r, reword = use commit, but edit the commit message 
  10. 10 # e, edit = use commit, but stop for amending 
  11. 11 # s, squash = use commit, but meld into previous commit 
  12. 12 # f, fixup = like "squash", but discard this commit's log message 
  13. 13 # x, exec = run command (the rest of the line) using shell 
  14. 14 # d, drop = remove commit 
  15. 15 # 
  16. 16 # These lines can be re-ordered; they are executed from top to bottom. 
  17. 17 # 
  18. 18 # If you remove a line here THAT COMMIT WILL BE LOST. 
  19. 19 # 
  20. 20 # However, if you remove everything, the rebase will be aborted. 
  21. 21 # 
  22. 22 # Note that empty commits are commented out 

我們可以根據(jù)Commands信息來修改這些信息,來選擇我們需要的參數(shù),最后來達到我們的目的。

其他思路

想到我修改的代碼,跟主干代碼master相差的其實很小,那么我可以做到代碼回滾,根據(jù)我們的id回退到指定的版本,主要通過的命令就是 git reset,然后選擇對于的參數(shù),也能滿足我們的需求。

reset的話,通常有三種命令,找了一個不錯的文章,分享一下:

https://www.jianshu.com/p/c2ec5f06cf1a

一般來說,有hard,soft,mixed,三種模式,根據(jù)不同的場景來做選擇。

最后

不說了,我準備寫bug去了。


名稱欄目:CI校驗不通過,竟然被自己坑死了
文章源于:http://m.5511xx.com/article/ccoceis.html