JetBrains Rider 2024.1 ヘルプ

ファイルを Git に追加し、変更を追跡する

Git にファイル追加

  1. コミットツールウィンドウを開きます。

  2. Ctrl+Alt+A を押すか、コンテキストメニューから VCS に追加を選択して、バージョン管理外ファイル変更リスト内のファイルをバージョン管理下に置きます。変更リスト全体を追加することも、個別のファイルを選択することもできます。

    Adding a file to VCS

プロジェクトで Git 統合を有効にしている場合、JetBrains Rider は、新しく作成された各ファイルをバージョン管理下に追加することを提案します。この動作は、バージョン管理 | 確認設定ダイアログ Ctrl+Alt+S で変更できます。特定のファイルを常にバージョン管理しないようにしたい場合は、無視するように Git を構成できます。

ローカル設定を保存する workspace.xml を除いて、.idea ディレクトリ内の設定ファイルはすべてバージョン管理下に置く必要があります。workspace.xml ファイルは、VCS によって無視されるものとしてマークする必要があります。

プロジェクトファイルのステータスを確認する

JetBrains Rider を使用すると、ローカルの作業コピーのステータスをプロジェクトのリポジトリバージョンと比較して確認できます。どのファイルが変更されたか、どの新しいファイルが Git に追加されたか、どのファイルが Git によって追跡されていないかを確認できます。

コミットツールウィンドウを開きます。

Git file status
  • 変更変更リストには、リモートリポジトリと最後に同期してから変更されたすべてのファイル (青色でハイライト) と、Git に追加されたがまだコミットされていないすべての新しいファイル (緑色でハイライト) が表示されます。

  • バージョン管理外ファイル変更リストには、あなたのプロジェクトに追加されたが、Git によって追跡されていないすべてのファイルが表示されます。

エディターでファイルへの変更を追跡する

エディターでファイルを変更したときに、そのファイルへの変更を追跡することもできます。すべての変更は、変更された行の隣のガターに表示される変更マーカーでハイライトされ、最後にリポジトリと同期してから導入された変更の種類を示します。リポジトリに変更をコミットすると、変更マーカーが消えます。

テキストに加えた変更は色分けされています。

Highlighting colors for added, changed, and deleted lines

変更マーカーの上にマウスを移動してクリックすると表示されるツールバーを使用して、変更を管理できます。ツールバーは、変更された行の前の内容を示すフレームとともに表示されます。

the modified line marker

the Revert icon をクリックして変更をロールバックし、the Show diff icon をクリックして現在の行の現在のバージョンとリポジトリバージョンの違いを調べることができます。変更されたフラグメントをハイライトするには、the Highlighting button をクリックします。

ファイル全体を元に戻す代わりに、このポップアップの内容の一部をコピーしてエディターに貼り付けることができます。

ファイルの状態を確認する

JetBrains Rider を使用すると、リポジトリに対するプロジェクトファイルのステータスを確認できます。ファイルステータスには、前回リポジトリと同期してからファイルに対して実行された操作が表示されます。

ファイル名のハイライトに使用されている色によって、任意のインターフェース要素 (エディターやツールウィンドウなど) でファイルのステータスを確認できます。

色とフォント設定ページでファイルステータスのデフォルトの色をカスタマイズできます。

設定 Ctrl+Alt+Sバージョン管理 | ファイルステータスの色ページで VCS ファイルのステータスの色を設定できます。

JetBrains Rider: Configure VCS file status colors

一部でリストのデフォルトのファイルステータスの色と意味下表のカラースキーム

ファイルステータス

説明

Color sample: dark green #0A7700

追加済み

アクティブな変更リストのファイルは、リポジトリへの追加がスケジュールされています。

Color sample: green #0EAA00

非アクティブ変更リスト内の追加対象

非アクティブ変更リスト内のファイルは、リポジトリへの追加が予定されています。このファイルステータスは、設定 | バージョン管理 | 変更リスト非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: red #FF0000

変更リストの競合

非アクティブな変更リスト内のファイルがアクティブな変更リスト内で変更されます。この場合、新しいダイアログが開き、変更リストの競合を解決するように求められます。このファイルステータスは、設定 | バージョン管理 | 変更リストですべてのオプションが有効になっている場合に使用できます。

Color sample: dark green #0A7700

コピー

ファイルが別のファイルのコピーである場合、そのメタデータが追跡され、そのようなファイルはコピー済みとしてマークされます。

