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
チーム開発での犯人探し
Search
yanskun
August 27, 2020
Technology
1
320
チーム開発での犯人探し
https://easy2.connpass.com/event/184665/
で発表した内容
yanskun
August 27, 2020
Tweet
Share
More Decks by yanskun
See All by yanskun
組織内で使われている言語を取得する gh extension を作った
yanskun
0
160
My Terminal
yanskun
0
35
Create Chrome Extension!
yanskun
0
130
Lets' OSS Contribute
yanskun
0
160
Gardening by GitHub Projects
yanskun
0
34
Codespaces を使って古のプロジェクトを復活させる
yanskun
0
53
git alias で カスタムコマンドを作成
yanskun
0
20
Release を簡単にやる方法
yanskun
0
120
爆速で作る 技術ブログ
yanskun
0
90
Other Decks in Technology
See All in Technology
Cline、めっちゃ便利、お金が飛ぶ💸
iwamot
18
17k
View Transition API
shirakaba
1
830
Cloud Native PG 使ってみて気づいたことと最新機能の紹介 - 第52回PostgreSQLアンカンファレンス
seinoyu
0
110
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
blue_goheimochi
0
130
頻繁リリース × 高品質 = 無理ゲー? いや、できます!/20250306 Shoki Hyo
shift_evolve
0
130
お問い合わせ対応の改善取り組みとその進め方
masartz
0
140
BCMathを高速化した一部始終をC言語でガチ目に解説する / BCMath performance improvement explanation
sakitakamachi
2
820
新卒エンジニア研修の試行錯誤と工夫/nikkei-tech-talk-31
nishiuma
0
160
ウェブアクセシビリティとは
lycorptech_jp
PRO
0
140
Engineering Managementのグローバルトレンド #emoasis / Engineering Management Global Trend
kyonmm
PRO
6
920
ペアプログラミングにQAが加わった!職能を超えたモブプログラミングの事例と学び
tonionagauzzi
1
100
技術的負債を正しく理解し、正しく付き合う #phperkaigi / PHPerKaigi 2025
shogogg
7
1.5k
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
Being A Developer After 40
akosma
89
590k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Language of Interfaces
destraynor
156
24k
GitHub's CSS Performance
jonrohan
1030
460k
How GitHub (no longer) Works
holman
314
140k
Speed Design
sergeychernyshev
28
850
Git: the NoSQL Database
bkeepers
PRO
429
65k
Six Lessons from altMBA
skipperchong
27
3.7k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Transcript
git コマンドを 完全に理解した僕の チーム開発での犯人探し yasudanaoya
<名前> yasuda naoya <技術> ❏ javascript ( vue, nuxt )
* ❏ Ruby ( rails ) 自称フロントエンジニア <アカウント> ❏ GitHub, Qiita, speakerdeck : yasudanaoya ❏ Twitter :@708yasuda 自己紹介
チーム開発をしていると こんな問題、遭遇しませんか?
なぜ?いつ?誰が? こんな変更加えたの? あっれれ〜おっかしいぞ この機能僕追加したはず なのになあ 消えてる...。 僕の意図とは全く別のメ ソッドに書き換えられて る....。 誰がやったんだ・・
よし、犯人を見つけよう
最近遭遇したケース yasuda が作った箇所が バグってます!!! 報告 ごめんなさい。 すぐ調査します。 プロパー社員 パートナー社員 yasuda
調査結果 どなたかが僕のコミットをリバートしていて、 そのまま放置されていました。 本当にありがとうございました。
調査方法 $ git checkout develop $ git pull $ git
log {対象のファイル名} とりあえずやるが何もわからない。
そこで使ったのが $ git log -S{思いつく書いていたコード} するとリバートしたコミットが出てきた...。 commit 12345678901234567890123456789012345678 Author: hoge
<00000000+hoge@users.noreply.github.com> Date: XXX XXX X 00:00:00 2020 +0900 リバートしたで
リバートした時のPRを探す 困ったときは google 先生に聞くんです。 [github.com/{organization名}/{repository名}/commit/{さっきのハッシュ値}] で検索します。 例 github.com/yasuda_famiry/travel/commit/12345…..
コミットのページに飛ぶ するとこんな感じのが表示されます。 この画像でいうところの「#26」が PR のリンクになります。 PR を見れば、大体の理由は記載されているので、 これを持って担当者に問い合わせます。
大詰め 担当者も PR なんていう物的証拠を持ち出されたら、回答できちゃうから、回答するし か無くなります 回答がわからない、思い出せない相手に対して、質問をしても相手は「ごめんなさい」 しか言えず、何の解消はしないし、再犯の恐れもあります。 大切なことは、相手が回答するヒントをこっち側で用意してあげるってのが大事です。 (時と場合によりますけどね?)
最後に、よく使うコマンドの紹介 $ git blame {file名} -L {見たい行の値},+{そこから何行見るか} クソ長いファイルだと、ただ git blame
するだけだと見にくくて仕方がないです。なの で、見たい行を絞ってあげるってのが必要です。 シーンとしては、不思議な変更を見つけた時に、その差分のコミットハッシュが知りたい 場合です。 コミットハッシュがわかれば、あとは、 git show {コミットハッシュ} で検索をすれば、全 量が見えて繋がりが見えるので、色々幸せになります。
おわりに 僕は git command が好きで、熱心に勉強をしている方だと思います。 その理由としては、ブルーオーシャンだからです。チームの中に有識者がいないので、 ちゃんと深めれば僕の価値が高くなるから。 結構打算的に取り組んでいたのです。
紹介 実は、 git command について、以下の媒体で記事を書いています。 • dev.to • Qiita よかったら見てやってください