いいレビュイーになる工夫
自己紹介
又の名をきりんと申します
JavaScript、最高だよね
https://pbs.twimg.com/profile_images/723092874397519873/Fx4DBrkR_400x400.jpg
Pull Requestレビュー開発
レビューの目的とは
レビューの目的
コード品質の担保
属人化の緩和
知見共有
etc...
レビューのあるべき姿
なるべく本質的なものに目を向けてもらう
適当にレビューしない
ための仕組みづくり
スピード感を持つ
レビューのあるべき姿
なるべく本質的なものに目を向けてもらう
適当にレビューしない
ための仕組みづくり
スピード感を持つ
スピード感を持つ
基本みんな忙しい😇😇😇😇😇😇
レビューに慣れてくると状況によってはPRが放置されたりする
絶望しがち
できることはないのか?
https://gyazo.com/0f8e6c4964f74874d6b859ecfb29a082
結論: レビュアーに強いていく🙈🙈🙈
嘘です
レビュイーもできることはある!
レビュアーに求めてばかりではいけない
レビューされることのありがたみを忘れてはいけない
レビューだって時間がかかる
レビュイーもできることをやって歩み寄ろう!
例えば
GitHubテンプレート機能で注意ポイントを共通化
TODOをわかりやすく洗い出す
再レビュー依頼の仕方を工夫する
GitHubテンプレート
.github/PULL_REQUEST_TEMPLATE.mdみたいなのをコミットしておくとテンプレートになる機能
IssueもPull Requestもテンプレート化できる
毎回書くような要素は書くといい
チケット番号
DB migrationはあるか、個人情報周りに手を入れたか等のQ&A
見る側もどこを読めばいいかわかりやすい
TODOの洗い出し
GFM記法はListをチェックボックス付きで書ける これを利用して何を修正する意図があるのか書いておくとわかりやすい
し、修正漏れを防げる
https://gyazo.com/cc9463f9fbaed06c7618ce41db5c074d
再レビュー依頼
再レビュー依頼、「修正したので再レビューお願いします」だけになってませんか?
最低限、PRのリンクは欲しい
もっというと何を直したのか教えて欲しい
もっともっというとレビュアーが10秒でレビューに入れるようなリンクを貼り付けて欲しい
GitHubのcommit link
GitHubのPRはコミット番号を書くとそのままリンクになる
https://gyazo.com/ba71e259cdcf891409f2a2d8af881697
差分が1コミットだけならこれだけ埋め込むといい
GitHubの差分view
差分が複数コミットあるなら#{hash}...#{hash}と書くと差分リンクになる
https://gyazo.com/b6ff833fd118f1f8adc1a9c72ed7777d
リンク先は全コミットまとめての差分とコミット一覧へのリンクが出る
超便利
masterマージしちゃった?
コミット差分、便利なんだけどmergeコミットが混ざるとつらい
差分が超でかくなる
https://gyazo.com/8ad9681b683403feab0d3c41aca1dbb4
masterマージは飛ばす
コミットグラフがA←B←C←DでCがマージコミット
その場合はA...BとCのリンクを貼って再レビュー依頼を出せばいい
別ブランチとのconflictを解消した場合
mergeコミットは本来レビュー不要
しかしconflict解消の場合は人間的なミスが発生する可能性がある
でも👿
https://gyazo.com/8ad9681b683403feab0d3c41aca1dbb4
conflict解消したらそのdiffを貼ろう
手元でconflict解消する場合、自動マージされたものはステージングされる
conflictされたものはboth modifiedとして残る
これを修正し、git addする前にgit diff | pbcopyしよう
GFMはdiffのシンタックスハイライトもしてくれる
diffの貼り方
code:md
`diff
(CLIでgit diffして吐き出された内容を貼る)
`
もうひと工夫
GitHubは普通にHTMLも書ける
<details>, <summary>タグを使う
code:md
<details>
<summary>diff</summary>
`diff
`
</details>
diffを貼る
https://gyazo.com/87aad48b0e81e804f297ebe633310b5b
conflict解消する時にこういうメモを残すといい
レビュイーはもちろん、レビュアーも後から見返しやすい
何かミスをした時にmergeコミットから修正箇所を抜き出すのはツライ
レビュー依頼を出す
再レビュー依頼を投げるときはPRのリンクでなく、PRのコメントのリンクを投げる
sota1235 commented ~~の~~の部分をクリックするとパーマネントリンクに飛ぶ
そのURLを渡せばクリックしてから5秒で差分を見てもらうことも実現可能
まとめ
高速なレビューをしてもらうためにレビュイーにもできることはあるよ
GitHub、とっても便利
差分表示機能便利
パーマネントリンク便利
解散!