Color sample: grey #616161

削除

ファイルはリポジトリから削除される予定です。

Color sample: dull purple #773895

ファイルシステムから削除

ファイルはローカルで削除されましたが、削除がスケジュールされておらず、リポジトリにまだ存在しています。

Color sample: light grayish blue #8AA4C8

変更された子孫あり

ファイルが変更されると、IDE はそのファイルを含むすべてのディレクトリを再帰的にハイライトします。このステータスは、設定 | バージョン管理 | 確認プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: bright blue #3264B4

即時変更された子あり

ファイルが変更されると、IDE はその親ディレクトリをハイライトします。このステータスは、設定 | バージョン管理 | 確認プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: light brown #B28C00

ハイジャック

[Perforce、ClearCase、VSS] ファイルはチェックアウトなしで変更されます。

Color sample: dark olive #727238

無視

ファイルは VCS によって意図的に追跡されていません。

Color sample: purple #7503DC

マージ済み

ファイルはアップデートの結果として VCS によってマージされます。

Color sample: red #FF0000

競合がある状態でマージされています

最後の更新中に、ファイルは競合とマージされました。

Color sample: red #FF0000

プロパティ競合のマージ

前回の更新中に、IDE はローカルファイルのプロパティとそのサーバーバージョンの違いを検出しました。

Color sample: red #FF0000

テキストおよびプロパティ競合のマージ

テキストとプロパティの競合は、2 人以上の開発者がファイルの同じ行と同じファイルプロパティを変更すると発生します。

Color sample: bright navy #0032A0

変更

最後の同期以降にファイルが変更されました。

Color sample: blue #0047E4

非アクティブな変更リストで変更

無効な変更リスト内のファイルが変更されます。このファイルステータスは、設定 | バージョン管理 | 変更リスト非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: Olive #7C7C00

廃止

このファイルはもうリポジトリの作業コピーに含まれていないはずです。

Color sample: teal #007C7C

名前変更

最後の更新以降、ファイルの名前は変更されました。

Color sample: dark cyan #08978F

切り替え

[SVN] ファイルはプロジェクト全体とは異なるブランチから取得されます。

Color sample: brown #993300

(不明)バージョン管理外

ファイルはローカルに存在しますが、リポジトリには存在せず、追加はスケジュールされていません。

Color sample: black なし (デフォルトの色)

最新

ファイルは変更されていません。

ファイルステータス

説明

Color sample: dull green #629755

追加済み

アクティブな変更リストのファイルは、リポジトリへの追加がスケジュールされています。

Color sample: dull green #629755

非アクティブ変更リスト内の追加対象

非アクティブ変更リスト内のファイルは、リポジトリへの追加が予定されています。このファイルステータスは、設定 | バージョン管理 | 変更リスト非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: dull red #D5756C

変更リストの競合

非アクティブな変更リスト内のファイルがアクティブな変更リスト内で変更されます。この場合、新しいダイアログが開き、変更リストの競合を解決するように求められます。このファイルステータスは、設定 | バージョン管理 | 変更リストですべてのオプションが有効になっている場合に使用できます。

Color sample: green #0A7700

コピー

ファイルが別のファイルのコピーである場合、そのメタデータが追跡され、そのようなファイルはコピー済みとしてマークされます。

Color sample: grey #6C6C6C

削除

ファイルはリポジトリから削除される予定です。

Color sample: dull purple #6C6C6C

ファイルシステムから削除

ファイルはローカルで削除されましたが、削除がスケジュールされておらず、リポジトリにまだ存在しています。

Color sample: light blue #6897BB

変更された子孫あり

ファイルが変更されると、IDE はそのファイルを含むすべてのディレクトリを再帰的にハイライトします。このステータスは、設定 | バージョン管理 | 確認プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: light blue #6897BB

即時変更された子あり

ファイルが変更されると、IDE はその親ディレクトリをハイライトします。このステータスは、設定 | バージョン管理 | 確認プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: white なし (デフォルトの色)

ハイジャック

[Perforce、ClearCase、VSS] ファイルはチェックアウトなしで変更されます。

Color sample: light olive #848504

無視

ファイルは VCS によって意図的に追跡されていません。

Color sample: light purple #9876AA

マージ済み

ファイルはアップデートの結果として VCS によってマージされます。

Color sample: dull red #D5756C

競合がある状態でマージされています

最後の更新中に、ファイルは競合とマージされました。

