自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

值得推薦的8個Git/Github項目數(shù)據(jù)分析工具

開發(fā) 開發(fā)工具 數(shù)據(jù)分析
任何重要的決定都應(yīng)基于數(shù)據(jù),對于信息項目和軟件開發(fā)亦是如此。如果你不仔細查看描述項目演進的數(shù)據(jù)就無法了解項目的健康狀況,并給出合理的改進措施。

任何重要的決定都應(yīng)基于數(shù)據(jù),對于信息項目和軟件開發(fā)亦是如此。如果你不仔細查看描述項目演進的數(shù)據(jù)就無法了解項目的健康狀況,并給出合理的改進措施。為了分析和挖掘這些信息,我們可以從Git存儲庫和項目所在的代碼托管平臺(例如GitHub,Gitlab)獲取一些有意義的數(shù)據(jù)。然而從Git/GitHub輕松獲取數(shù)據(jù)實際也不是一件簡單的事情。本文蟲蟲就給大家介紹一些Git/GitHub開源分析工具供大家學習參考。

GitHub API

首先要說的是Github的官方API,這是獲取GitHub倉庫詳細的優(yōu)秀方式。API非常好用,你可以使用curl或者其他任何語言打包庫,獲取倉庫的所有信息(其他公共在線Git托管平臺或者自建的Gitlab都有類似的API)。然而,討厭的是Github對API的調(diào)用做了限制,每小時的請求數(shù)量是有限制的(匿名用戶60次,授權(quán)用戶5000次),如果你要分析大型項目(或?qū)ζ渲幸恍┻M行全局分析),則使用API​​并不是一個好的解決方案。但是,一般用來對個別構(gòu)建專注于單個項目或貢獻者的某種儀表板是不會受到影響的。

通過Github API,你基本上獲得訪問瀏覽項目Github倉庫時看到的所有信息,但是對倉庫的Git信息內(nèi)部信息有限(例如,想知道在最近的一天修改了哪些代碼行)。你需要clone 倉庫后通過git命令才能獲得完全信息。

GHCrawler

GHCrawler是由微軟開發(fā)的一個健壯的GitHub API 爬蟲,可遍歷GitHub實體和消息,對其進行搜索和跟蹤。如果要對某一組織或者項目的活動進行分析,則GHCrawler特別有用。GHCrawler也受Github API請求次數(shù)的限制,但是GHCrawler通過使用令牌池和輪換來優(yōu)化API令牌的使用。GHCrawler支持命令行式調(diào)用,同時也支持一個Web端界面操作(ghcrawler-dashboard)

項目官方倉庫:https://github.com/Microsoft/ghcrawler

GH Archive

GH Archive是一個開源的一個項目,用于記錄公共GitHub時間軸,對其進行存檔,并使其易于訪問以進行進一步分析。GitHub Archive獲取所有的GitHub events信息存儲在一組JSON文件中,以便根據(jù)需要下載并脫機處理。

另外,GitHub Archive也可以作為公共數(shù)據(jù)集在Google BigQuery上使用。該數(shù)據(jù)集每小時自動更新一次,可以在幾秒鐘內(nèi)對整個數(shù)據(jù)集運行任意類似SQL的查詢。

項目官方網(wǎng)站:https://www.gharchive.org

GHTorren

和GH Archive類似,GHTorrent項目也用來監(jiān)視Github公共事件時間表信息。對于每個事件,它都詳盡地檢索其內(nèi)容和相互依賴性。然后將結(jié)果JSON的信息存儲到MongoDB數(shù)據(jù)庫,同時還將其結(jié)構(gòu)提取到MySQL數(shù)據(jù)庫中。

GHTorrent和GH Archive有點類似,兩者區(qū)別是GH Archive旨在提供更詳盡的事件集合,按小時頻率獲取信息。而GH Torrent則以更結(jié)構(gòu)化的方式提供事件數(shù)據(jù),以使更輕松地獲取所有事件有關(guān)事件的信息,數(shù)據(jù)獲取頻率為月。

項目官方倉庫:https://github.com/ghtorrent

Kibble

Apache Kibble是一套用于收集,匯總和可視化軟件項目中活動的工具。Kibble架構(gòu)由一個中央Kibble服務(wù)器和一組專門用于處理特定類型資源的掃描應(yīng)用程序(一個git repo,一個郵件列表,一個JIRA實例等)并將已編譯的數(shù)據(jù)對象推送到Kibble服務(wù)器。

[[286059]]

根據(jù)這些數(shù)據(jù),可以自定義一個儀表板,其中包含許多顯示項目數(shù)據(jù)的小部件(語言分類,主要貢獻者,代碼演變等)。從這個意義上講,Kibble更像是一種工具,可以幫助創(chuàng)建項目數(shù)據(jù)信息展示W(wǎng)eb端。

項目官方網(wǎng)站:https://kibble.apache.org/

CHAOSS

CHAOSS是Linux 基金會下項目,致力于創(chuàng)建數(shù)據(jù)析和指標定義以幫助一個健康的開源社區(qū)。CHAOSS計劃項目有很多工具可以挖掘和計算項目所需的指標數(shù)據(jù):

