Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
git変更の可視化 #TechLunch
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Livesense Inc.
PRO
April 21, 2014
Technology
0
82
git変更の可視化 #TechLunch
git変更の可視化
2013/07/24 (水) @ Livesense TechLunch
発表者:松永 一郎
Livesense Inc.
PRO
April 21, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_総合職採用_会社説明資料
livesense
PRO
0
2.6k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
6.6k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
190
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.6k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
550
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
52k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
中途セールス職_会社説明資料
livesense
PRO
0
290
Other Decks in Technology
See All in Technology
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
330
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
1k
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
370
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
600
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
520
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
170
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
380
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
220
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.6k
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
310
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
360
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
260
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
Color Theory Basics | Prateek | Gurzu
gurzu
0
200
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
250
Test your architecture with Archunit
thirion
1
2.2k
Faster Mobile Websites
deanohume
310
31k
GitHub's CSS Performance
jonrohan
1032
470k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Scaling GitHub
holman
464
140k
A better future with KSS
kneath
240
18k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Transcript
帰って来た、 みんなが使うべきOSの オルグ FreeBSD可愛いよFreeBSD
毎度毎度プレゼンテーションがそっけなくてすいま せん。 デザイン力皆無、質実剛健って事で許して下さい。
おぼえていますか? さて、 今Qのシステム開発部のドグマを
そうですね。 Growth最大化: commit & deliver ですね。
ということで当初の予定を 変更して、
commit&deliverの 見える化 それっぽいtoolを作ってみた。 gamification?
commit & deliverの見える化 livesene システム開発部のエロいエラい人の御言 葉で エンジニアは 基本的には 手を動かしてなんぼ がありますね。
エンジニアの仕事は • エンドユーザーとの調整 • チームのとりまとめ • 調査 などもあり、codeをどれだけ書いたかのみでは計 れないけれど、それも一つの指針になるんじゃな かろうか?
まー本来のcommit&deliverとは意味が違うけど、 • どんだけcodeを書いて(commit) ◦ codeを書いた量 • どんだけ機能を実現してきたか(deliver) ◦ pull req.をこなした量
という解釈を一旦強引にさせてもらいます。
という事でcodeへの影響具合をdb化してみた 軸として • commit情報 • commit時の各fileの変更具合 • pull reqによるmerge情報 をdbに入れてみた。
なんかOSSで既にありそうだけど車輪の再発 明たのしいれす
ちょっと工夫した所 • 対象repositoryとかbranchとか無視するべきfile とかはymlで外出しにして、柔軟性はある程度 確保。 ◦ mail addressのalias設定が出来る ◦ 複数のbranchを追える
◦ 集計対象外(例えば3rdなlibや自動生成fileやlogなど)を 設定出来る • dbの作成とdb作成と集計(表示)処理は分離。
表示もとりあえず作ってみた とりあえず、直近一年の月毎の • こなしたpull req.ランキング • 変更行数ランキング • commitコメントの平均行数ランキング を作ってみた。
http://git-statistics.matsunaga.local.livesense.jp/tallies
他に集計軸として • 個人を軸に毎月の成果を可視化して自分の生 産量を把握してみるとか。 • commitする際の変更file数からcommitの粒度 を出してみるとか(git流に整形してからpull req. 出してたら集計出来ないけどね) •
commit毎の変更行数からの集計じゃなくて、 pull req.毎の変更行数で出してみるとか(これ ちょっと面倒だし、今のdbのままでは多分無理) • とかとか。
いいわけ 本当はhtmlで吐いてconfluenceにblogとして投げ ようかと思ってたけど、表示する方が実装が面倒 臭くなさげなんで、viewを一応書いてみた。 まー本当にひどい見栄えですが、気にしないで下 さい。
最後に • 出来るだけ正確に値を取ろうとはしているけど、色々な要因 で正確では無い。 なので、あくまで目安としてね。 ◦ たとえば、gitはmvはdelete/newで実装されているので、 変更行が膨らみやすい。refactoringとかしているとガッ ツリ増える。 ◦
各projectでignore_pathsを調整してもらえると嬉しいな • 色々遅いので誰かtuningしてたもれ。 • 他の集計、誰か追加して。 • 各repositoryは、エイヤで追加してて、よくわかってないん で、各projectの人、ymlを修正してpull req.くれるとうれしい です。そんなわけでcospaとか派遣とか入ってないし。
本当に最後に。 作っといてなんだけど、 手を動かすの重要だけど、一番重要なのは健全な プロダクトで利益出す事なので、あくまで参考値と して捉えてね。