国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

如何用Git工具發現和解決開發項目中的痛點

開發 開發工具
在日常開發和項目管理過程中往往不可避免地存在很多痛點。如果能及時發現和解決掉這些問題,可以極大提高開發我們的開發效率和減輕項目的技術債務,減少項目風險。很多減輕技術債務的工具都是預防性的。

 在日常開發和項目管理過程中往往不可避免地存在很多痛點。如果能及時發現和解決掉這些問題,可以極大提高開發我們的開發效率和減輕項目的技術債務,減少項目風險。很多減輕技術債務的工具都是預防性的。比如編譯器,lint,靜態分析工具等。這些工具都通過防止開發人員簽入代碼碼,這一方面限制了開發人員的自由,引起不適,而且可能會導致一些潛在的問題。而且盡管通過管制和審核流程似乎應該是完美無瑕的代碼,但是實際上并不一定會帶來功能良好的系統。

軟件開發的過程不僅涉及開發人員之間以及開發人員與他人團隊之間的交互,如何快速的無聲的項目的痛點這是個問題。如果你的開發項目是采用git管理,那么Git本身就能給我們很多好用的工具,本文蟲蟲就給大家講講git中自帶哪些解決痛點的工具。

 

[[318813]]

 

git log 發現最常改變為文件

我們時常忽略一個事實是,我們經常修改的,修改最多的文往往是問題發生最多的,而這些文件往往就是開發和項目的痛點。我們要找到這些痛點,或者熟悉一個未知的項目不知道如何入手的時候,首先可以做的就是找出項目中改變最多,提交commit最頻繁的文件。找出倉庫最常變化的文件(top10)命令為:

 

  1. git log --format=format: --name-only | egrep -v '^$' | sort | uniq -c | sort -rg | head -10 

比如我們最開源安全項目OpenSSH查看一下top10變化文件:

 

如何用Git工具發現和解決開發項目中的痛點

 

我們可以看到除了,版本更新文檔ChangeLog以外,變化第二的是configure.ac這個文件是項目編譯文件makefile的配置文件。源碼里面修改最多的是sshd.c是sshd服務器端的源代碼文件。

可以看到這個命令很有用,但是很長不好記,怎么辦?其實也好辦,那就是加一個git別名即可。vim打開~/.gitconfig配置文件,在[Aliases]部分增加以下配置項:

 

  1. cctop10 = "!git log --format=format: --name-only | egrep -v '^$' | sort | uniq -c | sort -rg | head -10" 

 

如何用Git工具發現和解決開發項目中的痛點

 

 

這樣,對一個倉庫我們只需執行這樣做是按照更改的數量對項目中的文件進行排序,并獲取前10個文件。隨著時間的推移,這些文件中發生的更改最多,因此,這些文件中需要更改的機會更大。

git blame 找出痛點的來源

 

如何用Git工具發現和解決開發項目中的痛點

 

在知道變化最多的文件這個痛點后,我們需要詳細了解痛點過程。或者項目的另一個痛點是,發現項目文件被某人修改后就崩潰了,再也跑不起來了。想找出是誰修改的,大家來鄙視他,或者譴責(blame)它。這就需要一個git另一個利器blame,他就是告訴我們這個問題行(變化)是誰引入的。比如我們同樣以openssh 項目為例,查看一下sshd.c的文件的變化歷史

git blame sshd.c:

 

如何用Git工具發現和解決開發項目中的痛點

 

如上我們可以看到基本上每一行代碼出現的現場,包括了commitID、提交人、詳細時間和代碼。

如果文件較大,可以通過"-L"參數指定開始和結束行,比如sshd.c文件的200行開始的20行內容的來源。

 

如何用Git工具發現和解決開發項目中的痛點

 

關于git blame 注意:

如果一個commitID前面有^號,那么自文件創建以來,對應的行就從沒修改過。

blame也可以跟蹤跨文件的行變化。比如對一個大文件代碼重構或者配置文件被分散到多個小文件,那么會顯示大文件中的原始提交和大文件的名稱。可通過-C選項來實現。

git bisect 找到引入問題的commit

如果知道是哪個行代碼,那次commit引入的問題,我們可以用blame揪出提交問題的人。但是如果不知道是哪兒引入的問題,需要找出引入問題的提交。則需要用一個git 工具bisect。它也很簡單用二分發不斷測試回溯到中間的commit點,直到找到這個問題引入點。

 