Augur是一個Python庫、Flask Web應(yīng)用程序和REST服務(wù)器,用于提供有關(guān)開源軟件開發(fā)項目運行狀況和可持續(xù)性的指標。目標是作為CHAOSS社區(qū)感興趣的新指標的快速原型制作。

Cregit則專注于生成視圖以可視化代碼更改的出處

GrimoireLab Bitergia旗下迄今為止最成熟和雄心勃勃的工具。GrimoireLab的目的是提供一個開源平臺實現(xiàn):

1. 幾乎可以從任何與開源開發(fā)相關(guān)的工具(數(shù)據(jù)源)中收集自動和增量數(shù)據(jù)(源代碼管理,問題跟蹤系統(tǒng),論壇等)

自動豐富數(shù)據(jù)以清理和擴展上面收集的數(shù)據(jù)(合并重復的身份,添加有關(guān)貢獻者隸屬關(guān)系,計算延遲,地理數(shù)據(jù)等的其他信息)

數(shù)據(jù)可視化,按時間范圍,項目,存儲庫,貢獻者等進行過濾搜索。

GrimoireLab使用Kibana在收集的數(shù)據(jù)之上提供所有這些出色的可視化效果。

CHAOSS項目官方網(wǎng)站:https://chaoss.community/

Sourced

Sourced自稱為開發(fā)生命周期的數(shù)據(jù)平臺。與以前的工具相比,它更多地關(guān)注項目的代碼,而不是社區(qū)的協(xié)作。Sourced項目使用通用AST,可以實現(xiàn)與語言無關(guān)的方式對代碼庫細節(jié)查詢。

在Sourced項目組織中,可以找到幾個有趣的數(shù)據(jù)分析工具。包括:

go-git:用純Golang語言編寫的高度可擴展的git實現(xiàn)庫。

[[286061]]

Hercule:Golang實現(xiàn)的對存儲庫的整個提交歷史記錄分析工具。

gitbase:Golang 實現(xiàn)的Git存儲庫SQL數(shù)據(jù)庫接口。比如按年月和提交者的提交信息,可以使用如下Sql語句:

SELECT YEAR,

MONTH,

repo_id,

committer_email,

COUNT(*) AS num_commits

FROM

(SELECT YEAR(committer_when) AS YEAR,

MONTH(committer_when) AS MONTH,

repository_id AS repo_id,

committer_email

FROM ref_commits

NATURAL JOIN commits

WHERE ref_name = 'HEAD') AS t

GROUP BY committer_email,

YEAR,

MONTH,

repo_id;

項目官方網(wǎng)站:https://sourced.tech/

Github項目組織:https://github.com/src-d

Hubble

Hubble用于可視化GitHub Enterprise的協(xié)作、使用情況和運行狀況數(shù)據(jù)。它致力于幫助大公司了解其內(nèi)部組織,項目和貢獻者如何一起分配和協(xié)作。

Hubble Enterprise由兩個組件組成。更新器組件是一個Python腳本,它每天從GitHub Enterprise設(shè)備查詢相關(guān)數(shù)據(jù),并將結(jié)果存儲在Git存儲庫中。docs組件是一個Web應(yīng)用程序,用于可視化收集的數(shù)據(jù),并由GitHub Pages托管。

官方項目托管地址:https://github.com/Autodesk/hubble

onefetch

最后提一個非常漂亮的命令行下的git項目信息可視化的工具,支持對50多種語言,提及它是因為它是用新興的Rust語言編寫的。

總結(jié)

本文我們列舉一些對github/git進行數(shù)據(jù)挖掘的工具和項目。除了上面提及以下開源軟件外,有一些商業(yè)化的工具也非常不錯,比如Snoot和Waydev。

 

責任編輯:華軒 來源: 今日頭條
相關(guān)推薦

2019-08-05 15:07:04

2021-05-27 05:30:23

數(shù)據(jù)分析工具數(shù)據(jù)可視化

2015-03-05 14:24:00

大數(shù)據(jù)分析大數(shù)據(jù)大數(shù)據(jù)分析工具

2019-10-14 15:41:37

數(shù)據(jù)科學GitHub機器學習

2021-04-12 11:09:13

React開發(fā)

2018-08-23 17:15:10

編程語言Python數(shù)據(jù)分析

2020-07-26 19:19:46

SQL數(shù)據(jù)庫工具

2023-05-16 08:47:39

2019-08-22 09:08:53

大數(shù)據(jù)HadoopStorm

2019-09-25 10:08:16

GitHub 技術(shù)開源

2023-05-03 21:42:02

Github開源項目

2022-11-28 11:31:37

2024-03-27 14:32:47

圖像標注開源機器學習

2023-05-06 15:45:04

物聯(lián)網(wǎng)IOT

2016-11-07 11:51:52

數(shù)據(jù)分析大數(shù)據(jù)

2016-11-08 12:38:37

數(shù)據(jù)流程思路

2022-12-25 16:44:40

開源工具Github

2018-06-05 12:06:20

Hadoop開源工具

2019-10-12 14:47:58

Excel大數(shù)據(jù)數(shù)據(jù)庫

2020-02-14 10:11:19

數(shù)據(jù)分析技術(shù)IT
點贊
收藏

51CTO技術(shù)棧公眾號