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
310
チーム開発での犯人探し
https://easy2.connpass.com/event/184665/
で発表した内容
yanskun
August 27, 2020
Tweet
Share
More Decks by yanskun
See All by yanskun
組織内で使われている言語を取得する gh extension を作った
yanskun
0
130
My Terminal
yanskun
0
29
Create Chrome Extension!
yanskun
0
130
Lets' OSS Contribute
yanskun
0
150
Gardening by GitHub Projects
yanskun
0
26
Codespaces を使って古のプロジェクトを復活させる
yanskun
0
43
git alias で カスタムコマンドを作成
yanskun
0
16
Release を簡単にやる方法
yanskun
0
110
爆速で作る 技術ブログ
yanskun
0
88
Other Decks in Technology
See All in Technology
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
110
ハイテク休憩
sat
PRO
2
170
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
190
20241220_S3 tablesの使い方を検証してみた
handy
4
630
宇宙ベンチャーにおける最近の情シス取り組みについて
axelmizu
0
110
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
400
権威ドキュメントで振り返る2024 #年忘れセキュリティ2024
hirotomotaguchi
2
760
2024年にチャレンジしたことを振り返るぞ
mitchan
0
140
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
170
Google Cloud で始める Cloud Run 〜AWSとの比較と実例デモで解説〜
risatube
PRO
0
110
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
100
C++26 エラー性動作
faithandbrave
2
780
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Side Projects
sachag
452
42k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Six Lessons from altMBA
skipperchong
27
3.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
2
170
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
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
<
[email protected]
> 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 よかったら見てやってください