如何用Git工具發現和解決開發項目中的痛點

 

git bisect start [終點] [起點]

終點為你確保有問題的commit(如果不能確定那就是現在HEAD),起點為你確保的之后才出現的問題(如果不確定就用最開始一次commits)。

執行這個命令后,項目倉庫的文件狀態會調到這兩次的中間commit,這時候測試代碼,如果項目運行OK,就執行git bisect good。如果還是報錯,則執行git bisect bad。

執行后,git會根據good或者bad狀態跳轉到后半段commit的一半(即3/4)commit處,或者1/4 commit處

繼續測試代碼,標識good或者bad

以此類推直到找到引入問題commit。

總結:

git是一個天生為開發而生的工具,生來就是為了幫助我們解決痛點的。而且git中很多工具就是對應解決我們日常具體痛點的,善用他們不光可以讓我日常生活更舒服,也能極大提高開發效率。"工欲善其事,必先利其器","磨刀不誤砍柴工"希望我們會用并且善用這些工具。

責任編輯:華軒 來源: 今日頭條
相關推薦

2020-09-27 10:35:22

Vue前端代碼

2024-02-01 09:58:40

Java內存泄漏

2024-01-30 10:12:00

Java內存泄漏

2014-04-08 09:49:27

PostgreSQL雙緩沖

2021-06-17 10:19:48

獲客分析數據流量

2018-11-22 15:07:17

代碼github程序

2017-10-10 15:14:23

BUGiOS 11蘋果

2011-05-07 09:07:53

功能點

2024-04-03 09:03:05

項目分支管理

2015-06-16 16:26:27

2020-09-11 09:10:28

區塊鏈版權文化產業數字化

2022-07-01 16:08:32

區塊鏈區塊鏈技術

2021-04-29 18:51:58

Git管理方式

2017-01-12 09:40:47

2020-12-15 12:43:53

Nodenode應用NodeJS

2013-03-31 14:10:55

敏捷開發

2022-03-26 13:31:18

項目node變量

2018-02-01 09:00:21

2016-09-23 20:46:53

2019-12-16 11:16:22

Git子模塊項目
點贊
收藏

51CTO技術棧公眾號