Color sample: dull red #D5756C

プロパティ競合のマージ

前回の更新中に、IDE はローカルファイルのプロパティとそのサーバーバージョンの違いを検出しました。

Color sample: dull red #D5756C

テキストおよびプロパティ競合のマージ

テキストとプロパティの競合は、2 人以上の開発者がファイルの同じ行と同じファイルプロパティを変更すると発生します。

Color sample: light blue #6897BB

変更

最後の同期以降にファイルが変更されました。

Color sample: light blue #6897BB

非アクティブな変更リストで変更

無効な変更リスト内のファイルが変更されます。このファイルステータスは、設定 | バージョン管理 | 変更リスト非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: white なし (デフォルトの色)

廃止

このファイルはもうリポジトリの作業コピーに含まれていないはずです。

Color sample: strong cyan #3A8484

名前変更

最後の更新以降、ファイルの名前は変更されました。

Color sample: white なし (デフォルトの色)

切り替え

[SVN] ファイルはプロジェクト全体とは異なるブランチから取得されます。

Color sample: soft red #D1675A

(不明)バージョン管理外

ファイルはローカルに存在しますが、リポジトリには存在せず、追加はスケジュールされていません。

Color sample: white なし (デフォルトの色)

最新

ファイルは変更されていません。

ファイルステータス

説明

Color sample: green #62CC47

追加済み

アクティブな変更リストのファイルは、リポジトリへの追加がスケジュールされています。

Color sample: green #62CC47

非アクティブ変更リスト内の追加対象

非アクティブ変更リスト内のファイルは、リポジトリへの追加が予定されています。このファイルステータスは、設定 | バージョン管理 | 変更リスト非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: dull red #FF6666

変更リストの競合

非アクティブな変更リスト内のファイルがアクティブな変更リスト内で変更されます。この場合、新しいダイアログが開き、変更リストの競合を解決するように求められます。このファイルステータスは、設定 | バージョン管理 | 変更リストですべてのオプションが有効になっている場合に使用できます。

Color sample: green #62CC47

コピー

ファイルが別のファイルのコピーである場合、そのメタデータが追跡され、そのようなファイルはコピー済みとしてマークされます。

Color sample: orange #ED864A

削除

ファイルはリポジトリから削除される予定です。

Color sample: orange #ED864A

ファイルシステムから削除

ファイルはローカルで削除されましたが、削除がスケジュールされておらず、リポジトリにまだ存在しています。

Color sample: vivid cyan #4FF0FF

変更された子孫あり

ファイルが変更されると、IDE はそのファイルを含むすべてのディレクトリを再帰的にハイライトします。このステータスは、設定 | バージョン管理 | 確認プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: vivid cyan #4FF0FF

即時変更された子あり

ファイルが変更されると、IDE はその親ディレクトリをハイライトします。このステータスは、設定 | バージョン管理 | 確認プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: white なし (デフォルトの色)

ハイジャック

[Perforce、ClearCase、VSS] ファイルはチェックアウトなしで変更されます。

Color sample: light olive #A9B837

無視

ファイルは VCS によって意図的に追跡されていません。

Color sample: light purple #ED94FF

マージ済み

ファイルはアップデートの結果として VCS によってマージされます。

Color sample: dull red #FF6666

競合がある状態でマージされています

最後の更新中に、ファイルは競合とマージされました。

Color sample: dull red #FF6666

プロパティ競合のマージ

前回の更新中に、IDE はローカルファイルのプロパティとそのサーバーバージョンの違いを検出しました。

Color sample: dull red #FF6666

テキストおよびプロパティ競合のマージ

テキストとプロパティの競合は、2 人以上の開発者がファイルの同じ行と同じファイルプロパティを変更すると発生します。

Color sample: vivid cyan #4FF0FF

変更

最後の同期以降にファイルが変更されました。

Color sample: vivid cyan #4FF0FF

非アクティブな変更リストで変更

無効な変更リスト内のファイルが変更されます。このファイルステータスは、設定 | バージョン管理 | 変更リスト非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。

Color sample: white なし (デフォルトの色)

廃止

このファイルはもうリポジトリの作業コピーに含まれていないはずです。

Color sample: vivid cyan #4FF0FF

名前変更

最後の更新以降、ファイルの名前は変更されました。

Color sample: white なし (デフォルトの色)

切り替え

[SVN] ファイルはプロジェクト全体とは異なるブランチから取得されます。

