連載
» 2021年11月19日 05時00分 公開

VS Codeでソースコード管理:GitLens拡張機能を使ってみようVisual Studio Codeで快適Pythonライフ

VS Code用の拡張機能「GitLens」を使うと、特定の行を誰が書いたのかの確認や、リビジョン間のナビゲーションを簡単に行えます。

[かわさきしんじ,Deep Insider編集部]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Visual Studio Codeで快適Pythonライフ」のインデックス

連載目次

 前回はGitHub Pull Requests and Issues拡張機能を使って、Visual Studio Code(以下、VS Code)の中からissueを作成してみました。今回はVS Codeでソース管理をしていく上でインストールしていると便利なもう一つの拡張機能「GitLens」を紹介します。

GitLensとは

 GitLensを使うと、誰がこのコードを書いたのか、このコミットは誰により行われたのか、コードはどのように変わっていったのかなどを、VS Codeの内部で簡単に参照できるようになります。

GitLens拡張機能のページ(マーケットプレイス) GitLens拡張機能のページ(マーケットプレイス)

 [拡張機能]ビューの検索ボックスに「gitlens」などと入力して、GitLens拡張機能を検索し、インストールすると次のようにアクティビティーバーに[GitLens]アイコンが表示されます。

インストールすると、アクティビティーバーに[GitLens]アイコンが表示される インストールすると、アクティビティーバーに[GitLens]アイコンが表示される

 このアイコンをクリックすると、GitLensのウエルカムビューがサイドバーに表示されるので、[Welcome(Quick Setup)]ボタンをクリックしましょう。これにより、クイックセットアップを行うためのタブが表示されます。

ウエルカムビューで[Welcome(Quick Setup)]ボタンをクリックしたところ ウエルカムビューで[Welcome(Quick Setup)]ボタンをクリックしたところ

 この画面ではカーソル行のコードを誰か書いたか(git blame)を、その行の右端に表示するかどうかや、ファイルやそこに含まれるコードに手を入れた人をファイル先頭やコードブロック先頭に表示するかなどを設定できます。

設定可能な項目 説明
Current Line Blame カーソル行のコードを誰が書いたかをその行の右端に表示するかどうか
Git Code Lens ファイルやそこに含まれるコードに手を入れた人をファイル先頭やコードブロック先頭に表示するかどうか
Status Bar Blame カーソル行のコードを誰が書いたかをステータスバーに表示するかどうか
Views GitLensが提供する機能を[ソース管理]ビューに表示するか、[GitLens]ビューに表示するか
Dates & Times 日付と時刻の形式
クイックセットアップタブで設定可能な項目

 Views項目についてはここで簡単に説明しておきましょう。GitLensはデフォルトで、[ソース管理]タブにそれが提供する機能を表示するようになっています。

デフォルトでは[ソース管理]ビューからGitLensの機能にアクセスできる デフォルトでは[ソース管理]ビューからGitLensの機能にアクセスできる

 [GitLens Layout]を選択すると、それらの機能には[GitLens]ビューからアクセスするように変わります。

[GitLens]ビューに表示された各種機能 [GitLens]ビューに表示された各種機能

 この後は、他の設定項目の幾つかについて簡単に見てみましょう。

Current Line Blame

 この項目はデフォルトで有効で、その場合には、以下のようにカーソル行の右端にその行を誰が記述したかの情報がアノテーションとして表示されるようになります(以下の画像では、少し文字色が薄いので見づらいかもしれません)。

Current Line Blameが有効な場合 Current Line Blameが有効な場合

 なお、その上にポップアップしている詳細情報は、マウスカーソルをアノテーションにホバーさせると表示されるものです。これにはコミットやissueに関連する情報や、どんな変更が行われたかなどが一目で分かるように表示され、そこからリンクをクリックして必要な情報にもアクセスできるので、コードをブラウズするだけでさまざまな情報がすぐに分かるようになっています。

Status Bar Blame

 Status Bar Blameもデフォルトで有効です。これが有効だと、カーソル行のコードを誰が書いたかがステータスバーに表示されます。

ステータスバーに表示されたgit blame情報 ステータスバーに表示されたgit blame情報

 スタータスバーの該当部分をクリックすると、先ほどと同様にそのコミットに関連する情報やコマンドがコマンドパレットに表示されます。

Git Code Lens

 Git Code Lens項目もデフォルトで有効です。この場合には、ファイル全体あるいは何らかのコードブロックに手を入れた人が、ファイル先頭あるいはコードブロック先頭に表示されるようになります。

Git Code Lensによる表示の例 Git Code Lensによる表示の例

 この例では、ファイル先頭に「You, 5 hours ago|2 authors(user01 and others)」とあります。また、その下のクラス定義の先頭にも同様なGit Code Lensが表示されています。パイプ記号「|」で区切られた左側には直近に変更を加えた人が、右側にはコードに手を入れた人(および、それらの人々の中で最も重要だと思われる人)が表示されています。

 また、左側をクリックすると、コマンドパレット部分に以下のように直近の変更とそれに関連する各種コマンドが表示されます。

コマンドパレットに表示された各種情報とコマンド コマンドパレットに表示された各種情報とコマンド

 ここで例えば、[Open Changes]をクリックすれば、次のように差分が簡単に確認できます。

[Open Changes]をクリックしたので、変更点の差分が表示された [Open Changes]をクリックしたので、変更点の差分が表示された

 直近の変更では、単にミススペルを修正したことが確認できました。

 右側をクリックすると、ファイル全体を対象としてgit blameによるアノテーション付きで変更履歴をナビゲーションできるようになります。

git blameのアノテーション付きで変更履歴を表示したところ git blameのアノテーション付きで変更履歴を表示したところ

 このときタブの右側にある各種のボタンを使って、以前のリビジョンにさかのぼったり、次のリビジョンに進んだり、ナビゲート時点のリビジョンのファイルをオープンしたりできます(このときには別のタブがオープンされます)。

リビジョンのナビゲーションなどに使用するボタン リビジョンのナビゲーションなどに使用するボタン

 表示を元に戻すには上の画像でオレンジ色になっているボタンをクリックします。

変更履歴のナビゲーション

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。