久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

代碼評(píng)審工程化:用open-code-review構(gòu)建高效自動(dòng)化評(píng)審體系

代碼評(píng)審工程化:用open-code-review構(gòu)建高效自動(dòng)化評(píng)審體系 代碼評(píng)審這事兒做了這么多年我見(jiàn)過(guò)太多團(tuán)隊(duì)把 Review 做成“走過(guò)場(chǎng)”。打開(kāi) Pull Request 頁(yè)面掃一眼標(biāo)題鼠標(biāo)滾輪滑到最底部點(diǎn)一下 Approve完事。你以為你在做質(zhì)量保障實(shí)際上你只是在給流水線蓋章。真正的問(wèn)題——邏輯缺陷、邊界遺漏、可維護(hù)性隱患——全都被“看起來(lái)能跑”這個(gè)標(biāo)準(zhǔn)放過(guò)去了。所以當(dāng)我看到 open-code-review 這類項(xiàng)目時(shí)第一反應(yīng)是終于有人把“評(píng)審”這件事本身當(dāng)成一個(gè)工程問(wèn)題來(lái)對(duì)待了。這不是一個(gè)簡(jiǎn)單的“給代碼挑毛病”的工具它是一整套把代碼評(píng)審流程化、自動(dòng)化、數(shù)據(jù)化的開(kāi)放方案。它能幫你解決三件事第一把評(píng)審從“憑感覺(jué)”變成“按規(guī)則”第二把評(píng)審質(zhì)量從“依賴某個(gè)人厲害”變成“依賴系統(tǒng)兜底”第三把評(píng)審產(chǎn)生的知識(shí)從“散落在評(píng)論里”變成“沉淀到流程里”。適合誰(shuí)用適合那些 PR 數(shù)量多、團(tuán)隊(duì)規(guī)模在 5 到 50 人之間、覺(jué)得評(píng)審很重但不敢砍掉的團(tuán)隊(duì)也適合想推動(dòng)工程效能改進(jìn)的技術(shù) Leader 和一線程序員。1. 內(nèi)容整體設(shè)計(jì)與思路拆解1.1 傳統(tǒng)評(píng)審為什么越做越敷衍我踩過(guò)不少坑也幫別人填過(guò)不少坑。傳統(tǒng)評(píng)審流于形式原因繞不開(kāi)這幾個(gè)首先評(píng)審時(shí)機(jī)太晚。很多團(tuán)隊(duì)是等代碼全部寫完、測(cè)試跑完、才發(fā)起評(píng)審。這時(shí)候修改成本已經(jīng)很高評(píng)審人就算發(fā)現(xiàn)設(shè)計(jì)層面的問(wèn)題也沒(méi)人愿意推翻重來(lái)。最后評(píng)審?fù)嘶伞疤岢鲂?wèn)題、修修補(bǔ)補(bǔ)”的雞毛蒜皮環(huán)節(jié)大問(wèn)題帶病上線。其次評(píng)審帶寬被浪費(fèi)。每個(gè)人都在看每一行代碼沒(méi)有分層、沒(méi)有重點(diǎn)。結(jié)果就是審計(jì)邏輯沒(méi)人細(xì)看變量命名被反復(fù)討論。真正值得花時(shí)間的核心路徑審查反而被淹沒(méi)在格式和風(fēng)格的噪音里。最關(guān)鍵的是評(píng)審沒(méi)有閉環(huán)。評(píng)論提了改不改看心情Review 通過(guò)后討論里的要點(diǎn)沒(méi)人歸納成知識(shí)庫(kù)同樣的錯(cuò)誤下個(gè)迭代繼續(xù)犯。評(píng)審變成了一次性消耗品而不是團(tuán)隊(duì)能力的增量。1.2 open-code-review 的核心設(shè)計(jì)目標(biāo)基于上面這些痛點(diǎn)open-code-review 在設(shè)計(jì)上定了幾條硬性原則一切規(guī)則前置。能自動(dòng)化檢查的東西比如格式、靜態(tài)檢查、基礎(chǔ)單測(cè)覆蓋盡量在提交階段就攔下來(lái)不要浪費(fèi)評(píng)審人的注意力。評(píng)審要有層級(jí)。按改動(dòng)風(fēng)險(xiǎn)分路徑小改動(dòng)走輕量通道核心改動(dòng)走多人會(huì)審。讓評(píng)審人的時(shí)間花在刀刃上。過(guò)程必須透明可查。誰(shuí)提的評(píng)論、誰(shuí)解決的、阻塞了多久、合入后有沒(méi)有引發(fā)線上問(wèn)題全部沉淀成數(shù)據(jù)。沒(méi)有數(shù)據(jù)就沒(méi)有改進(jìn)。反饋必須閉環(huán)。每個(gè)評(píng)審意見(jiàn)要么被解決、要么被顯式拒絕不能懸空。高頻問(wèn)題反哺到檢查單和自動(dòng)化規(guī)則里讓團(tuán)隊(duì)越評(píng)越輕松。1.3 整體架構(gòu)上分為幾層從落地角度我把 open-code-review 的架構(gòu)拆成四層平時(shí)跟團(tuán)隊(duì)講也是這么講的入口層對(duì)接 Git 平臺(tái)的 Webhook 和 API捕捉 MR/PR 的創(chuàng)建、更新、評(píng)論、合入事件。這層是“感知系統(tǒng)”保證不管代碼從哪兒來(lái)都能進(jìn)入評(píng)審軌道。規(guī)則層這里是最花心思的地方。包括文件路徑匹配規(guī)則、評(píng)審人自動(dòng)分配策略、檢查單模板、風(fēng)險(xiǎn)分級(jí)標(biāo)準(zhǔn)。規(guī)則可以寫在配置文件里也可以做成在線可視化配置。執(zhí)行層跑自動(dòng)化檢查、收集元數(shù)據(jù)、觸發(fā)機(jī)器人評(píng)論、跟蹤評(píng)論解決狀態(tài)。這層是“手腳”負(fù)責(zé)把規(guī)則變成具體動(dòng)作。沉淀層評(píng)審記錄、耗時(shí)統(tǒng)計(jì)、缺陷類型分類、知識(shí)庫(kù)索引。這層是“大腦”讓每次評(píng)審都在為下一次評(píng)審積累經(jīng)驗(yàn)。注意這套分層不是一次建成的。我建議先跑通入口層和執(zhí)行層有了一定數(shù)據(jù)量之后再建設(shè)規(guī)則層和沉淀層。一上來(lái)想做得大而全大概率項(xiàng)目會(huì)爛尾。2. 核心細(xì)節(jié)解析與實(shí)操要點(diǎn)2.1 按風(fēng)險(xiǎn)分級(jí)而不是事無(wú)巨細(xì)一把抓這是整個(gè)方案里我最想強(qiáng)調(diào)的一個(gè)點(diǎn)。很多團(tuán)隊(duì)推行代碼評(píng)審失敗的原因就是不分場(chǎng)景、一律全套流程。改一個(gè)文案要走和核心支付鏈路一模一樣的評(píng)審流程時(shí)間長(zhǎng)了誰(shuí)都會(huì)煩。open-code-review 的做法是把變更分成三類低風(fēng)險(xiǎn)變更文檔、前端樣式、文案調(diào)整、單文件小改動(dòng)。這類走輕量通道一個(gè) Reviewer 即可重點(diǎn)看邏輯對(duì)錯(cuò)不做多人討論。常規(guī)變更涉及業(yè)務(wù)邏輯、接口調(diào)整、單模塊內(nèi)的功能開(kāi)發(fā)。需要兩位 Reviewer并且要按模塊匹配熟悉度。高風(fēng)險(xiǎn)變更跨模塊重構(gòu)、數(shù)據(jù)庫(kù)變更、鑒權(quán)邏輯、支付/訂單等核心鏈路。這類必須多人會(huì)審甚至需要提前組織方案評(píng)審會(huì)議。風(fēng)險(xiǎn)分級(jí)不是拍腦袋定的我建議團(tuán)隊(duì)坐下來(lái)拉一次歷史故障清單把過(guò)去三個(gè)月出過(guò)線上問(wèn)題或接近出問(wèn)題的變更類型列出來(lái)對(duì)照著定級(jí)。這樣做出來(lái)的分級(jí)規(guī)則團(tuán)隊(duì)成員才會(huì)服氣。2.2 自動(dòng)化門禁要卡在評(píng)審之前評(píng)審人最怕的事情是打開(kāi)一個(gè) 2000 行的 PR里面還有一半代碼沒(méi)過(guò)靜態(tài)檢查。open-code-review 把自動(dòng)化門禁放在評(píng)審人介入之前目標(biāo)很簡(jiǎn)單讓評(píng)審人第一眼看到的是一個(gè)“干凈的變更”。具體來(lái)說(shuō)一個(gè) PR 要進(jìn)入人工評(píng)審環(huán)節(jié)必須先過(guò)這幾道閘靜態(tài)檢查零新增告警。這里注意是“新增”存量告警可以單獨(dú)建技術(shù)債清單不要阻塞在新代碼評(píng)審里。單元測(cè)試通過(guò)且覆蓋率不降。新代碼必須有對(duì)應(yīng)測(cè)試核心模塊的覆蓋率閾值要單獨(dú)設(shè)置。依賴安全掃描通過(guò)。引入的新依賴如果有已知高危漏洞直接打回。變更描述完整。改了什么、為什么改、測(cè)試了哪些場(chǎng)景這些信息不齊評(píng)審人沒(méi)法下手。門檻卡嚴(yán)之后評(píng)審人的效率會(huì)大幅提升。我在團(tuán)隊(duì)里跑了一段時(shí)間之后發(fā)現(xiàn)評(píng)審?fù)ㄟ^(guò)的平均時(shí)間從 28 小時(shí)降到了 11 小時(shí)主要就是因?yàn)樵u(píng)審人不用浪費(fèi)時(shí)間在低級(jí)問(wèn)題上。2.3 評(píng)論規(guī)范與機(jī)器人協(xié)作評(píng)審意見(jiàn)本身的表達(dá)方式直接影響評(píng)審質(zhì)量。我剛帶團(tuán)隊(duì)的時(shí)候經(jīng)??吹接腥嗽u(píng)論“這里寫得不OK”這種評(píng)論基本沒(méi)有價(jià)值。open-code-review 在評(píng)論環(huán)節(jié)做了兩個(gè)約束結(jié)構(gòu)化評(píng)論模板。每條評(píng)論必須包含問(wèn)題類型邏輯錯(cuò)誤、性能隱患、可維護(hù)性、安全性、嚴(yán)重程度阻塞/建議/可選、復(fù)現(xiàn)或理解上下文。這樣被評(píng)審人處理起來(lái)效率高后續(xù)統(tǒng)計(jì)缺陷類型也有數(shù)據(jù)基礎(chǔ)。機(jī)器人自動(dòng)匯總。評(píng)審機(jī)器人會(huì)把零散的評(píng)論按文件位置、嚴(yán)重程度聚合在每次代碼更新后給出總覽“目前還有 2 個(gè)阻塞問(wèn)題未解決分布在 core/auth.py 和 api/order.py其余 5 個(gè)建議項(xiàng)可以延后處理?!边@套機(jī)制跑起來(lái)之后最大的變化是評(píng)論的“對(duì)話感”消失了取而代之的是“工單感”。每一條意見(jiàn)都像一個(gè)清晰的任務(wù)處理完一個(gè)勾掉一個(gè)評(píng)審體驗(yàn)立刻清爽了很多。2.4 異步評(píng)審為主同步討論用于關(guān)鍵節(jié)點(diǎn)不少團(tuán)隊(duì)把評(píng)審做成開(kāi)會(huì)這其實(shí)是效率黑洞。代碼評(píng)審應(yīng)該以異步為主——各看各的在 PR 評(píng)論區(qū)討論。但純異步也有問(wèn)題高風(fēng)險(xiǎn)變更如果只靠評(píng)論區(qū)來(lái)回交流方案層面很容易無(wú)法收斂。open-code-review 的實(shí)踐是劃分場(chǎng)景純異步評(píng)審常規(guī)變更。每個(gè)評(píng)審人在自己時(shí)間窗口內(nèi)完成審查評(píng)論區(qū)是唯一的討論場(chǎng)所要求“問(wèn)題不過(guò)夜、評(píng)論不積壓”。同步會(huì)審高風(fēng)險(xiǎn)變更在代碼評(píng)審之前先做設(shè)計(jì)評(píng)審。重點(diǎn)看整體方案看接口設(shè)計(jì)、數(shù)據(jù)流向、異常處理策略這部分的討論產(chǎn)物會(huì)作為評(píng)審附件掛到 PR 描述里。這種做法背后的邏輯很簡(jiǎn)單代碼評(píng)審解決的是“代碼對(duì)不對(duì)”的問(wèn)題而同步會(huì)審解決的是“方向?qū)Σ粚?duì)”的問(wèn)題。方向錯(cuò)了代碼再對(duì)也沒(méi)用。把這兩個(gè)問(wèn)題混在一起評(píng)審效率一定是最低的。3. 實(shí)操過(guò)程與核心環(huán)節(jié)實(shí)現(xiàn)3.1 項(xiàng)目初始化與規(guī)則注冊(cè)落地 open-code-review 的第一步是把基礎(chǔ)設(shè)施搭好。我以最常見(jiàn)的 GitLab / GitHub 環(huán)境為例講一下核心環(huán)節(jié)怎么做。先定義倉(cāng)庫(kù)的配置文件比如.code-review.yml這是整套方案的“憲法”review: # 風(fēng)險(xiǎn)分級(jí)路徑 risk_rules: high: paths: - core/** - payment/** - db/migrations/** min_reviewers: 3 require_design_review: true middle: paths: - api/** - services/** min_reviewers: 2 low: paths: - docs/** - styles/** - tests/** min_reviewers: 1 # 自動(dòng)化門禁 gates: static_check: true unit_test: true coverage_threshold: 80 security_scan: true配置文件寫好后注冊(cè) Webhook讓 PR 的創(chuàng)建和更新事件推送到 open-code-review 的服務(wù)端。服務(wù)端解析配置、進(jìn)行分級(jí)然后調(diào)用 Git 平臺(tái)的 API 自動(dòng)指派評(píng)審人、發(fā)布機(jī)器人評(píng)審意見(jiàn)。這里有一個(gè)非常關(guān)鍵的細(xì)節(jié)評(píng)審人的自動(dòng)指派不要只看“誰(shuí)有空”要看“誰(shuí)最了解這塊代碼”。建議通過(guò) Git 歷史文件所有者git blame 或 CHANGES 文件來(lái)計(jì)算代碼歸屬再匹配評(píng)審人。否則分配的評(píng)審人大概率只能提出泛泛的格式建議抓不住核心邏輯問(wèn)題。3.2 一個(gè)完整的評(píng)審閉環(huán)長(zhǎng)什么樣我把一次完整的評(píng)審流程描述出來(lái)方便你對(duì)照自己的團(tuán)隊(duì)流程找差距第一步開(kāi)發(fā)者提交 MR變更描述模板自動(dòng)展開(kāi)。包括背景、改動(dòng)清單、影響面、測(cè)試記錄、自測(cè)結(jié)果。描述不完整會(huì)被機(jī)器人標(biāo)記。第二步自動(dòng)化門禁啟動(dòng)。通常五分鐘內(nèi)完成靜態(tài)檢查、測(cè)試、覆蓋率比對(duì)。任意一項(xiàng)不通過(guò)MR 狀態(tài)被標(biāo)記為 blocked系統(tǒng)不會(huì)分配人工評(píng)審人。第三步門禁通過(guò)后系統(tǒng)按風(fēng)險(xiǎn)等級(jí)分配評(píng)審人。評(píng)審人收到通知在自己的時(shí)間窗口內(nèi)審查代碼。每一條評(píng)論都結(jié)構(gòu)化記錄到數(shù)據(jù)庫(kù)中。第四步開(kāi)發(fā)者回應(yīng)評(píng)論??梢灾苯釉谠u(píng)論區(qū)回復(fù)“已修改”修改后推送新 commit機(jī)器人自動(dòng)標(biāo)記該評(píng)論為“已解決待驗(yàn)證”。如果開(kāi)發(fā)者不同意意見(jiàn)必須選擇“拒絕”并填寫理由。第五步所有阻塞級(jí)評(píng)論解決后評(píng)審人點(diǎn)擊 ApproveMR 才有權(quán)限合入。合入前系統(tǒng)還會(huì)檢查一遍測(cè)試狀態(tài)防止合入窗口期有人代碼破壞。這套閉環(huán)跑穩(wěn)定之后團(tuán)隊(duì)評(píng)審的紀(jì)律性會(huì)變得非常強(qiáng)。新人也知道怎么參與評(píng)審了因?yàn)槊恳徊蕉加心0濉⒂刑崾?、有記錄?.3 檢查單體系建設(shè)把經(jīng)驗(yàn)變成流程檢查單是 open-code-review 里非常關(guān)鍵的一環(huán)。我見(jiàn)過(guò)太多團(tuán)隊(duì)評(píng)審質(zhì)量靠“個(gè)人能力”組里有大神在就穩(wěn)大神走了就垮。檢查單解決了這個(gè)問(wèn)題它把隱性知識(shí)顯性化。前端變更檢查單示例狀態(tài)更新是不是用了不可變方式組件卸載后有沒(méi)有清理副作用關(guān)鍵交互有沒(méi)有埋點(diǎn)和異常上報(bào)新增依賴的體積是否可接受后端變更檢查單示例接口入?yún)⒂袥](méi)有做邊界校驗(yàn)數(shù)據(jù)查詢有沒(méi)有潛在 N1事務(wù)邊界是否正確異常路徑有沒(méi)有回滾關(guān)鍵路徑有沒(méi)有日志和監(jiān)控指標(biāo)基礎(chǔ)設(shè)施變更檢查單示例配置變更是否兼容回滾是否有容量評(píng)估權(quán)限變更是否走最小授權(quán)檢查單不是一成不變的。我建議每季度review一次把過(guò)去一季度線上事故復(fù)盤出的經(jīng)驗(yàn)、評(píng)審中出現(xiàn)的高頻問(wèn)題加入檢查單。這樣一個(gè)季度一個(gè)季度地迭代檢查單會(huì)越來(lái)越貼合團(tuán)隊(duì)的真實(shí)情況評(píng)審質(zhì)量也隨之上一個(gè)臺(tái)階。有新人加入團(tuán)隊(duì)的時(shí)候我直接讓他先讀檢查單比看文檔高效得多。3.4 反饋循環(huán)評(píng)審數(shù)據(jù)怎么反哺開(kāi)發(fā)和項(xiàng)目規(guī)劃光跑流程不沉淀數(shù)據(jù)等于白做。open-code-review 會(huì)把每一次評(píng)審的數(shù)據(jù)都存下來(lái)包括評(píng)審時(shí)長(zhǎng)、評(píng)論數(shù)、問(wèn)題類型分布、問(wèn)題解決時(shí)長(zhǎng)、哪類問(wèn)題最容易被漏掉等等。這些數(shù)據(jù)最直接的一個(gè)用途是指導(dǎo)技術(shù)架構(gòu)改進(jìn)。比如數(shù)據(jù)統(tǒng)計(jì)顯示“數(shù)據(jù)庫(kù)查詢類”的問(wèn)題反復(fù)出現(xiàn)那就應(yīng)該考慮在數(shù)據(jù)訪問(wèn)層引入統(tǒng)一的查詢規(guī)范甚至用代碼生成代替手寫 SQL。統(tǒng)計(jì)顯示“緩存失效”類問(wèn)題占比較高那就需要review一下團(tuán)隊(duì)常用的緩存模式找出易錯(cuò)設(shè)計(jì)并改進(jìn)。另一個(gè)用途是影響排期。評(píng)審中積累的“技術(shù)債”類建議可以按照發(fā)生頻率和影響面排進(jìn)迭代計(jì)劃、專項(xiàng)治理而不是讓它們永遠(yuǎn)停留在評(píng)論區(qū)里吃灰。我在團(tuán)隊(duì)就是這么做的——每個(gè)月花半天時(shí)間把上個(gè)月的評(píng)審數(shù)據(jù)快速過(guò)一遍挑出三個(gè)最高頻的問(wèn)題點(diǎn)作為下個(gè)月技術(shù)改進(jìn)的重點(diǎn)。4. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄4.1 評(píng)審變成了“挑刺大會(huì)”團(tuán)隊(duì)氛圍變差推行嚴(yán)格評(píng)審后最常遇到的問(wèn)題就是對(duì)抗心態(tài)。開(kāi)發(fā)者覺(jué)得自己寫的代碼被找茬評(píng)審人覺(jué)得自己是警察。這個(gè)現(xiàn)象的本質(zhì)是團(tuán)隊(duì)的反饋模型出了問(wèn)題。我解決這個(gè)問(wèn)題的手段很直接把“提意見(jiàn)”改成“提問(wèn)題”。同樣看到一段邏輯復(fù)雜、很難讀懂的代碼不許說(shuō)“這段代碼該重構(gòu)”要說(shuō)“我沒(méi)太看懂這段邏輯會(huì)不會(huì)存在 XX 情況沒(méi)處理”前者是指責(zé)后者是請(qǐng)你講解。這個(gè)變化最初靠制度約束后來(lái)靠文化滲透。open-code-review 可以在評(píng)論模板里加上“提問(wèn)式表達(dá)”的提示如果評(píng)論以“你應(yīng)該”“這樣不對(duì)”這類指責(zé)式開(kāi)頭機(jī)器人會(huì)提醒一次。慢慢地大家發(fā)現(xiàn)用提問(wèn)的方式表達(dá)意見(jiàn)被接受的概率高很多而且討論質(zhì)量也提升了。另外一個(gè)細(xì)節(jié)評(píng)審?fù)ㄟ^(guò)后如果代碼上線出了問(wèn)題不要把責(zé)任推到評(píng)審人頭上。一旦開(kāi)了這個(gè)頭以后所有人都只給“安全”的通過(guò)意見(jiàn)該提的深層問(wèn)題反而不提了。評(píng)審是集體負(fù)責(zé)制事后復(fù)盤只問(wèn)流程哪里可以改進(jìn)不追究個(gè)人責(zé)任這個(gè)底線一定要守住。4.2 高風(fēng)險(xiǎn)變更沒(méi)人能審核心開(kāi)發(fā)者成了瓶頸小團(tuán)隊(duì)經(jīng)常遇到這種情況系統(tǒng)里真正懂核心模塊的就那一個(gè)人所有高風(fēng)險(xiǎn)的變更都得等他評(píng)審。這個(gè)人一天之內(nèi)被阻塞的 MR 堵到懷疑人生。這個(gè)問(wèn)題的解法不是“逼核心開(kāi)發(fā)者打點(diǎn)所有時(shí)間”而是讓他從“評(píng)審所有代碼”變成“評(píng)審評(píng)審意見(jiàn)”核心做法是把經(jīng)驗(yàn)前置和授權(quán)結(jié)合。具體來(lái)說(shuō)把核心模塊的評(píng)審檢查單做細(xì)盡量把核心開(kāi)發(fā)者的決策邏輯沉淀到規(guī)則里。然后讓資深開(kāi)發(fā)者對(duì)普通評(píng)審人的評(píng)審結(jié)果進(jìn)行抽檢、backup review而不是參與每一單評(píng)審。這種模式下核心開(kāi)發(fā)者可以把時(shí)間花在建立規(guī)則上而不是消耗在一次又一次重復(fù)的 Review 里。等規(guī)則足夠完善普通評(píng)審人也能處理大部分常規(guī)評(píng)審核心開(kāi)發(fā)者只需要把關(guān)小部分真正復(fù)雜的設(shè)計(jì)問(wèn)題。4.3 緊急修復(fù)繞過(guò)評(píng)審帶病上線“線上故障火速修復(fù)先上再說(shuō)后續(xù)補(bǔ)評(píng)審”這個(gè)話術(shù)是不是很耳熟如果這個(gè)口子經(jīng)常開(kāi)那就不是應(yīng)急方案而是在瓦解整個(gè)評(píng)審體系。open-code-review 對(duì)于這種情況的設(shè)計(jì)理念是不堵但是要留下記錄。緊急修復(fù)可以走 hotfix 通道只需一人評(píng)審或者由運(yùn)營(yíng)/值班負(fù)責(zé)人確認(rèn)但合入后系統(tǒng)會(huì)強(qiáng)制創(chuàng)建一個(gè)“補(bǔ)評(píng)審”任務(wù)并把修復(fù)代碼與對(duì)應(yīng)的線上問(wèn)題關(guān)聯(lián)起來(lái)。補(bǔ)評(píng)審如果在規(guī)定時(shí)間內(nèi)沒(méi)有完成自動(dòng)升級(jí)給技術(shù)負(fù)責(zé)人。這樣做的目的很明確緊急情況下允許流程簡(jiǎn)化但不允許問(wèn)題被掩蓋。事后補(bǔ)評(píng)審產(chǎn)生的意見(jiàn)同樣會(huì)進(jìn)入數(shù)據(jù)統(tǒng)計(jì)、知識(shí)沉淀的管道。從這個(gè)角度來(lái)說(shuō)hotfix 不是評(píng)審體系的漏洞反而是體系的一部分。4.4 評(píng)審意見(jiàn)長(zhǎng)期掛起沒(méi)有結(jié)論評(píng)審評(píng)論提了開(kāi)發(fā)者改了一輪后來(lái)某些評(píng)論就被遺忘了?;蛘唛_(kāi)發(fā)者覺(jué)得某些建議不合理又沒(méi)有明確的拒絕機(jī)制掛在那邊最后不了了之。這是評(píng)審執(zhí)行層面最常見(jiàn)的管理漏洞。我踩過(guò)這個(gè)坑之后規(guī)定了三條硬規(guī)則第一條所有阻塞級(jí)評(píng)論必須顯式解決不能被默默無(wú)視。第二條所有被拒絕的評(píng)論必須有理由。第三條擱置超過(guò) 48 小時(shí)的評(píng)論系統(tǒng)自動(dòng)提醒雙方如果再過(guò)一個(gè)工作日還沒(méi)有處理自動(dòng)抄送技術(shù)負(fù)責(zé)人。這三條規(guī)則一經(jīng)執(zhí)行評(píng)論掛起的情況基本絕跡了。另外附帶一個(gè)小技巧要把“評(píng)審意見(jiàn)”和“閑聊”區(qū)分開(kāi)。非阻塞性建議、個(gè)人偏好或者是夸獎(jiǎng)的話不進(jìn)入評(píng)論臺(tái)賬。否則每一條都要求“解決”反而會(huì)給開(kāi)發(fā)者帶來(lái)不必要的負(fù)擔(dān)。5. 代碼評(píng)審的技術(shù)監(jiān)督與度量維度5.1 哪些指標(biāo)值得看哪些指標(biāo)會(huì)騙人沒(méi)有度量就沒(méi)有改進(jìn)但度量的指標(biāo)如果選錯(cuò)了很容易變成數(shù)字游戲。我在實(shí)踐過(guò)程中把評(píng)審指標(biāo)分成三組每一組都有明確的使用場(chǎng)景。效率指標(biāo)評(píng)審等待時(shí)間、評(píng)審耗時(shí)、每輪修改輪次。這類指標(biāo)反映的是流程順暢度。如果一個(gè) MR 平均要修改五六輪才通過(guò)那多半不是開(kāi)發(fā)者能力問(wèn)題而是評(píng)審意見(jiàn)本身不夠清晰、或者需求本身就不明確需要從更早的環(huán)節(jié)去調(diào)整。質(zhì)量指標(biāo)漏檢率評(píng)審?fù)ㄟ^(guò)后線上問(wèn)題發(fā)生比例、缺陷類型分布、每千行代碼評(píng)審評(píng)論數(shù)。這類指標(biāo)用于評(píng)估評(píng)審體系本身的效果。漏檢率是最重要的指標(biāo)如果漏檢率長(zhǎng)期偏高說(shuō)明評(píng)審重點(diǎn)不對(duì)或者評(píng)審人能力覆蓋不夠。協(xié)作指標(biāo)參與評(píng)審人數(shù)、評(píng)論被解決率、評(píng)審人回復(fù)時(shí)長(zhǎng)。這類指標(biāo)用于判斷團(tuán)隊(duì)協(xié)作的健康度。如果一個(gè)模塊長(zhǎng)期只有同一個(gè)人評(píng)審這個(gè)模塊的能力備份就是缺失的要提前預(yù)防風(fēng)險(xiǎn)。提醒千萬(wàn)不要把指標(biāo)用于績(jī)效考核。一旦評(píng)審數(shù)據(jù)跟績(jī)效掛鉤團(tuán)隊(duì)就會(huì)出現(xiàn)兩個(gè)極端——要么互相放過(guò)、你好我好要么互相苛刻、把評(píng)論條數(shù)刷上去。這兩種情況都會(huì)毀掉評(píng)審體系的真正價(jià)值。指標(biāo)是用來(lái)發(fā)現(xiàn)問(wèn)題的不是用來(lái)定罪的。5.2 變更是最小單位把代碼質(zhì)量問(wèn)題定位到模塊如果只看匯總數(shù)據(jù)你很難知道哪一塊需要改進(jìn)。open-code-review 的做法是把所有評(píng)審數(shù)據(jù)按模塊或者目錄進(jìn)行拆分統(tǒng)計(jì)。拿一個(gè)典型的服務(wù)端項(xiàng)目舉例數(shù)據(jù)拆完之后你會(huì)發(fā)現(xiàn)order-service模塊的評(píng)審評(píng)論密度是其他模塊的 3 倍評(píng)論類型集中在“事務(wù)處理”“狀態(tài)流轉(zhuǎn)”這個(gè)模塊的線上問(wèn)題率也比其他模塊高。這幾條數(shù)據(jù)放在一起結(jié)論就非常清晰這個(gè)模塊設(shè)計(jì)復(fù)雜度高、實(shí)現(xiàn)重復(fù)率高、關(guān)鍵路徑缺乏統(tǒng)一抽象。那接下來(lái)就不是繼續(xù)找開(kāi)發(fā)者的溝通問(wèn)題了而是在架構(gòu)層面考慮重構(gòu)方案。有了這種模塊級(jí)的定位能力評(píng)審系統(tǒng)就成了團(tuán)隊(duì)技術(shù)決策的“醫(yī)療報(bào)告”。不只是看到表面數(shù)據(jù)還能定位病灶在哪個(gè)系統(tǒng)、哪個(gè)模塊這對(duì)大團(tuán)隊(duì)尤其重要。5.3 從評(píng)審數(shù)據(jù)到知識(shí)庫(kù)的自動(dòng)化沉淀評(píng)審中產(chǎn)生的高質(zhì)量討論不應(yīng)該只停留在 MR 評(píng)論區(qū)。我在 open-code-review 里做了個(gè)機(jī)制當(dāng)一個(gè)評(píng)審評(píng)論的討論超過(guò)一定輪次、或者被多次標(biāo)記為“高價(jià)值”系統(tǒng)會(huì)提示評(píng)論發(fā)起人選擇是否沉淀到團(tuán)隊(duì)知識(shí)庫(kù)中。沉淀的內(nèi)容會(huì)經(jīng)過(guò)簡(jiǎn)短的整理比如把問(wèn)題描述、示例代碼、解決辦法、關(guān)聯(lián)鏈接匯總成一條知識(shí)文檔。這樣做的好處是團(tuán)隊(duì)在遇到類似問(wèn)題的時(shí)候能夠檢索到以前踩過(guò)的坑和提煉出的解決方案而不需要重新討論一遍或者靠老員工的記憶。幾個(gè)月后知識(shí)庫(kù)就變成了團(tuán)隊(duì)最寶貴的資產(chǎn)——每一頁(yè)都是真實(shí)的問(wèn)題、真實(shí)的決策、真實(shí)的經(jīng)驗(yàn)。6. 落地經(jīng)驗(yàn)和最后的建議6.1 先小范圍試點(diǎn)不要一刀切全部推行如果你打算在團(tuán)隊(duì)里落地 open-code-review我強(qiáng)烈建議不要搞“全團(tuán)隊(duì)同時(shí)切換”。最穩(wěn)妥的做法是選一個(gè)業(yè)務(wù)相對(duì)獨(dú)立、成員配合意愿較高的小組先試點(diǎn)跑兩周到一個(gè)月。試點(diǎn)期間重點(diǎn)關(guān)注三件事第一配置的規(guī)則是否符合實(shí)際業(yè)務(wù)場(chǎng)景、有沒(méi)有明顯不合理的條目第二開(kāi)發(fā)者和評(píng)審人的反饋尤其是哪些流程讓人覺(jué)得繁瑣、哪些檢查沒(méi)有必要第三自動(dòng)化門禁的誤傷率比如覆蓋率卡得太死導(dǎo)致大量無(wú)用的補(bǔ)測(cè)試工作。試點(diǎn)穩(wěn)定后再逐步擴(kuò)大范圍。我在多個(gè)團(tuán)隊(duì)實(shí)踐下來(lái)第一稿配置通常都是偏嚴(yán)的往往需要調(diào)低某些規(guī)則的閾值或放寬低風(fēng)險(xiǎn)變更的路徑才能讓整體流程變得順暢。6.2 培養(yǎng)“評(píng)審人”而不是“審批人”最后想分享一個(gè)認(rèn)知層面的轉(zhuǎn)變。open-code-review 這套體系跑起來(lái)之后我發(fā)現(xiàn)最根本的改變不是流程自動(dòng)化而是團(tuán)隊(duì)里每一個(gè)人的角色認(rèn)知。代碼評(píng)審不是“審批”不是“找茬”更不是“走個(gè)過(guò)場(chǎng)”的行政流程。它實(shí)際上是每個(gè)參與者提升技術(shù)能力、對(duì)齊團(tuán)隊(duì)標(biāo)準(zhǔn)、降低線上風(fēng)險(xiǎn)最有效的日常場(chǎng)景。所以當(dāng)你推動(dòng)這套體系落地時(shí)要反復(fù)向團(tuán)隊(duì)傳遞一個(gè)態(tài)度寫代碼的人不是在“應(yīng)付評(píng)審”而是在“獲得第二雙眼睛”來(lái)審視自己的工作做評(píng)審的人不只是在“把關(guān)”而是在“從別人的代碼里學(xué)習(xí)”。有了這個(gè)共識(shí)工具層面的問(wèn)題都是容易解決的制度層面的問(wèn)題才是真正的挑戰(zhàn)。根據(jù)我的實(shí)踐經(jīng)驗(yàn)一套好的評(píng)審體系最終應(yīng)該達(dá)到這個(gè)狀態(tài)新人來(lái)了翻一翻檢查單和知識(shí)庫(kù)就能了解團(tuán)隊(duì)的規(guī)范和技術(shù)注意點(diǎn)開(kāi)發(fā)者提交 MR 時(shí)不再抱著“希望別被挑刺”的心態(tài)而是知道有人會(huì)看到自己沒(méi)看到的風(fēng)險(xiǎn)技術(shù)負(fù)責(zé)人則可以通過(guò)數(shù)據(jù)清晰掌握系統(tǒng)的健康程度和團(tuán)隊(duì)的成長(zhǎng)進(jìn)度。這才是開(kāi)放、高效、有生命力的評(píng)審文化也是 open-code-review 真正期待帶來(lái)的改變。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久久三区二区一区| 天天综合网久久ww| 色在线综合| 老女人老91妇女老热女| 五月开心久久AV官网| 大香网伊人久久综合| 人人操人人舒服| 爱爱动态60秒| 九九九国产| julia中文字幕在线观看| 91蜜桃婷婷狠狠久久综合9色| 秋霞一集毛片观看| 精品91日日夜夜超清资源| 97免费视频在线观看视频| 中文字幕精品丝袜| 亚州精品一区二区三区香中文字幕在线| 色翁荡息又大又硬又粗又爽| 色欧美亚洲| 亚洲交换| 91精品国产91久久久久久久久久久久| 啊啊啊久久久视频| 青青伊人这里只有精品| 大香蕉日韩欧美| 中文字幕-区二区三区四区视频中国| 五月色综合| 欧洲熟妇xxXx欧美老妇裸体| 香蕉在线一区二区三区| 婷婷久草一区二区三区| 25国产精品免费观看| 日韩精品一区二区日韩| 操高情无码| 成人无码在线超碰网| 69精品| 91青青在线| 暴力av在线| 日韩精品一区,二区 九九...老司机| AND人妻系列| 天美传媒国产原创中文字幕亚洲欧美另类 | 中文AV制服乱伦| 99热在线播放| 台湾一区国产高清在线| 九九九精品成人免费视频小说| 97超碰香蕉| 诱惑网综合| 日日夜夜免费| 亚洲色图欧美一区二区不卡| 国产在线观看一区二区三区| 懂色中文一区二区三区| 8050无码八戒| 99久久网站| 2024人人操人人摸| 黄页18禁| 伊人青青草久久| 国产亚洲色婷婷99精品91| 丰满精品人妻少妇久久字幕| 欧美日韩美女精品久草一区二区三区| 超碰97.com| 亚洲97精品| 精品无码欧美三级| 国产免a费看黄片在线| 黄色大片免费在线| 自拍偷拍 日韩无码| 女人 A一级| 91强热人妻| 五月综合色| 99999无码| 91+欧美| 五十路人妻在线| 欧美热图99| 草草草草视频| 国产精品亚洲一级av第二区| 玖玖色综合| 天天综合在线4| 欧美韩国你懂得在线| 久久久久久裸体| 射久久| 乱伦a片视频| 天天看高清麻豆| 亚洲日产专区婷婷| 亚洲婷婷综合网| 日本欧美一区二区三区视频麻豆| 亚洲一区日韩| 亚洲drav色图| 国产精品福利视频| 中文久久爆乳| 婷婷五月天久久精品视频一区二区三区 | 亚洲欧美天堂在线| 国产伊人精品在线| 欧美性爱日韩性爱| 久久综合精品一区二区三区| 亚洲毛片久久| 97操操| 色超碰综合| 97视频网站| 欧美一级黄片免费播放| 东京热熟女亚洲视频网站| 美女啊啊啊啊啊| 国产在线激情视频| 成人精品视频| 性久久久| 97 国产一区| 夜夜性| 1024人妻熟女一区二区三区| 欧美传媒一区| 久久久久久亚洲Av无码| 欧美日韩人人早| 精品十八在线观看| 黄色成品网站| 97超碰站| 91N欧美| 九七超碰人人乐| 亚洲av影院在线观看| 九九九久久久久| 色哟哟 日韩精品| 亚洲天堂区| 欧洲精品二区| 大香蕉免| 性饥渴少妇av无码毛片| 蜜臀AV成人精品蜜臀| 热久久国产| 精品然女一区二区| 欧美偷拍区| 熟妇艹鸡八| 日本精品一级二级三级| 欧美国产有色电影| 国产www色在线观看| 九九英色视频| 不卡啪啪视频| 欧美日韩欧美| 97超碰美国| 91亚洲人| 日本裸体久久色噜噜| 久久精品熟女亚洲AV麻豆软件| 一本道综合色图| 久久久久久久久久久久97| 女人高潮大叫一级毛片| 最新日本中文字幕| 91天堂视频| 小视频玖玖| 97 国产精品| 色婷亚洲五月在线观看| 九九热AV| 久久久久久久国产| 亚洲一区二区精品福利| 日本伦乱九九九综合| 观看视频图片一区二区三区| 天堂俺去俺来也www久久婷婷| 狠色婷婷久久一区二区三区_| 中文字幕乱在线伦视频中文字幕乱码在线| 日产成人久久| 激情一区二区三区在线观看| 手机在线免费看的av| 欧美少妇色综合| 國產尤物AV尤物在線觀看 | 日韩另类| 精品国产一区二区三区在线播出| 性感美女啊啊啊在线| 久久久网站| 91综合色噜噜| 综合97久久| 五月天偷拍| 第四色奇米影视777| 大香蕉性欧美| 99热精品国产| 久久久久免费少妇| 啪啪啪精品视频| 青娱乐黄色录像| 成人在线视频一区| 在线 制服丝袜中出 人妻| 偷拍偷窥与盗摄视频专区| 啊啊啊啊啊啊啊在线| 99精品无码| 另类图片欧美激情综合| 国产97色在线 | 亚洲| 蜜桃传媒一区二区亚洲| 国产精品午夜高潮呻吟久久av| 超碰人妻久久| 亚洲欧美综合网站| 91亚州欧美| 婷婷五月天小说| 精品高清一区二区三区三州| 99国产精品| 九九九九一区| 国产精品在线一区二区| 中国熟女91| 97爱爱影院| 艹我哪美一区无码| 亚洲国产日韩欧美熟妇在线| 黄页网站免费高清在线观看| 国产精品成人无码a v毛片| 亚洲高清综合网| 久久久久久免费电影| av在线浏览| 97爱爱爱综合| 国产SV一线| 欧美美女自慰一区二区三区| 丰满人妻一区二区三区在线| 九九九九久久久| 无码抄逼网| 91碰超| 欧美18老人禁| 国产成人精品日本视频| 国产综合网站在线播放 | 中文字幕狠狠玩| 精品成人亚洲午夜电影| 日本成人A片网站| 高清无码在线播放网站| 日韩性爱毛片操骚逼| 性饥渴少妇av无码毛片| 亚洲啪啪视频免费| 少妇高潮特黄A片| 成人麻豆av电影网站| 波多野结衣AV无码一区| 一区二区三区免费视频入口| 久久婷婷电影网| 蜜臀久久99精品久久久久久无删减 | 亚洲牲交| 亚洲精品人妻在线| 色色99| 亚洲五月丁香花狠狠干一区二区三区 | 日本操逼aaaaa| 日韩99精品视频综合区| 2020中文字幕| 99青草| 亚洲nv男人的天堂网| 一区二区三区四区色图| 久久久久久久久久久久久久久乱码| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 性交一区二区在线播放| 大香蕉日韩| 大色综合| 色嗨嗨在线| 9久久精品| 久久久久人妻| 天天操人人操骚逼网站| 色五月AV| 99操碰| 91欧美高清| 99 国产丝袜在线| 骚鸭AV| 亲子敌伦对白在线播放| 午夜AV人气不卡| 亚洲国产一区二区三区四区国产| 97精品国产97久久久久久| 操b网站亚洲无码| 97 国产精品| 国产美女高潮| 中文字幕在线观看二区三区| 大香蕉十区| 97jingpin| 黑人综合网| 懂色天天爱天天日天天射天天澡| 亚洲激情网一二三四区| 蜜桃久久久久久久久久久久 | 人人扣人人操| 激情小说亚洲图片| 国产精品九九九| 国产精品无码av| 哈哈操电影AV| 少妇淫妇久久久久久久| 在线情色电影 91大 | 久久妇| 国内伊人久久久久久网站视频| 国产精品盗摄 偷窥盗摄| 色婷五月| 天美传媒精品久久视频| 欧美不卡二区| 亚洲男人的天堂网| 精品国产人成在线| 蘋果手機免費看成人Av| 无码高清操逼网址| 麻豆福利视频导航| av网站国产主播在线| 亚洲综合五月天| 九草九九九| 久久综合资源一区二区| 18岁禁 茉莉成人久久| 欧美精品黑人猛交高潮| 婷婷伊人一区| 大JI巴好深好爽又大又粗视频| 国产精品青草综合久久| 91天天爽| 97av在线视频| 国产精品乱码久久久| 操逼操网| 在线观看啊啊啊啊啊| 看日韩操逼| 超碰到97情色| 欧美性爱另类综合| 啊啊啊啊嗯嗯在线久久久| 午夜欧美女人操逼| 亚州Av天美传媒| 黄aaaaaaaaaaaaaaaaaa色网站| 黄视频免费| 区一在线观看| 黑人白女精品一区| 99热国产精品| 国产超碰| 高清孕妇孕交 交| 熟女乱伦二区| 麻豆天美一区二区| 精品久一区免费| 日本精品一级二级三级| 好吊色一区| 亚洲图片色图欧美另类| 日日日大屁股骚女人精品| yellow网站免费观看日韩高清无码| 国产青视频| 人妻一二三区| 欧美色图自拍| 超碰人人妻| 亚洲影院成人| 色踪合AV| 午夜天堂精品久久久久91| 精品对白久久不卡| 啊啊啊啊啊好大好舒服想要| AA特级绝黄| 67914在线兔费成人视频| 狠狠色婷婷| 亚洲av青草久久一区二区| 亚洲狼狼干综合1| 夜嗨影院| 国产黄色在线播放观看| 亚洲素人综合| 美女诱惑在线一区| 婷婷丁香六月天| 国产精品久久久久久久久久梁医生| 女人的天堂大香蕉网| 国产精品蜜乳AV| 强乱老妇中文字幕| a人欧美综合天堂麻豆| 激情五月天丁香社区| 性一级黄色录像片网站导航| 日韩电影在线观看网址| 激情视频一二三| 很很干很很操| 探花在线免费观看视频国产一区| 97超碰超| 久久久精品,3| 伦理日韩国产久久| 蜜臀亚洲中文| 人人爱操| 色婷婷九月天天综合| 91精品国产综合久久久蜜臀酒店| 色阁阁AV综合网| 欧美色五月| 久久久久久国产手机AV| A级在线视频| 亚州精品人妻一二三区| 91欧美美女日韩国产婷婷| 久久国产视频性吧 | 色色色色色色色色色色色色色色综合| 日韩 欧美 另类 人妻| 免费观看一区| 美女黄网| 国内偷拍精品一区二区| 亚洲丝袜少妇在线| 婷婷精品久久av影视| 亚洲视频小说| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 欧美性第1页| 曰本91情色| 操我啊啊啊啊啊| AA丁香综合激情| 美女操逼福利视频| 精品亚洲国产成人av网站| www.av家庭乱伦| 欧美97爱| 色av中文字| 免费久久精品麻豆一区二区av| 热久久国产| 五码视频在线观看| 操B视频日韩无码| 日韩性爱一级片| 免费视频一二三区| 国产精品96| 999999精品| 91色宗合| 综合97| 欧美不在线| 亚州欧美色图| 日韩免费av片高清无码| 超碰人妻天天干| 精品中文字幕一区二区| 成人性爱视频在线看| 亚洲国产尤物yw在线观看| 日本熟女免费視颖| 日韩AV熟女乱伦| 久操大香蕉| 99这里有精品| 久操99| 91亚州欧美| 亚州 综合 色图| 色偷综合| 超碰碰97资源站| 久久久蜜桃臀无码视频| 国产综合日韩伦理| 密乳无码| 中文字幕五区| 69视频福利导航| 少妇内射视频| 国产精品噜噜噜日日日| 国产亚洲精品A在线观看下载| 欧美午夜视频免费观看| 国产福利精品最新在线| 啊啊啊用力在线观看| 狠狠夜色午夜久久综合在线| 国产日韩中文字幕欧美| 国产精品乱码久久| 综合网欧| 日韩丨制服丨中文|在线| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 亚洲第一免费视频| 综合网色| 欧美页片| 777超碰| 激情抓乳插进去啪啪啪日韩 | 亚州五月| 在线观看不卡一区二区三区| 久久久成人国产精品无码| 亚洲,欧美,春色,另类| 欧美18禁91| 久久一二三四五六七八九区| 日本人妻伦在线中文字幕| 欧美日本国产日韩激情视频| 大香蕉十区| 天操天操夜操夜月操月年年操操| 国产精品福利资源在线尤物| 天天日天天爽| 精品人妻伦一区二区三区久久| 一本色道综合久久欧美日韩精品| 无码最新| 美女AV一区二区| 国产精品日日摸天天碰| 成年女人黄网站| 麻豆2区1区天美| 伊人在线大香蕉视频久久| 欧差乱伦二三| 亚州情色j区| 九九九久| 亚洲蜜桃V妇女| 亚洲永久永久永久永久一级一级一级精品 | 色噜噜人妻av中文字幕| 九九久久一区二区伦理| 蜜伊人色综合97| 超碰免费在线| 超碰97人人乐| 无码抄逼网| 日韩一级二级三级免费看完整版国语版 | 盗摄女人妻在线| 美女91在线观看| 国产精品久久| 成人贴图日韩欧美| 麻豆久久一区二区三区| 久久人妻精品| 亚洲欧美高清| 久久理论字幕视频| 少妇一区二区三区| 久超碰在| 国产偷拍网站| 国产夫妻一区二区| 成·人免费午夜在线观看| 草草影院在线视频| 午夜精品久久99蜜桃的功能章节| 涩涩五月天| 超碰色97| 天天欧美色| 国产女大学生AV| 日韩一999精品| 午夜性刺激视频免费观看| 日韩97超碰中文字幕| 亚洲欧美情色| 91九色丨国产丨爆乳| 秋霞午夜成人福利片片| 91色噜噜狠狠| 久久黄色视频一区二区三区| AV男人天堂网| 亚洲五月丁香花狠狠干一区二区三区| 91美女小视频| 欧美白嫩女HD| 国产尹人在线视频免费| 色约约一区=区三区| 一本一道人妻久久一区二区三区 | 亚洲精品蜜桃久久久一区二区三区| 日日夜夜免费| 69av一区二区三区| 偷拍在线观看视频| 日韩乱伦视频| 天天拍夜夜| 第二页中文字幕| 啪啪视频亚洲第一| 日1区2区3区2020| 国产av白丝| 国产三级资源在线观看| 激情文学亚洲| 久热伊人99re| 岛国艾薇凹凸视频天堂| 久久 精品| 狠狠操一区二区| 在线无码操| 69精品| 天美传媒Av在线| 久精品无码av一区二免费国产在线观看 | 人人妻人人玩人人澡人人爽| n1038 一二三区| 午夜国产成人福利视频| 免费A片三p视频| 综合大香蕉美。| 夜夜夜久久| 国产精品爽爽va在线观看98| 久久久久久久人妻丝袜| 97精品在线| 久久久艹艹艹| 国产福利精品最新在线| 国产对白刺激视频| 久久中出| 91少妇高潮| 超碰碰激情97+久| 欧美一区91大爱| 男女激情黄色网址| 操国产逼| 国产免费内射视频| 天天综合麻豆视频| 亚洲熟女乱熟乱熟妇综合网二区| 亚洲 日本 一 二 三| 夜间福利片1000无码| 操国产高清| 91在线一起| www.高清无码诱惑一区.com| 亚洲乱妇p22| 中文字幕午夜精品久久久| 久久最新视频免费观看| 澳门成人网站久国产日韩| 日韩成人综合网| 亚洲成人美女无吗| 秋霞成人做爱| 久久久久久99AV无码免费网站| 鸥美中出| 91老司机视频| 2017天天插| 亚洲狠狠入| 国产人妻精品一区二区三区秋霞 | 中文字幕黄片在线| 男女一进一出视频久久| 人人妻人人爱人人玩| 就去色综合| 风间由美日韩欧美久久| 玖玖综合视频| 天天综合,91入口| 午夜AV污污污| 综合性视频99| av影院十区| 青娱乐 青青青操 日逼| 玖玖大干人妻| 啊啊啊 在线| 色网亚洲人| 日韩欧美蜜桃精品久久中文字幕久久| 操淫穴亚洲五月丁香 | 少妇99成人麻豆| 99超碰色| 久久久久久久78| 亚洲欧洲无码97久久精品| 神马午夜久久久| 北京美女一区二区| 精国久久一区二区三区98| 狠狠亚洲| 欧美爱国产综合、| 国内毛片四区| 亚洲色欧美| 亚洲性爱成人| 一线黄色免费性爱片| 岛国片国产成人亚洲播放| 大香网站| 日本免费中文一区二区三区四区| 麻豆蜜桃视频在线观看| 久久大黄片| 日本欧美韩国国产在线| 国产操偷| 婷婷五月天影院| 亚洲精品一二三四区| 60秒免费小视频| 男人成人黄色视频在线观看免费下载| 91日产桃蜜| 天天色图| 操逼操网| 大鸡吧尹人在线| 国产精品久久久久久久久久久久久久久久| 国产后入清纯| 国产精品久久久| av强奸乱轮| 91精品久久久久久77777| 91色情黑丝搞鸡在线观看一区二区三区三州| 在线观看十八禁| 亚洲男人的天堂在线看| 91老司机精品| 欧美伊人久久综合网| 婷婷亚洲五月***久久| 天天欧美色| 插入粉嫩少妇视频| 欧美第一页| 国产小视频91| 十八禁黄色成人网站观看| 久热精品在线| 免费精品中文字幕| 91在线|亚| 亚洲第一男人天堂| 国产黄色在线播放观看| 91麻豆天美国产欧美日| 欧美亚洲清纯| 中文字幕乱码人妻二区三区| 伊人AAA| 蜜臀久久99'精品久久久| 男女无套 免费网站| 国产一区二区三区影片| 97国产色图| AAAA级日本片免费视频| 日韩无码专区| 老鸭窝日丰县女人| 大黄片做爱的大的| 99国产天美| 蜜臀久久99精品久久久久久-DVD| 黑人精品成人一区二区三区| 18禁无码永久免费无限制| 婷婷激情五月| 999国产精品999久久久久久| 亚洲黄色网址视频| 超碰天天操| 青青青国产手线观看视频2| 日日夜夜干| 色97欧美| 国产超碰人人操| 人妻大香蕉| 中文字幕精品日韩中文字幕| 97超碰天天| 七月婷婷综合| 嗯啊啊啊轻点视频| 91黑人狂躁丰满熟妇| 五月综合久久| 精品传媒在线一区| 国产丝袜视频| 国产综合久久久麻桃个 | 欧美宗合色| 精品人妻伦一二三区久久| 中文字幕欧洲有码| 欧美十八禁在线看| 大逼色网站| 91黑丝露脚| 91 丝袜在线播放| 欧美日韩情色一区二区| 日韩欧美亚洲自拍偷拍| 97天天摸天天碰| 中文字幕av一区二区三区人妻少妇| 少妇干B| 欧美日韩亚洲少妇寂寞影院正在播放| 久久久夜夜嗨免费视频| 91美| 国产夜夜操| 日韩无码三级影院| 亚洲在线| 亚洲?V无码专区在线电影| 厕所偷拍在线| 精品78| 色色婷婷五月天| 国内一级精品| 后入 亚洲 美女 射| 中国农村熟妇毛片视频| 裸体1区| 蜜臀操逼黄色视频操的好爽| 亚洲色图欧美色18直播在线| 日本久操视频| 国产对白刺激视频| 久久有码视频| 丝袜喷水在线| 亚洲图片欧洲图片aⅴ| 蜜臀久久99精品久久久久电影| 天天舔天天 | 91快色色色色色| 激情干在线| 精品午夜福利| 亚熟hd视频在线| 亚洲色诱惑| 国产久久免费精品视频| 蜜桃狠狠色伊人亚洲综合| 亚洲 日本 一 二 三| 亚洲欧美色图小说| 男人天堂最新手机版在线青青草| 亚码激情| 久久九九国产精品| 亚洲天天综合| 天操天操夜操夜月月年年操操| 6080yy午夜理论三级一区二区三区无码| 一级性爱视频免费观看 | 欧美综合自拍| 97jingpin| 熟妇人妻一区二区三区| 人人摸人人干人人拍97| 国产高清自拍视频| 麻豆色约约| 中 文字幕一区二区三四 五 区日 日 骚 | 中文字幕一区av| 日va操| 91在线精品一区二区三区| 婷婷探花久久精品一区| www.高清无码诱惑一区.com| 五月天激情小说| 97国产高清视频在线观看| 乱伦熟女论坛| 精品天堂| 亚州五月| 91少妇通奸网站| 啊啊啊啊啊好大好舒服想要| 一二三四免费视频| 成人黑料社久久| 综合操逼| 园内精品自拍视频在线播放| 91欧洲国产成人久久精品网站| 蜜臀99久久精品| 亚洲精品一卡二卡三卡福利视频网站 | 玖玖大干人妻| 国产精品丝袜久久亚洲不卡| 亚洲男人的天堂V| 嗯嗯啊中文字幕| 99自拍视频在线观看| 中文字幕一区二区韩| 亚洲美女30b| 麻豆2区1区天美| 激情综合五| 五月婷婷久久综合| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 欧美高清16| 色网亚洲人| 欧美综合自拍亚洲综合图| 久久骚| 俺也射| 久久久三区二区一区| 99热99re6国产在线播放| 九九九九欧美| 久久妇| 人妻喷水| 人人操人人操人妻人| 久久久久久人| 亚洲男人天堂2017| 精品熟女呻吟久久91| 午夜超碰| 天天视频黄| 成人一道本免费视频| 日韩福利综合一区| 亚洲囯产精品女人久久久| 日韩激情啪啪啪| 亚洲午夜福利在线影院| 亚洲AV成人无码久久精品播放| 丁香五月综合| www99热| 91在线美女| 亚洲一本色码中文字幕| 亚州国产成人精品女人久久| 日韩欧美麻豆| 亚洲成a人v欧美综合天堂下载| 精品无码一区二区三区色欲| 亚洲h片在线免费观看| 亚洲二区精品在线观看| 99性爱视频| 二区熟妇韩日| 伦理日韩国产久久| 免费视频一二三区| 天天干干天天干干| 九九性爱网| 东北女人av| 97超碰免费生活| 97国产精品一区| 伊人一级免费黄片| 青青操轻轻| 久久国产精品91| 亚洲天天影视色综合| 麻豆天天躁天天揉揉AV| 成人小说另类在线| 亚洲最大无码中文字幕网站| 99re这里只有精品中心播放| 神马久久啊啊| 亚洲在线91| 国产绿奴视频在线观看| 九九色综合| 91爱做| 久久专区| 手机看片1024你懂的国产| 青草青青久久久久久国产| 97一区二区三区视频| 亚洲熟女人妻中文字幕一区二区| 亚洲国产精品V?在线播放| 国产一区二区三区精品观看啪| 欧美中文字幕男人天堂久久精品| 色香综合天天影视综合 | av天堂精品久久| 亚洲人妻一区二区三区| a片亚洲一本通视频| 97精品免费视频网站| 家庭乱伦网站国产| 99re69综合| 亚洲图片第一页| 欧美综合区| 精品人妻一区春色| 无码久久亚洲高清,| 我要看免费韩日黄片| 青青欧洲黑| 无遮挡男女激烈动态图| 亚洲精品男人的天堂| 精人妻无码一区二区三区伊人直播| yw尤物av无码点击进入麻豆| 丁香色色网| 色亚州人久干视频在线观看免费版| 日本孕妇一区二区视频操逼免费看 | 日韩精品视频在线观看一卡二卡| 麻豆九九九| 欧美日韩在线小说 | 久久久久深夜无码| 国产A v无码专区| 极品少妇99| 12一15性XXXX粉嫩国产| 色嘟嘟人妻天堂网| 神马午夜久久| 九九热精品| 中文三一区| www狠狠| 一二三四区电影| JIZZJIZZ国产精品喷水| 亚州九九九精品视频| 上海一级黄片| 精品成人女人久久| 性在久久久久久| 一区二区三区色综合| 国产精品 久久久精品一牛| 色婷婷综合久久中文字幕雪峰| 精品熟女呻吟久久91| 91综合在线| 国产精品农村妇女| 麻豆人妻精品一区二区| 欧美色视| 国产九九久久久精品| av网站国产主播在线| 国产夫妻一区二区| 日本性交操一区二区不卡系列| 91欧美偷拍| 国产丝袜美女在线一区| 东北女人| 91成人久久| 人人操人人精品影片| 五月婷婷爱六月丁香色| 91中出视频| 亚洲国产欧美日韩人妻日中文| 国产精品999aaa| 啊啊啊97视频| AV免费在线播放一区| 蜜桃传媒视频第一区入口在线看| 久操大香蕉| 老熟女网站| 亚洲天堂第一页| 日本视频在线观看污污污| 疯操AV| 97超碰69| 操逼国产免费| 欧美色综合网| 色 婷97| 日本高清_区二区三区 | 一区二区日韩欧美久久| 国产黄色剧情影片麻豆免费播放| 性爱欧美五月| 九九RE视频在线精品| 激情综合网亚洲| 91久久久老司机| 噜噜噜无码AV一级一级久久影院| 国产三级片在线观看| 狠狠图片青青草| 国产超碰人人操| 国产精品白领在线观看 | 国产免费永久精品无码| 91在线视频国产网站| 粉嫩小泬久久久一区二区| 日本精品成人无码| 国产丝袜美女在线一区| 欧美日韩国产精品久久色婷婷| 国产精品天美传媒| 国产精品久久久无码AV网站| 欧美在线91| 亚洲 欧美 综合 91| 国产馆极品诱惑| 久久99午夜精品一区人妻| 九七超碰| 国内一区二区三区| 嗯嗯啊啊亚欧精品| 人人爱操| 国产麻豆福利av在线播放| 亚洲另类春色| 四季av一区二区凹凸精品小说| 色盈盈影院| 日韩精品99999| 亚洲无码AV九九九| 内射老妇BBWX0C0CK| 日韩综合97p| 搡老女人老91妇女熟女| 嗯嗯啊啊啊好舒服| 色婷久久| 亚洲 国产 精品一区| 亚洲97成人在线观看| 国产精品97视频| 久久 久久国内精品亚洲| 亚州成人a∨| 很很干很很操| 中文字幕在线高清男人的天堂 | 红桃视频高潮| 日韩一级二级| 99色在线视频| 色婷亚洲五月在线观看| 国产理论视频在线播放| 欧美大波激情xxxx| 中文一区二区三区影院| 99av| 色香av| 天天天干977| 一卡二卡在线播放| 五十路人妻在线| 97超视频在线观看| 一牛一区二区三区久久| 蜜臀在线免费观看在线免费观看| 长长久久88视频| 91精品久久久久久综合五月天| 强奸乱伦大香蕉网| 日韩国产在线观看av| 亚洲天堂一区二区久久| 国内偷自视频区视频综合| 精品三级在线专区| 富女玩鸭子一级毛片| 亚洲综合首页| 白丝av| 深夜福利黄片| 欧美色www亚洲国产阿娇要播| 亚洲天堂精品日韩电影| 1769成人国产精品视频| 成人免费性爱视视| A片大香蕉在线| 日韩操逼性鲍| 福利视频一区二区微拍| 久久精品国产亚洲AV高级北京| 欧美精品日韩久久久九| 岛国视频一二三区| 中国东北熟女老太婆内谢| 日本色色色视频| 亚洲最大网站av| 五月婷在线| 91青视频| 97精品综合久久网| 97久久国产亚洲精品超碰热| 老鸭窝在线视频播放| 久久啊啊| 翔田千里爆乳巨臀无码| 美女午夜福利免费视频| 牛牛aV| 超碰97起碰| 国内操逼视频二区| 超碰到97情色| 一区二区影视| 色黄污美女啪啪啪免费网站| www..com操老师| 日本午夜久久电影| http://qxhbdz.com| 综合网亚| 中文字幕无码不卡啪啪| 老熟女综合| 少妇一级婬片免费放一级a性色.| 欧美黄片欧美黄片xxx| 婷婷五月丁香五月| 97色色国产视频| 麻豆色99999| 欧美成人一级麻豆| 无码免费精品高清| 亚殴在线| 欧美第二页午夜| 蜜臀视频网站| 亚洲一级性爱视频免费看| 五月天久久久| 亚洲中文电影| 97资源站日韩| 亚洲天堂一区二区久久| 九九香蕉网| 天天干天天日天天射黄色片| 婷婷10月天青娱乐| 人妻一区二区三区视频| 99在线精品观看99| 久久超碰大香蕉| 久久αⅴ| 永久免费发布性爱网| 亚洲AV无码天美传媒一区| 亚洲高清男人天堂| 国产v亚洲v日韩v欧美v片另类| 欧美久久人人网| 视频在线观看一二三区| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 国产精品视频内谢女人| 乱伦熟女区| 青女在线| 黄片视频观看| 屌色在线97视频| 超碰视97中文| 97在线精品观看视频| 色999人与兽| 91n处女在线观看| 精品亚洲国产成人精品| 97超碰天天爱天天爱| 综合久久2017| 国产乱伦性爱AV| 亚洲熟女乱综合一区二区三区| A级国产欧美激情在线| 色色国产| 精品在线78| 日本国产高清色www视频在线| 97欧美精品综合| 超碰95| 亚洲老熟妇xxx| 麻豆天天躁天天揉揉AV| 亚洲av无线观看| 天天色踪合| 亚洲小电影免费涩涩成人在线高清| 日产国产精品中文久久婷婷| 日韩有码中文字幕女同性恋| 日韩av在线播放不卡| 激情视频一二三| 日本熟女免费視颖| 青草香蕉网| 51久久夜色精品国产麻豆| 欧美色九九九| 日韩精品资源专区二区| 亚洲天堂色图| 欧洲在线性爱视频| 亚洲情色五月天 | 国产黄色 A 片免费看| 中文字幕精品久久久久人妻红杏ⅰ| 青娱乐福利99| 亚洲日韩青青草色月| 亚洲 小说 欧美 激情 另类| 二区熟妇韩日| 亚洲人体视频在线观看| 91色图片| 人妻中文字幕精品无码| 中文字幕AV片| 亚洲国产高清福利视频| 欧美后入式| 色婷婷电影网| 福利视频合集| 操逼内射干逼白丝91| 在线岛| 天天日熟妇| 久久激情五月| 97精品免费视频网站| 午夜久久一区二区无码中出| 一区二区三区免费视频入口| 久久一区,青青青青草视频在线播放| 人人搞人人插人人操| 久久久久久久78| 操逼国产免费| 欧美三级偷拍| 国产黄a三级三级三级av在线看| 亚洲国产精品久久AV| 99啪啪| 3p国产欧美99热| 欧美色图 色综合图| 欧美狠狠弄| 极品尤物女神在线观看| 少妇淫妇久久久久久久| 免费看污网站| 欧美一级黄色18片免费看| 伊人九九九| 久久綜合很很很| 综合久久欧美| 日本成a人v网站在线观看| 日韩天天本| 午夜天堂精品久久久久91| 亚洲性爱成人| 玖玖大干人妻| 熟女一区二区| 天天干天天操天天干天天操 | 插老姨肥穴| 日韩啪啪视频| 日本一区二区三区午夜观看| 人妻喷水| 亚洲美欧999| www.色操逼| 99视频这有这里有精品| 视频二区美腿制服人妻欧美| 在线 亚洲 网爆 自拍| 韩国一级做A片免费的| 欧美日韩大香蕉| 国产夫妻性生活视频| 国精品一区二区三| 黄片www.| 成人无码电影在线观看网| 欧美色图20P| 亚洲熟久久| 久久超碰亚洲人| 99综合视频一体| 无码高清国产AV| 欧美影院一区二区三区| 天操天操夜操夜月操月年年操操| 日本免费不卡二区| 曰韩无码777| 超碰人妻天天干| 国产精品内射婷婷一级二| 日韩欧美麻豆 | 乱伦一二三区| 91美女小视频| 97在线播放| 强奸熟女一区二区三区| 厕所偷拍在线| 六月丁香网| 青青操轻轻| 日日操丁香五月天| 婷婷干黄色| 九九九精品| 91精品网站| 亚洲丨在线| 懂色影视久久| 龙兴卡官方查询| 狠狠躁天天躁日日躁| 五月天伊人| 成人熟女视频一区二区三区| 久久人妻视频网| 五月丁香综合激情| 丁香九月激情啪| 特级丰满少妇一级AAAA爱毛片| 日韩亚洲精品一区二区| 日本高清视频xxxx| 91啦人妻| 天天视频黄| 国产中出内射一区二区| 蜜臀久久99精品久久久久久无删减| 99re99在线视频| 天天久久久久久| 凹凸 69堂 在线播放| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 亚洲情色 自拍| 国产精品不卡av免费在线观看| 国产999精品久久久| 老熟乱一区二区三区四区| 欧美啪啪天堂| 婷婷人妻激情| 97超碰色情| 久久精品熟妇丰满人妻99| 麻豆成人影音在线| 好吊色综合| 极品色| 加勒比综合网| 国产精品一区二区a| 日本人妻伦在线中文字幕| 日韩福利综合一区| 日韩高清黄片| 黄色一区二区秘书性感| 亚洲成人美女无吗| 激情av| 东北夫妻性偷拍| 中文字幕免费观看| 亚洲日韩熟女人妻高清在线|