国产精选一区二区| 国产精品精品| 国产精品久久久久aaaa樱花| 国产在线视频网| 午夜日韩在线电影| 精品视频免费在线播放| 99热在这里有精品免费| 97香蕉超级碰碰久久免费的优势 | 亚洲婷婷国产精品电影人久久| 男人添女荫道口女人有什么感觉| 亚洲欧美在线另类| 日韩尤物视频| 欧美激情xxxx性bbbb| 不卡的av影片| 99久久999| 91精品国产自产91精品| 91精品国产色综合久久不卡蜜臀| 亚洲一区在线免费观看| 精品欧美日韩在线| 国产 porn| 3344国产永久在线观看视频| 日韩三级精品| 国产欧美一区二区三区鸳鸯浴| 欧美日韩一区二区三区四区五区| 中文国产亚洲喷潮| 黄色国产精品一区二区三区| 91网站在线观看免费| 牛牛精品视频在线| 久久人人97超碰国产公开结果| 欧美国产日韩在线观看| 日韩一区二区三区在线播放| 鲁鲁狠狠狠7777一区二区| 免费无码不卡视频在线观看| 白白色在线观看| 国产成人精品一区二三区在线观看 | 97人人香蕉| 一级毛片久久久| 中文字幕一区二区三区在线不卡| 正义之心1992免费观看全集完整版| 成久久久网站| 欧美日韩国产一区| 亚洲综合av影视| 亚洲欧洲色图| 欧美精品免费在线观看| 亚洲精品在线国产| 69久久夜色精品国产69乱青草| 亚洲激情视频在线| 亚在线播放中文视频| 亚洲一区二区成人在线观看| 最猛黑人系列在线播放| 欧美日韩国产在线看| 国产人成在线视频| 日韩一区二区三区视频在线观看| 免费激情网址| 91成人在线观看喷潮| 色婷婷av在线| 久久中文久久字幕| 欧美韩一区二区| 91精品免费| 噜噜噜在线观看免费视频日韩 | 精品三级久久久| 精品中文字幕视频| 国产精品亚洲二区| 国产精品久久久久久久久久久久冷| 亚洲精品专区| 国产又粗又爽又黄的视频| 92精品国产成人观看免费| xxxx影院| 91精品国产综合久久久久久 | 欧美一级大黄| 色综合久综合久久综合久鬼88| 欧美三级情趣内衣| 麻豆精品传媒视频| 99精品欧美一区二区三区小说 | 日韩亚洲欧美成人| 欧美美女啪啪| 国产精品一区二区三区在线观| 黄色网址视频在线观看| 91九色丨porny丨国产jk| 色哟哟国产精品免费观看| 亚洲AV无码成人精品一区| 丁香激情综合五月| 日本免费视频| 日韩精品专区在线影院重磅| 青娱乐极品盛宴一区二区| 国产精品午夜视频| 蜜桃视频第一区免费观看| 无码日韩人妻精品久久蜜桃| 色呦呦国产精品| 最新日韩一区| 国产精品自在线| 激情综合一区二区三区| 国产乱子视频| 精品国产成人在线影院 | 国产成人精品久久亚洲高清不卡| 激情成人综合| 欧美成人xxxxx| 精品污污网站免费看| 黄色免费高清视频| 四虎影视国产在线视频| 久久精品免费电影| 99视频精品| 99re热视频在线| 日韩高清不卡av| 亚洲va在线| 国产又大又黄又猛| 亚洲天堂影视av| 伊人久久综合| 国产免费福利| 夜夜躁日日躁狠狠久久88av| 亚洲激情专区| 亚色视频在线播放| 欧美精品性视频| 久久99久久精品欧美| 在线观影网站| 日韩在线一区二区三区免费视频| 在线成人www免费观看视频| 超碰av在线免费观看| 亚洲国产精品va在线看黑人动漫| 欧美成人精品一区二区三区在线看| 久艹视频在线免费观看| 日韩一区二区在线看| 久久激情电影| 日本wwwwwwwzzzzz视频| 中文字幕一区二区三区电影| 久久国产免费| 国产一区电影| 国产精品r级在线| 亚洲国产精品高清| 欧美成人福利| 精品一区二区三区无码视频| 精品国产自在久精品国产| 狠久久av成人天堂| 一级二级在线观看| 91av在线播放视频| 国产日韩av一区| 国产极品久久久久久久久波多结野| 精品一卡二卡三卡四卡日本乱码| 亚洲444eee在线观看| 深爱激情综合| 2020色愉拍亚洲偷自拍| 欧美国产日韩一区二区在线观看| 国产精品88av| 亚洲福利影院| 欧美 日韩 国产 在线观看| 在线观看91av| 国产亚洲精品自拍| 国产精品久久麻豆| 久久99精品国产一区二区三区| 欧美在线一二三四区| 亚洲乱码免费伦视频| 欧美大片aaa| 国产 高清 精品 在线 a| 色成年激情久久综合| 欧美视频二区| 中文日本在线观看| 精品乱码一区| 日韩写真欧美这视频| 国产日本精品| 人人超在线公开视频| 中国一级黄色录像 | 日本欧美在线观看| 免费a级人成a大片在线观看| 国产偷久久久精品专区| 欧美欧美午夜aⅴ在线观看| 亚洲电影在线| 精精国产xxxx视频在线| 乱一区二区三区在线播放| 日韩欧美一区二区视频| 久久99精品久久只有精品| av亚洲一区| 97公开免费视频| 国产精品美女免费视频| 91福利在线看| 国产精品五区| 美女福利一区二区| 欧美特级aaa| 91在线直播亚洲| 在线欧美日韩精品| 免费成人av在线播放| 日本.亚洲电影| 天天干天天操天天做| 国产精品免费网站| 欧美日本在线视频| 国产精品一二三在| 国偷自产av一区二区三区| 中国黄色在线视频| 欧美一区激情视频在线观看| 精品中文视频在线| 国产精品久久久久婷婷二区次| 精品国产一区一区二区三亚瑟| 国产三级在线免费| 中文字幕一区二区三区有限公司| 超碰91人人草人人干| 亚洲成人在线网站| 日本伊人午夜精品| 福利在线一区| 黄色在线免费看| 91激情视频在线| 国产在线观看一区|