原文:https://www.keson.dev/tool/github-compare
我們在做框架調研時,你可能會先通過 google 去搜尋相關關鍵詞得到一些結果,其次是從 GitHub 檢視相應的 Topic 來選擇合適的框架。相信大多數人
在選擇框架時,不會隨隨便便就拿來用,而是檢視一些該倉庫的指標來決定是否選擇,或者對多框架進行對比。
前言
我們知道,在社群目前已經有了一些網頁的對比工具,如:檢視 star 趨勢圖的 star-history
,而在終端上目前沒有選擇到適合工具進行 GitHub 倉庫的
資料檢視,我們通常在檢視一個倉庫時,通常會檢視以下一些指標來總和衡量其穩定與否?
- star 數量(stars)
- 更新頻率(releases)
- 社群活躍度(contributors)
- issue 的解決週期(remain issues)
- 倉庫建立時長(age)
- 組織(organization)
我們以選擇 Golang 微服務框架為例子,來對比一下當前社群比較火的一些框架
- go-zero
- kratos
- go-micro
- kit
在沒有工具前,我們可能會每個倉庫依次從以上各指標去其倉庫首頁看一下相關資料,這會顯得比較繁瑣,如果需要落地成為一些對比資料,則更需要自己手動去
編寫一個表格。
我們來看一下 github-compare 的對比結果:
通過該圖可以很清晰的看到 GitHub 倉庫的各項指標,接下來我們來看一下該工具的使用。
github-compare
定位為一個 GitHub 倉庫對比工具
倉庫地址
https://github.com/anqiansong...
安裝
$ go install github.com/anqiansong/github-compare
示例
$ github-compare zeromicro/go-zero go-kratos/kratos asim/go-micro go-kit/kit
用法
準備工作
- 點選去 GitHub 建立個人 AccessToken
設定 AccessToken
- 複製 AccessToken 並新增到環境變數
- 或者你可以在執行
github-compare
指令時通過--token
顯式傳入
執行命令
# 通過 --token 傳入 AccessToken
# github-compare zeromicro/go-zero go-kratos/kratos asim/go-micro go-kit/kit --token ${accessToken}
# 或者新增到環境變數(推薦)
$ export GITHUB_ACCESS_TOKEN=${GITHUB_ACCESS_TOKEN}
$ github-compare zeromicro/go-zero go-kratos/kratos asim/go-micro go-kit/kit
說明
- GitHub AccessToken 是必填項。
github-compare
接受 1 到 4 個倉庫進行資料查詢。- 如果你通過環境變數來設定 AccessToken, 環境變數的 key 必須為
GITHUB_ACCESS_TOKEN
。