見出し画像

Gitのコミット間の改修ステップ数をカウントする

どうも、GroGroPHPです!

Git管理されたソースコードにおいて、あるコミットからコミットまでに改修したステップ数を取得したいよー

背景

お客様にいきなり「改修ステップ数って分かったりしますか?」って言われたんですよ。
「ステップ数は計測していません!」って言ったんですけど、「すぐ出せたりします?」って言われたらすぐに出さないわけにはいかないんですよ。

git ステップ数 とかでググったらclocというツールがヒットしました。
clocを使用してステップ数計測してみよう。

環境

  • macOS Monterey

  • Homebrew 3.5.9

  • cloc 1.94

clocのインストール

ターミナル開いて以下のコマンドを打つ

brew install cloc

バージョン確認

cloc --version
1.94

コミット間の改修ステップ数をカウント

以下のコマンドのコミットハッシュ1と2を、自分ソースコードの修正前後のコミットハッシュに変えて叩くだけです。
コミットハッシュはgitのログから取得してください。

cloc --diff <コミットハッシュ1> <コミットハッシュ2>

HEAD(最新)と過去のコミットの場合は以下

cloc --diff <コミットハッシュ1> HEAD

すぐに以下のような表が出力されます。
上が内訳、下がサマリーです。

-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Swift
 same                            0              0            423           6169
 modified                       13              0              0             24
 added                           3            251            183           1300
 removed                         1             33             17            118
XML
 same                            0              0              0           2202
 modified                        1              0              0              0
 added                           1              3              1            265
 removed                         0              0              0              0
JSON
 same                            0              0              0              0
 modified                        0              0              0              0
 added                           7              0              0            111
 removed                         0              0              0              0
C/C++ Header
 same                            0              0              0              0
 modified                        0              0              0              0
 added                           1              1              3              1
 removed                         0              0              0              0
-------------------------------------------------------------------------------
SUM:
 same                            0              0            423           8371
 modified                       14              0              0             24
 added                          12            255            187           1677
 removed                         1             33             17            118
-------------------------------------------------------------------------------

sameはコミット間で同じコード
modifiedは修正されたコード
addedは追加されたコード
removedは削除されたコードです。

どうも、ありがとうございました。

この記事が気に入ったらサポートをしてみませんか?