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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
yanskun
August 27, 2020
Technology
1
330
チーム開発での犯人探し
https://easy2.connpass.com/event/184665/
で発表した内容
yanskun
August 27, 2020
Tweet
Share
More Decks by yanskun
See All by yanskun
最近AIがすごすぎて創作意欲がなくなった
yanskun
0
41
組織内で使われている言語を取得する gh extension を作った
yanskun
0
270
My Terminal
yanskun
0
49
Create Chrome Extension!
yanskun
0
160
Lets' OSS Contribute
yanskun
0
170
Gardening by GitHub Projects
yanskun
0
41
Codespaces を使って古のプロジェクトを復活させる
yanskun
0
98
git alias で カスタムコマンドを作成
yanskun
0
70
Release を簡単にやる方法
yanskun
0
140
Other Decks in Technology
See All in Technology
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
210
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
270
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
310
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.6k
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
130
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
230
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
160
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
1
170
OpenShiftでllm-dを動かそう!
jpishikawa
0
140
Featured
See All Featured
Designing for Performance
lara
610
70k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
220
Git: the NoSQL Database
bkeepers
PRO
432
66k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
52
Design in an AI World
tapps
0
150
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
55
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
GraphQLとの向き合い方2022年版
quramy
50
14k
ラッコキーワード サービス紹介資料
rakko
1
2.3M
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 よかったら見てやってください