59
58

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Visual Studio CodeのGit関連プラグイン

Posted at

これはなに?

昨年から使っているVisual Studio Codeの拡張機能の簡単な紹介になります。プログラミングに関するものではなく、ツールについてのお話です。

今回は、Git関連の拡張機能を取り上げます。

Git Graph

エディタ上でGitのリポジトリのグラフ(リポジトリツリー)を可視化してくれる拡張機能です。
また、同じ画面上から、履歴を参照したりマージをしたり、チェリーピックを作成したりと、様々なアクションができるようになっています!

あって嬉しい!

わたしはVisual Studio Code (以下VSCode)以前は、GitのツールとしてはSourceTreeを良く使っていました。
エディタとは別になってしまっていても、リポジトリグラフが見やすかったことや、画像の対比が出来たことが大きな理由です。

ただ、わたしの環境だけかもしれませんが、安定稼働に難点があり、最近は使わなくなってしまいました。

その後はコマンドラインでの操作が中心になりましたが、やはり時々リポジトグラフが見たくなります。
このため、tig というコマンドラインのインタフェースを使っていました。

さて、そんなおり、ふと拡張機能で何かいいものが無いかしら...と探してみたら、Git Graphというバッチリのものが!
早速入れてみたら、とっても良い感じでした。

こんなところがよかった!

  • とにかく動作が軽快な気がします!
  • ローカルのリポジトリだけでなく、リモートリポジトリも切り替えて表示可能
  • 絞り込みができる
  • 色やタグが見やすい

git-graph.jpg

また、グラフだけじゃなく、なにげなく右クリックやアイコンをクリックすると、期待を裏切らず色々な操作が出来るようになっています。

  • Cherry pickする
  • 差分を見る
  • マージする

などなど。

git-graph-2.jpg

かなり軽いのですが、これだけの情報、さらにリモートリポジトリの表示切り替えやpush / pullももちろん出来るので、どんな通信が発生しているのかとても気になるところ。

ソースを読んで理解するレベルには全然追いつけていませんが、Wiresharkで通信を見てみると、確かにGitHub側のAPIとのやりとりが発生しているのが分かります。
(実際の通信は暗号化されるので、ここではTLSのハンドシェイクで確認したもので代用)

git-graph-dump.jpg

APIを使って情報を集約し、これだけの画面が作れるなんて、凄いですね!
いつかソースからビルドしてデバッグしながら通信を眺めてみたいです。

GitLens

2つめはGitLensです。
ソースコード上の各行に対して、誰がいつコードを変更したかを表示してくれます。(邪魔にならないように!)

こんなところがよかった!

  • これも操作が軽いです!
  • 個人リポジトリではなく、仕事でみんなで作業しているリポジトリでとても助かります!
  • 過去の誰かが作ってくれたコードを修正する時
  • アラートのお当番で例外が発生したコードがいつごろ変更されたのかを確認する時

git-lens.jpg

カーソルを合わせた行の右側にうっすらとAuthorや修正日が表示されます。
すばらくするとポップアップが出て、そこから差分を確認したり、ブランチを切り替えたりといったことが出来ます。

特に、コードの調査から始めるときにとても便利です!

GitHub Pull Requests

こちらはMicrosoftが提供している、VSCode上でプルリクエストを参照したり更新できる拡張機能です。

こんなところがよかった!

  • プルリクエストの一覧が左側に表示されます
    • 通知では見落としていたプルリクエストにも気づいたり...
  • ブラウザを開かずにVSCodeからプルリクエストを作成したり、更新したりできること

この拡張機能に関しては、わたしのTweetを載せておきます。

まとめ

Visual Studio Codeの拡張機能は本当にたくさんで、楽しいものが多いですね!わたし自身は作れはしないので、ひたすらこういったものを作れる方を尊敬してしまいます。
もちろんソースコードは公開されているので、少しずつ覚えていけたらなあと感じています。

また、良い拡張機能に会ったら、ぜひ星やコメントを添えてあげていただけると嬉しいです!

59
58
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
59
58

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?