Color sample: soft red D1675A

(不明)バージョン管理外

ファイルはローカルに存在しますが、リポジトリには存在せず、追加はスケジュールされていません。

Color sample: white なし (デフォルトの色)

最新

ファイルは変更されていません。

リポジトリからファイルを削除する

バージョン管理下にあるファイルを削除しても、変更をコミットするまでそのファイルはリポジトリに残ります。削除されたファイルはアクティブな変更リストに配置され、灰色でハイライトされます。

  1. ソリューションエクスプローラーでファイルを選択し、Delete を押すか、コンテキストメニューから削除を選択します。

  2. 表示されるダイアログで、使用方法を検索せずにこのファイルを削除するか、安全な削除オプションをチェックして安全な削除を実行する (未使用のファイルを確実に削除するため) かを選択できます。

    使用箇所が見つかった場合は、検出された使用箇所ダイアログがポップアップ表示され、使用箇所がリストされます。ファイルを削除する前に、これらの使用箇所を表示し、このファイルへの参照を削除できます。

  3. リポジトリへの変更をコミットします。

関連ページ:

バージョン管理統合サポート

JetBrains Rider は 2 つのレベルでバージョン管理統合をサポートします。IDE レベルでは、VCS 統合は、デフォルトで有効になっているバンドルされたプラグインのセットを通じて提供されます。ソリューションレベルでは、ソリューションフォルダーを 1 つまたは複数のバージョン管理システムに関連付けることにより、VCS 統合が有効になります。プロジェクトルートをバージョン管理システムに関連付ける:JetBrains Rider を使用すると、プロジェクトとバージョン管理システムの統合...

リモート Git リポジトリと同期する (フェッチ、プル、更新)

変更をアップストリームにプッシュして作業結果を共有する前に、リモートリポジトリと同期して、プロジェクトのローカルコピーが最新であることを確認する必要があります。これを行うには、次のいずれかの方法があります: 変更のフェッチ、変更のプル、プロジェクトの更新 Git ブランチポップアップは、ブランチにまだフェッチされていない受信コミットがあるかどうかを示します。変更のフェッチ:アップストリームから変更をフェッチすると、リモートリポジトリと最後に同期してから行われたコミットからのすべての新しいデータがロー...

カラースキームの切り替え

このセクションを使用して、JetBrains Rider エディターの配色を選択します。スキームワークスペースで使用する配色を選択してください。このボタンをクリックすると、次のコマンドが呼び出されます(選択したスキームに応じて)。複製: 現在選択されているカラー設定を新しいスキームとして保存します。新しいスキームを保存するにはを押し、操作をキャンセルするにはを押します。デフォルトの復元: 選択したカラースキームを JetBrains Rider に同梱されている初期デフォルトにリセットする...

配色: IDE テキストのフォントと色

開発者は、エディターのソースコード、検索結果、デバッガー情報、コンソールの入出力など、多くのテキストリソースを操作します。このテキストのフォーマットには色とフォントスタイルが使用されており、一目で理解できるようになります。JetBrains Rider では、IDE テキストで使用される色とフォントを定義する構成可能な配色から選択できます。事前定義された配色を使用するか、あなたの好みに合わせてカスタマイズすることができます。スキームを共有することも可能です。配色を選択を押して設定を開き、を選択し...

変更を変更リストにグループ化する

変更リストは、VCS リポジトリにまだコミットされていないローカル変更のセットです。変更リストを使用すると、さまざまなタスクに関連する変更をグループ化し、これらの変更セットを個別にコミットできます。詳細については、変更をローカルでコミットするを参照してください。JetBrains Rider の変更リストは、統合された VCS クライアントの機能であり、VCS ごとに異なる実装があります。たとえば、Git を使用する場合、変更リストは Git 機能を拡張するクライアント機能ですが、SVN を使用...

Git の競合を解決する

チームで作業しているときに、現在作業中のファイルに誰かが変更をプッシュするという状況に遭遇する可能性があります。これらの変更が重複しない場合(つまり、異なるコード行に変更が加えられた場合)、競合するファイルは自動的にマージされます。しかし、同じ行が影響を受けた場合、Git は無作為に一方を他方を選ぶことはできず、衝突を解決するように求めます。Git では、プル、マージ、リベース、チェリーピック、変更のスタッシュ解除、またはパッチの適用のいずれかの操作を実行しようとすると、競合が発生する可能性があ...