CodeLens によるコード変更とその他の履歴の検索
CodeLens では、エディターを離れずにコードに対する変更を把握できるため、自分の作業に専念できます。 コードへの参照、コードへの変更、リンクされたバグ、Azure DevOps 作業項目、コード レビュー、単体テストを検索できます。
Note
CodeLens は Visual Studio の Community エディションで使用できますが、"ソース管理" インジケーターはこのエディションでは使用できません。
CodeLens はコードの各部分がソリューションのどこで使用されているかとどのように使用されているかの両方を表示することができます。
表示するインジケーターを選択するか、CodeLens のオンとオフを切り替えるには、 [ツール] 、 [オプション] 、 [テキスト エディター] 、 [すべての言語] 、 [CodeLens] の順に移動します。
コード参照の検索
C# コードまたは Visual Basic コードでの参照を検索することができます。 ここではその方法を説明します。
コード エディターで、[参照] インジケーターを選択するか、Alt+2 キーを押します。
Note
インジケータの表示が 0 references である場合は、C# または Visual Basic コードの参照がないということです。 ただし、.xaml ファイルや .aspx ファイルなどの他の項目の参照が存在する場合があります。
参照元コードを表示するには、リスト内の参照の上にマウス ポインターを合わせます。
参照を含むファイルを開くには、参照をダブルクリックします。
コード マップ
コードとその参照の間の関係を表示するには、コード マップを作成します。 コード マップのショートカット メニューで、[すべての参照の表示] を選択します。
コードに含まれる変更の検索
コードの変遷をたどるため、コードの履歴を確認します。 または、他の分岐での変更がコードに与える可能性のある影響を理解できるよう、変更をコードにマージする前に、それらの変更を検討します。
必要なもの:
Visual Studio Enterprise または Visual Studio Professional
Git、Azure DevOps Server (以前は Team Foundation Server) または Team Foundation バージョン管理
Team Foundation バージョン管理 (TFVC) または Git で格納されている C# または Visual Basic コードでは、CodeLens の詳細をクラス レベルまたはメソッド レベルで取得します (コードの要素レベルのインジケーター)。
.cs または .vb 以外のファイルの種類については、ファイル全体の CodeLens の詳細を 1 つの場所 ("ファイルレベル" インジケーター) で取得します。
コードの要素レベルのインジケーター
コードの要素レベルのインジケーターでは、コードの変更者とその変更内容を確認できます。 コードの要素レベルのインジケーターは、C# および Visual Basic コードに対して利用できます。
Azure DevOps Services で Team Foundation バージョン管理 (TFVC) を使用すると、変更履歴を表示することもできます。
既定の時間は直近 12 か月です。
1 年以上前の変更を含む、すべての変更の詳細な履歴を表示するには、[すべてのファイルの変更の表示] を選択します。これによって [履歴] ウィンドウが開きます。
[履歴] ウィンドウでは、Git リポジトリ内のすべてのファイルを表示できます。 その後、コード要素レベル変更インジケーターを選択して詳細を確認できます。
ファイル レベルのインジケーター
ファイルレベル インジケーターを表示してファイル全体を確認することもできます。
Note
ファイル レベルのインジケーターは、C# ファイルおよび Visual Basic ファイルでは利用できません。
変更に関する詳細情報を取得するには、その項目を右クリックします。 TFVC を使用しているか Git を使用しているかに応じて、ファイルのバージョンの比較、詳細の表示と変更セットの追跡、ファイルの選択バージョンの取得、その変更の作成者へのメールといったオプションがあります。 これらの詳細の一部は、 Team Explorer に表示されます 有効になっている場合は、これらの詳細は Git Changes タブに表示され、エディターの下部にある水平スクロール バーにも表示されることがあります。
また、コードを変更したユーザーを時系列で確認することもできます。これは、チームの変更のパターンを見つけて、その影響を評価するのに役立ちます。
Visual Studio 2022 バージョン 17.12 Preview 2 以降では、エディターの水平スクロール バーにファイル レベルインジケーターを表示または非表示にすることができます。 インジケーターを非表示にするには、 Tools > オプション > テキスト エディター > 詳細を開き、 Show ファイル レベルの CodeLens インジケーター オプションを無効にします。 このオプションは、XAML、HTML、CSS などの下部のエディター スクロール バーにファイル レベルの CodeLens コントロールがあり、インライン CodeLens を含むファイルには影響しないファイルの種類の表示に影響します。
現在の分岐での変更の検索
安定したコードを損なうリスクを軽減するために、チームには複数のブランチ (たとえば、メイン ブランチとその子の開発ブランチなど) が存在する場合があります。 メイン分岐で、コードを変更したユーザーの数と、変更の数を確認できます。それには、Alt+6キーを押します。
コードが分岐された時期の確認
コードが分岐された時期を確認するには、子分岐のコードに移動します。 次に、変更インジケーターを選択するか、Alt+6 キーを押します。
他の分岐から追加される変更の検索
追加された変更を表示することができます。 そのときに、変更を確認するために現在のブランチを離れる必要はありません。
変更がマージされた時期の確認
変更がいつマージされたかを確認できるので、ブランチにどの変更が含まれているかを特定できます。
追加される変更をローカル バージョンと比較します
新しい変更をローカル バージョンと比較するには、変更セットをダブルクリックするか、Shift+F10 キーを押します。
分岐アイコン
[分岐] 列のアイコンは、分岐が、作業中の分岐とどのような関係にあるのかを示します。
アイコン | 変更元: |
---|---|
現在の分岐 | |
親分岐 | |
子分岐 | |
ピア分岐 | |
親、子、またはピアより遠い分岐 | |
親分岐から子分岐へのマージ | |
子分岐から親分岐へのマージ | |
無関係の分岐からのマージ (ベースレス マージ) |
リンクされた作業項目
リンクされた作業項目を検出するには、作業項目インジケーターを選択するか、または Alt+8 キーを押します。
リンクされたコード レビュー
リンクされたコード レビューを検出するには、レビュー インジケーターを選択します。 キーボードを使用する場合は、Alt キーを押しながら左方向キーまたは右方向キーを押して、インジケーター オプション間を移動します。
リンクされているバグ
リンクされているバグを検出するには、バグ インジケーターを選択するか、または Alt+7 キーを押します。
項目の所有者に連絡する
項目の所有者を確認するには、所有者インジケーターを選択するか、または Alt+5 キーを押します。
項目のショートカット メニューを開いて問い合わせのオプションを表示することもできます。 (Teams がインストールされている場合は、使用できる追加のコミュニケーション オプションがあります。)
関連付けられた単体テスト
テスト エクスプローラーを開くことなく、ご使用の C# コードまたは Visual Basic コード向けに存在する単体テストを検出することができます。
単体テスト コードに関連付けられたアプリケーション コードに移動します。
まだ行っていない場合は、アプリケーションをビルドして CodeLens テスト インジケーターを読み込みます。
コード用のテストをレビューするには、Alt+3 キーを押します。
警告アイコン が表示された場合、テストはまだ実行されていないため、実行してください。
テストの定義を確認するには、CodeLens インジケーターのウィンドウでテスト項目をダブルクリックして、エディターでコード ファイルを開きます。
テストの結果を確認するには、テスト状態インジケーター ( または ) を選択するか、Alt+1 キーを押します。
何人のユーザーによってこのテストが変更されたか、だれがこのテストを変更したか、また、このテストに対していくつの変更が行われたかを確認するには、コードの履歴とリンクされた項目を検索します。
キーボード ショートカット
キーボードを使用してインジケーターを選択するには、Alt キーを押したままにして関連する数字キーを表示し、目的のインジケーターに対応する数字キーを押します。
Note
レビュー インジケーターを選択するには、Alt キーを押しながら、左方向キーと右方向キーを使用して移動します。
Q & A
Q:CodeLens を有効または無効にしたり、表示するインジケーターを選択したりするには、どうしたらいいですか。
A: 参照インジケーター以外のインジケーターは無効にも有効にもできます。 [ツール] 、 [オプション] 、 [テキスト エディター] 、 [すべての言語] 、 [CodeLens] の順に進みます。
インジケーターが有効の場合は、インジケーターから CodeLens のオプションを開くこともできます。 そして、エディター ウィンドウの下部にあるシェブロン アイコンを使用して、CodeLens のファイルレベル インジケーターのオンとオフを切り替えることができます。
Q: CodeLens はどこにありますか。
A: CodeLens は、メソッド、クラス、インデクサー、およびプロパティ レベルの C# および Visual Basic のコードで表示されます。 それ以外の種類のファイルについては、ファイル レベルで CodeLens が表示されます。
CodeLens が有効になっていることを確認します。 [ツール] 、 [オプション] 、 [テキスト エディター] 、 [すべての言語] 、 [CodeLens] の順に進みます。
DevOps 関連のインジケーターは、作業項目がコードにリンクされていて、リンクされた作業項目を開く権限を自分が持っている場合にだけ表示されます。 チーム メンバーのアクセス許可があることを確認してください。
アプリケーション コードに単体テストがない場合は、単体テスト インジケーターが表示されません。 テスト状態インジケーターは、テスト プロジェクトに自動的に表示されます。 アプリケーション コードに単体テストがあることがわかっているのに、テスト インジケーターが表示されない場合は、ソリューションのビルドを試みます (Ctrl+Shift+B)。
ヒント
CodeLens は Visual Studio Community エディションで使用できますが、"ソース管理" のインジケーターはこのエディションでは使用できません。
コミットの作業項目詳細が表示されないのはなぜですか。
A: これは CodeLens が Azure Boards の作業項目を見つけることができないために発生している可能性があります。 その作業項目があるプロジェクトに接続していることと、その作業項目を表示するアクセス許可があることを確認してください。 作業項目の詳細は、コミットの記述に Azure Boards の作業項目 ID に関する誤った情報が含まれている場合にも、表示されない可能性があります。
Q: CodeLens のフォントと色を変更するにはどうすればよいですか。
A:[ツール] 、 [オプション] 、 [環境] 、 [フォントおよび色] の順に進みます。
キーボードを使用するには:
Alt+T+O キーを押して、 [オプション] ダイアログ ボックスを開きます。
上方向 キーまたは 下方向 キーを押して [環境] ノードに移動するか、 左方向 キーを押してノードを展開します。
下方向 キーを押して [フォントおよび色]に移動します。
Tab キーを押して [設定の表示] の一覧に移動し、下方向キーを押して [CodeLens] を選択します。
Q: CodeLens ヘッドアップ ディスプレイを移動できますか。
A: はい、できます。 を選択して、CodeLens をウィンドウとしてドッキングします。
Q: インジケーターを更新するにはどうすればよいですか。
A: 方法は、インジケーターによって異なります。
参照: このインジケーターは、コードが変更されるときに自動的に更新されます。 [参照] インジケーターが別個のウィンドウとしてドッキングされている場合は、[更新] を選択することでインジケーターを更新します。
チーム: 右クリック メニューから [CodeLens チーム インジケーターの更新] を選択することでこれらのインジケーターを更新します。
テスト: コードの単体テストを検索し、テスト インジケーターを更新します。
Q: "ローカル バージョン" とは何ですか。
A:[ローカル バージョン] 矢印は、ファイルのローカル バージョンの最新の変更セットを指しています。 サーバーにさらに新しい変更セットが含まれる場合、その変更セットは、使用されている並べ替え順序に応じて [ローカル バージョン] 矢印の上または下に表示されます。
Q: ソリューションを最初に開いたときに、ファイルに CodeLens テスト インジケーターが表示されなくなります。 これを読み込むにはどうすればよいですか。
A: プロジェクトをリビルドし、ファイルに読み込む CodeLens テスト インジケーターを取得します。 パフォーマンスを向上させるため、Visual Studio では、コード ファイルが読み込まれるときにテスト インジケーターのソース情報がフェッチされなくなります。 テスト インジケーターは、ビルド後、またはテスト エクスプローラーでダブルクリックしてテストに移動するときに読み込まれます。
CodeLens では、エディターを離れずにコードに関する情報を検索できるため、自分の作業に専念できます。 コードの参照、コードへの変更、リンクされたバグ、作業項目、コード レビュー、単体テストを検索できます。
注意
CodeLens は Visual Studio Community エディションで使用できますが、"ソース管理" のインジケーターはこのエディションでは使用できません。
コードの各部分がソリューションのどこでどのように使用されているかをご覧ください。
エディターから離れずに、コードの変更についてチームに問い合わせることができます。
表示するインジケーターを選択するか、CodeLens のオンとオフを切り替えるには、 [ツール] 、 [オプション] 、 [テキスト エディター] 、 [すべての言語] 、 [CodeLens] の順に移動します。
Visual Studio 2019 でコードへの参照を検索する
C# コードまたは Visual Basic コードでの参照を検索することができます。
参照インジケーターを選択するか、または Alt+2 キーを押します。
注意
インジケータの表示に参照が 1 つもない場合は、C# コードまたは Visual Basic コードからの参照がないということです。 ただし、.xaml ファイルや .aspx ファイルなどの他の項目に参照が含まれる場合があります。
参照元コードを表示するには、リスト内の参照の上にマウス ポインターを合わせます。
参照を含むファイルを開くには、参照をダブルクリックします。
コード マップ
コードとその参照の間の関係を表示するには、コード マップを作成します。 コード マップのショートカット メニューで、[すべての参照の表示] を選択します。
Visual Studio 2019 でコードの変更を見つける
コードの変遷をたどるため、コードの履歴を確認します。 または、他の分岐での変更がコードに与える可能性のある影響を理解できるよう、変更をコードにマージする前に、それらの変更を検討します。
必要なもの:
Visual Studio Enterprise または Visual Studio Professional
Git、Azure DevOps Server (以前は Team Foundation Server) または Team Foundation バージョン管理
Team Foundation バージョン管理 (TFVC) または Git で格納されている C# または Visual Basic コードでは、CodeLens の詳細をクラス レベルまたはメソッド レベルで取得します (コードの要素レベルのインジケーター)。
.cs または .vb 以外のファイルの種類については、ウィンドウ下部の 1 個所でファイル全体の CodeLens の詳細を取得します (ファイル レベル のインジケーター)。
コードの要素レベルのインジケーター
コードの要素レベルのインジケーターでは、コードの変更者とその変更内容を確認できます。 コードの要素レベルのインジケーターは、C# および Visual Basic コードに対して利用できます。
次に示すのは Team Foundation バージョン管理 (TFVC)、または Azure DevOps Services を使用するときに表示されるものです。
既定の時間は直近 12 か月です。
1 年以上前の変更を含む、すべての変更の詳細な履歴を表示するには、次のように [すべてのファイルの変更の表示] を選択します。
[履歴] ウィンドウが開きます。
ファイルが Git リポジトリにある場合に、コードの要素レベルの変更インジケーターを選択すると、このように表示されます。
ファイル レベルのインジケーター
ウィンドウ下部のファイル レベルのインジケーターで、ファイル全体の変更を探します。
注意
ファイル レベルのインジケーターは、C# ファイルおよび Visual Basic ファイルでは利用できません。
変更に関する詳細情報を取得するには、その項目を右クリックします。 TFVC を使用しているか Git を使用しているかに応じて、ファイルのバージョンの比較、詳細の表示と変更セットの追跡、ファイルの選択バージョンの取得、その変更の作成者へのメールといったオプションがあります。 これらの詳細の一部は、Visual Studio 2019 バージョン 16.7 およびそれより前のチーム エクスプローラーに表示されます。 Visual Studio 2019 バージョン 16.8 以降では、これらの詳細は [Git の変更] に表示されます。
また、コードを変更したユーザーを時系列で確認することもできます。これは、チームの変更のパターンを見つけて、その影響を評価するのに役立ちます。
現在の分岐での変更の検索
安定したコードを損なうリスクを軽減するために、チームには複数のブランチ (たとえば、メイン ブランチとその子の開発ブランチなど) が存在する場合があります。
メイン分岐で、コードを変更したユーザーの数と、変更の数を確認できます。それには、Alt+6キーを押します。
コードが分岐された時期の確認
コードが分岐された時期を確認するには、子分岐のコードに移動します。 次に、変更インジケーターを選択するか、Alt+6 キーを押します。
他の分岐から追加される変更の検索
追加された変更を表示することができます。 次のスクリーン ショットでは、"Dev" 分岐で、バグ修正が行われています。
変更は、現在の分岐 ("Main" 分岐) を離れることなく検討できます。
変更がマージされた時期の確認
変更がマージされた時期を確認できます。したがって、分岐にどの変更が含まれているかを特定できます。
たとえば、メイン分岐のコードに、"Dev" 分岐からのバグ修正が適用されるとします。
追加される変更をローカル バージョンと比較します
追加される変更をローカル バージョンと比較するには、Shift+F10 キーを押すか、または変更セットをダブルクリックします。
分岐アイコン
[分岐] 列のアイコンは、分岐が、作業中の分岐とどのような関係にあるのかを示します。
アイコン | 変更元: |
---|---|
現在の分岐 | |
親分岐 | |
子分岐 | |
ピア分岐 | |
親、子、またはピアより遠い分岐 | |
親分岐から子分岐へのマージ | |
子分岐から親分岐へのマージ | |
無関係の分岐からのマージ (ベースレス マージ) |
Visual Studio 2019 のリンクされた作業項目
リンクされた作業項目を検出するには、作業項目インジケーターを選択するか、または Alt+8 キーを押します。
Visual Studio 2019 のリンクされたコード レビュー
リンクされたコード レビューを検出するには、レビュー インジケーターを選択します。 キーボードを使用する場合は、Alt キーを押しながら左方向キーまたは右方向キーを押して、インジケーター オプション間を移動します。
Visual Studio 2019 のリンクされたバグ
リンクされているバグを検出するには、バグ インジケーターを選択するか、または Alt+7 キーを押します。
Visual Studio 2019 で項目の所有者に問い合わせる
項目の所有者を確認するには、所有者インジケーターを選択するか、または Alt+5 キーを押します。
連絡先のオプションを表示する項目のショートカット メニューを開きます。 Teams がインストールされている場合は、次のスクリーンショットのようなオプションが表示される場合があります。
Visual Studio 2019 の関連付けられた単体テスト
テスト エクスプローラーを開くことなく、ご使用の C# コードまたは Visual Basic コード向けに存在する単体テストを検出することができます。
単体テスト コードに関連付けられたアプリケーション コードに移動します。
まだ行っていない場合は、アプリケーションをビルドして CodeLens テスト インジケーターを読み込みます。
コード用のテストをレビューするには、Alt+3 キーを押します。
警告アイコン が表示された場合、テストはまだ実行されていないため、実行してください。
テストの定義を確認するには、CodeLens インジケーターのウィンドウでテスト項目をダブルクリックして、エディターでコード ファイルを開きます。
テストの結果を確認するには、テスト状態インジケーター ( または ) を選択するか、Alt+1 キーを押します。
何人のユーザーによってこのテストが変更されたか、だれがこのテストを変更したか、また、このテストに対していくつの変更が行われたかを確認するには、コードの履歴とリンクされた項目を検索します。
Visual Studio 2019 のキーボード ショートカット
キーボードを使用してインジケーターを選択するには、Alt キーを押したままにして関連する数字キーを表示し、目的のインジケーターに対応する数字キーを押します。
注意
レビュー インジケーターを選択するには、Alt キーを押しながら、左方向キーと右方向キーを使用して移動します。
Visual Studio 2019 の CodeLens に関する Q&A
Q:CodeLens を有効または無効にしたり、表示するインジケーターを選択したりするには、どうしたらいいですか。
A: 参照インジケーター以外のインジケーターは無効にも有効にもできます。 [ツール] 、 [オプション] 、 [テキスト エディター] 、 [すべての言語] 、 [CodeLens] の順に進みます。
インジケーターが有効の場合は、インジケーターから CodeLens のオプションを開くこともできます。
エディター ウィンドウの下部にあるシェブロン アイコンを使用して、CodeLens のファイル レベル インジケーターのオンとオフを切り替えます。
Q: CodeLens はどこにありますか。
A: CodeLens は、メソッド、クラス、インデクサー、およびプロパティ レベルの C# および Visual Basic のコードで表示されます。 それ以外の種類のファイルについては、ファイル レベルで CodeLens が表示されます。
CodeLens が有効になっていることを確認します。 [ツール] 、 [オプション] 、 [テキスト エディター] 、 [すべての言語] 、 [CodeLens] の順に進みます。
DevOps 関連のインジケーターは、作業項目がコードにリンクされていて、リンクされた作業項目を開くアクセス許可をユーザーが持っている場合にだけ表示されます。 チーム メンバーのアクセス許可があることを確認してください。
アプリケーション コードに単体テストがない場合は、単体テスト インジケーターが表示されません。 テスト状態インジケーターは、テスト プロジェクトに自動的に表示されます。 アプリケーション コードに単体テストがあることがわかっているのに、テスト インジケーターが表示されない場合は、ソリューションのビルドを試みます (Ctrl+Shift+B)。
ヒント
CodeLens は Visual Studio Community エディションで使用できますが、"ソース管理" のインジケーターはこのエディションでは使用できません。
コミットの作業項目詳細が表示されないのはなぜですか。
A: これは CodeLens が Azure Boards の作業項目を見つけることができないために発生している可能性があります。 その作業項目があるプロジェクトに接続していることと、その作業項目を表示するアクセス許可があることを確認してください。 作業項目の詳細は、コミットの記述に Azure Boards の作業項目 ID に関する誤った情報が含まれている場合にも、表示されない可能性があります。
Q: CodeLens のフォントと色を変更するにはどうすればよいですか。
A:[ツール] 、 [オプション] 、 [環境] 、 [フォントおよび色] の順に進みます。
キーボードを使用するには:
Alt+T+O キーを押して、 [オプション] ダイアログ ボックスを開きます。
上方向 キーまたは 下方向 キーを押して [環境] ノードに移動するか、 左方向 キーを押してノードを展開します。
下方向 キーを押して [フォントおよび色]に移動します。
Tab キーを押して [設定の表示] の一覧に移動し、下方向キーを押して [CodeLens] を選択します。
Q: CodeLens ヘッドアップ ディスプレイを移動できますか。
A: はい、できます。 を選択して、CodeLens をウィンドウとしてドッキングします。
Q: インジケーターを更新するにはどうすればよいですか。
A: 方法は、インジケーターによって異なります。
参照: このインジケーターは、コードが変更されるときに自動的に更新されます。 参照インジケーターが独立したウィンドウとしてドッキングされている場合は、[更新] を選択することでインジケーターを更新できます。
チーム: これらのインジケーターを更新するには、右クリック メニューから [CodeLens チームのインジケーターの更新] を選択します。
テスト: コードの単体テストを検索し、テスト インジケーターを更新します。
Q: "ローカル バージョン" とは何ですか。
A:[ローカル バージョン] 矢印は、ファイルのローカル バージョンの最新の変更セットを指しています。 サーバーにさらに新しい変更セットが含まれる場合、その変更セットは、使用されている並べ替え順序に応じて [ローカル バージョン] 矢印の上または下に表示されます。
Q: ソリューションを最初に開いたときに、ファイルに CodeLens テスト インジケーターが表示されなくなります。 これを読み込むにはどうすればよいですか。
A: プロジェクトをリビルドし、ファイルに読み込む CodeLens テスト インジケーターを取得します。 パフォーマンスを向上させるため、Visual Studio では、コード ファイルが読み込まれるときにテスト インジケーターのソース情報がフェッチされなくなります。 テスト インジケーターは、ビルド後、またはテスト エクスプローラーでダブルクリックしてテストに移動するときに読み込まれます。