こんばんは!頭痛に悩まされている系エンジニアの青木です。
いや〜ほんと困るんですよね、突発的にくるんですよアレが。。
いわゆる偏頭痛ってやつでして、月に1回くらいのサイクルで予告なくやってきます。ひどいときはやっぱり動くのもしんどくて、チームのみんなには悪いけどたまにお休みしてしまうこともあります。。
ちなみにいま担当しているプロダクトも月に1回のデリバリーサイクルなんですが、気のせいか、リリース日と偏頭痛が来る日がだんだん近づいてきている気がしないでもないような。 これ、デリバリーサイクル変えたほうがいんじゃね?とか思ったり。。
っとまぁそんな偏頭痛系エンジニアのみなさんに朗報?・・・ 今回は以前 Connect(); で発表された、Visual Studio の Live Share という機能の紹介です。
Live Shareについて
Live Share は、自分の Visual Studio のソースコードを他人の Visual Studio あるいは Visual Studio Code に共有して双方向でソースが編集できたり、デバッグできたりします。 Visual Studio 2017 以上 OR Visual Studio Code で利用できます。
ペアプロ用途で使われると思うのですが、最初聞いたときは、あんまりそういうことしないし出番ないかなぁとか思ってました。 (実際、プルリク運用で十分だし)
んでもってこの前の話
この前、令和最大級の偏頭痛が猛威を振るってやむを得ず会社を休んだとき、Hotfix を当てなきゃいけないレベルの不具合が出てしまい。。
自分はレビューアに入ることが多いんですが、いつものなら、休みの場合は担当者がプルリク→サブ担当がチェックの流れなんです。 でも不具合レベルからして2次災害やだよねということでクロスチェックしてくれという依頼がありました。
ソースレビューは、ソースチェックと動確、場合によってはデバッグする必要がありますが、体調悪い中、自宅のマシンに環境作らないけんのかと途方に暮れていたわけです。。
そんな中、同僚からLive Shareあるから試してみたらと提案をしてくれて、無事、難を逃れたというお話です!
Live Shareでよかったこと
「Visual Studio Code」以外のアプリは一切必要ないことです!!(これ知らなかった。。)
この1点につきます。が、超強力です!
ソースが手元になくてOK、VSCだけで良い。 Visual Studio 入れるだけでも、超時間かかるのに、フロントエンドなら Node.js とかいろいろインストールすることを考えると、ひたすらめんどうすぎてやる気なくします。。
これはものすごく簡単なので、Visual Studio で開発している方は一度は試すことをおすすめします。
以下手順。
条件
- レビューイ:Visual Studio 2019 ※ 2017でもOK
- レビューア:Visual Studio Code
※ OSはレビューイ:Windows、レビューア:Macでやりました
(a) レビューイの事前準備(Visual Studio 2019)
1. 拡張機能で Live Share をインストール
拡張機能の管理で LiveShare をインストールします。
VS2019 はデフォルトでインストール済なのでスキップで大丈夫です。
2.共有する
右上の LiveShare をクリックします。 こうするとレビューイのソースが共有されます。
Live Share は、GitHub か MSアカウントにサインインする前提ですので入力します。
そうするとこんな感じ ↓ で招待リンクが払い出されます!
(b) レビューアの事前準備(Visual Studio Code)
1.拡張機能で Live Share をインストール
こっちも同様にインストールします
2.レビューアの招待リンクを実行
招待リンクを実行すると、Visual Studio Code が起動し、リモート接続が完了します!
試してみる
ローカルホストと同じ感覚で、双方向編集やデバッグができちゃいます!
レビューアは、Visual Studio Code 以外、何も用意しなくて良いので 手軽にペアプロ的なことができます。
双方向でGrepやリアルタイム編集ができる
ソースはないけど、あたかもローカルにあるように検索できたり
お互いどこのソースを見ているかもわかるし、双方向の編集ができます。
デバッグ実行も超簡単!
下記はレビューア側の Visual Studio Code ですがブレークポイントを貼ってあたかもローカルホストで動いているかのごとくデバッグ実行ができます! ちなみにこのソースは .NET Framework ですのでMac環境は通常は動きません。
※ これは、レビューイのソースだけでなくAPサーバーも共有されている状態です!
これもレビューアの画面(リモート先)ですが、ローカルホストとして動いてます。 通常のデバッグと同様、変数のウォッチ確認もできます。
まとめというの名の感想
実際に最初やったときは思わず、おっ?!と声がでちゃいました(恥ずかしい)
リモートなのに意外とシームレスな感じで編集・デバッグができました。
Surface Go のような非力マシンでもいけちゃうのかしら?
・・・書きながら薄々気づいていたが偏頭痛系エンジニアに朗報とか言いながら、どこでも作業できるってだけで大して朗報じゃなかった。(スミマセン!!
でも離れた拠点で開発支援してもらっているパートナーのエンジニアたちとも、ライブでレビューできるのはなんかいいかも。 それではまた。
青木
~ecbeingではピンチを技術で乗り越えるスキルとアイディアを持ったエンジニアを大募集中です!~ www.softcreate-holdings.co.jp