🖇️

VSCode から他の人に爆速でコードを共有しよう

2024/07/26に公開

こんにちは、Sally社 CTO の @aitaro です。普段はマーダーミステリーアプリ「ウズ」とマダミス制作ツール「ウズスタジオ」、マダミス情報サイト「マダミス.jp」を全力で開発しています。
https://uzu-app.com

この記事ではチーム開発でよくある、コードを部分的に他のチームメンバーに共有する時に使える Copy GitHub Permalink という機能を紹介します。

背景

コードを部分的に他のチームメンバーに共有したいってシチュエーションはチーム開発中よくあります。

例1)
チームメンバー「Custom Hooks の実装方法困ってるのですが、いい方法ありますか?」
自分「https://github.com/rro...36-L47 ここに書いてある方法が参考になります!」

https://github.com/rrousselGit/flutter_hooks/blob/bdce4d277be2f4c3b4b7edba8ad29a106f91c02c/packages/flutter_hooks/example/lib/custom_hook_function.dart#L36-L47

例2)
チームメンバー「〇〇ページの Hide Me っていうボタンがうまいこと動かないんやけど😡」
自分「あー多分 https://github.com/elr...54-L54 の実装、true, false が逆やわ」
https://github.com/elrumordelaluz/reactour/blob/3086a9659cd9af0df73835650b790ed17721bdeb/apps/web/pages/popover.tsx#L54-L54

例3)
自分「お、Aさんのジェネリクス神実装あざます!無茶苦茶使いやすいわ! https://github.com/gol...6-L118

https://github.com/golang/exp/blob/master/slices/slices.go#L116-L118

Aさん「いやいや、Bさんが作ったこの関数のおかげで並列処理も簡単やわ〜 https://github.com/gol...53-L61

https://github.com/golang/sync/blob/411f99ef121375a146e962b6eab78b03b7429483/errgroup/errgroup.go#L53-L61

いかがでしょうか?よくチャットツールでやり取りされる光景ですよね。
例では Public Repository のコードを用いましたが、実際の仕事では開発中コードも頻繁に共有すると思います。

導入の準備

以下の VSCode 拡張を入れると、Copy GitHub Permalinkの機能が使えるようになります。

https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-pull-request-github

Pull Request の Review とかでも有用な VSCode 拡張のため、すでに入れている方も多いのではないでしょうか?

リンクの取得の仕方

VSCodeでコピーしたいコード部分を範囲選択した上で、Copy As → Copy GitHub Permalink を選択すると、 GitHub 上での該当箇所のリンクがコピーされます。

このリンクを他の人がアクセスしたら、GitHubの該当コード部分に直接飛べるので、簡単にコードを共有することができます。

さらに Zenn や Slack など Preview 表示に対応しているツールに貼り付けると、コードが展開されるので一目でどこのコードかわかります。(しかも Slack は適切に連携設定をしていれば Private Repo についても Preview が表示されます!)

さらなる爆速化のためのショートカット設定

ここまででも十分便利になったのですが、さらなる高速化をしましょう。
VSCode の Keyboard Shortcuts を開いて、 issue.copyGithubPermalink にctrl+C(Macの場合、Windowsの場合はalt+C)等を割り当てます。
こうすることで、コードを共有したいと思ってから 0.5秒後にはコードの共有ができるという爆速共有の仕組みが完成します。

まとめ

自分はこの機能のヘビーユーザーだったのですが、チームの中に Copy GitHub Permalink という機能を知らない人がいたので、今回紹介しました。

リモートワークの時代だからこそ、コミュニケーションはなるだけ円滑におこなうことが重要です。今まで〇〇ファイルの△△行目〜 とか、××関数の二つ目のif文、といったコード共有の仕方をしていた方は、今すぐ Copy GitHub Permalink の設定をしましょう!

UZU テックブログ

Discussion