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
Livesense Inc.
PRO
April 21, 2014
Technology
0
74
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新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
47
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
13
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.4k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
390
26新卒_総合職採用_会社説明資料
livesense
PRO
0
8.7k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
27k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
12k
中途セールス職_会社説明資料
livesense
PRO
0
250
EM候補者向け転職会議説明資料
livesense
PRO
0
120
Other Decks in Technology
See All in Technology
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
2
610
生成AI時代 文字コードを学ぶ意義を見出せるか?
hrsued
1
650
プロダクトエンジニアリング組織への歩み、その現在地 / Our journey to becoming a product engineering organization
hiro_torii
0
130
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.9k
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
890
AIの最新技術&テーマをつまんで紹介&フリートークするシリーズ #1 量子機械学習の入門
tkhresk
0
140
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.1k
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
130
WordPressから ヘッドレスCMSへ! Storyblokへの移行プロセス
nyata
0
160
Model Mondays S2E03: SLMs & Reasoning
nitya
0
190
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
1.1k
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
5
4.1k
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
How to train your dragon (web standard)
notwaldorf
94
6.1k
Gamification - CAS2011
davidbonilla
81
5.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
710
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Music & Morning Musume
bryan
46
6.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
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とか派遣とか入ってないし。
本当に最後に。 作っといてなんだけど、 手を動かすの重要だけど、一番重要なのは健全な プロダクトで利益出す事なので、あくまで参考値と して捉えてね。