亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

淺析git server“丟失”commit問(wèn)題

 更新時(shí)間:2020年05月08日 11:41:19   作者:深邃老夏  
這篇文章主要介紹了git server“丟失”commit問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1 背景

gitlab某倉(cāng)庫(kù)有同事發(fā)現(xiàn)部分代碼文件內(nèi)容丟失,具體表現(xiàn)

A. dev分支commit信息是連續(xù)的,看不出明顯的大時(shí)間范圍批量丟失

B. 以SuncardCashier/control/CSymbolEdit.h為例,在1c88f613下只能看到2個(gè)歷史相關(guān)提交

但是1天前提交的bfff1f51,也有此文件的修改提交,意味著bfff1f51這個(gè)提交“丟失”了

2 追查過(guò)程

2.1 gitlab server側(cè)尋找線索

表面上像是gitlab server出現(xiàn)了某些問(wèn)題導(dǎo)致“丟失”,所以查看/var/log/gitlab/gitlab-rails/下的production.log日志(production.log是當(dāng)天的,production.log.31.gz是更早日期壓縮后的,需要解壓查看)。

但是通過(guò)查看日志只有一些查看上述commit的api access log,并無(wú)有效線索。并且同時(shí)段的其他倉(cāng)庫(kù)可以看到commit信息

2.2 gitlab network graph尋找線索

此時(shí)懷疑是有人在本地誤使用rebase等命令再force push導(dǎo)致server的commit丟失,通過(guò)gitlab的network graph是一個(gè)高效的梳理手段

首先在network grapsh搜索bfff1f51(灰色箭頭指向),這也說(shuō)明gitlab server其實(shí)有此commit數(shù)據(jù)

這里不同顏色線相當(dāng)于是dev分支不同的提交人,最右側(cè)紅線為主分支,其中線之間的箭頭是merge。查看圖中bfff1f51之后各線最鄰近的merge,基本都還可以看到bfff1f51這個(gè)提交,說(shuō)明正常。除了紅色箭頭標(biāo)識(shí)的左側(cè)綠線!

此提交為d5049b0,可以看到該文件已經(jīng)沒(méi)有bfff1f51提交了

繼續(xù)到綠線分支更后的操作追查,之后它merge到了粉線(左起第二),粉線再merge到了蘭線(左起第三),粉線再merge到了紅線(左起第四)。而“丟失”情況如下圖示,即被綠線merge前都正常,merge后都丟失了

3 結(jié)論

至此,可以基本確定是d5049b0進(jìn)行了類似rebase回滾到之前提交的行為(其commit message也填寫(xiě)的是“沖突”),另外可以看到該倉(cāng)庫(kù)設(shè)置的protected branch只有master,無(wú)dev,所以是具備force push條件的

4 建議的改進(jìn)措施:

A. 將dev等需重點(diǎn)分支禁止force push

B. 開(kāi)發(fā)人員對(duì)于git回滾等操作需謹(jǐn)慎對(duì)待

“用來(lái)記錄生命的演進(jìn),故事的迭代。期望做一個(gè)給大家?guī)?lái)幫助和思考的平臺(tái)” ——深邃老夏

到此這篇關(guān)于淺析git server“丟失”commit問(wèn)題的文章就介紹到這了,更多相關(guān)git server“丟失”commit內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 整理很詳細(xì)的Java正則表達(dá)式使用大全

    整理很詳細(xì)的Java正則表達(dá)式使用大全

    這篇文章為大家整理了很詳細(xì)的Java正則表達(dá)式使用大全,大家在使用Java正則表達(dá)式的時(shí)候可查閱這篇文章,認(rèn)為不錯(cuò)的朋友可以收藏起來(lái)
    2015-12-12
  • idea配置Tomcat時(shí)沒(méi)有Artifacts選項(xiàng)的解決方法

    idea配置Tomcat時(shí)沒(méi)有Artifacts選項(xiàng)的解決方法

    本文主要介紹了idea配置Tomcat時(shí)沒(méi)有Artifacts選項(xiàng)的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 分布式框架Zookeeper?api的使用介紹

    分布式框架Zookeeper?api的使用介紹

    Zookeeper作為?個(gè)分布式框架,主要用來(lái)解決分布式?致性問(wèn)題,它提供了簡(jiǎn)單的分布式原語(yǔ),并且對(duì)多種編程語(yǔ)?提供了API,所以接下來(lái)重點(diǎn)來(lái)看下Zookeeper的java客戶端API使用方式
    2022-09-09
  • MyBatis XPathParser解析器使用范例詳解

    MyBatis XPathParser解析器使用范例詳解

    這篇文章主要介紹了關(guān)于MyBatis中解析器XPathParser的實(shí)際使用實(shí)踐,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2022-07-07
  • Spark學(xué)習(xí)筆記Spark Streaming的使用

    Spark學(xué)習(xí)筆記Spark Streaming的使用

    這篇文章主要介紹了Spark學(xué)習(xí)筆記Spark Streaming的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Java將word文件轉(zhuǎn)成pdf文件的操作方法

    Java將word文件轉(zhuǎn)成pdf文件的操作方法

    這篇文章主要介紹了Java將word文件轉(zhuǎn)成pdf文件的操作方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-09-09
  • springboot+idea熱部署的實(shí)現(xiàn)方法(自動(dòng)刷新)

    springboot+idea熱部署的實(shí)現(xiàn)方法(自動(dòng)刷新)

    這篇文章主要介紹了springboot+idea熱部署的實(shí)現(xiàn)方法(自動(dòng)刷新),本文分步驟通過(guò)實(shí)例代碼截圖相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • spring boot整合redis實(shí)現(xiàn)shiro的分布式session共享的方法

    spring boot整合redis實(shí)現(xiàn)shiro的分布式session共享的方法

    本篇文章主要介紹了spring boot整合redis實(shí)現(xiàn)shiro的分布式session共享的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • Java實(shí)現(xiàn)年獸大作戰(zhàn)游戲詳解

    Java實(shí)現(xiàn)年獸大作戰(zhàn)游戲詳解

    春節(jié)要到了,看慣了前端各種小游戲,確實(shí)做得很好,很精致。本文將為大家介紹一款java版本的年獸大作戰(zhàn)游戲,感興趣的小伙伴可以試一試
    2022-01-01
  • Java開(kāi)發(fā)微信Navicat支付完整版

    Java開(kāi)發(fā)微信Navicat支付完整版

    這篇文章主要介紹了Java開(kāi)發(fā)微信Navicat支付完整版,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08

最新評(píng)論