ファイルを Git に追加し、変更を追跡する
Git にファイル追加
コミットツールウィンドウ Alt+0 を開きます。
Ctrl+Alt+A を押すか、コンテキストメニューから VCS に追加を選択して、バージョン管理外ファイル変更リスト内のファイルをバージョン管理下に置きます。変更リスト全体を追加することも、個別のファイルを選択することもできます。
プロジェクトで Git 統合を有効にしている場合、IntelliJ IDEA は、新しく作成された各ファイルをバージョン管理下に追加することを提案します。この動作は、設定ダイアログ Ctrl+Alt+S で変更できます。特定のファイルを常にバージョン管理しないようにしたい場合は、無視するように Git を構成できます。
のプロジェクトファイルのステータスを確認する
IntelliJ IDEA を使用すると、ローカルの作業コピーのステータスをプロジェクトのリポジトリバージョンと比較して確認できます。どのファイルが変更されたか、どの新しいファイルが Git に追加されたか、どのファイルが Git によって追跡されていないかを確認できます。
コミットツールウィンドウ Alt+0 を開きます。
変更リストには、リモートリポジトリと最後に同期してから変更されたすべてのファイル (青色でハイライト) と、Git に追加されたがまだコミットされていないすべての新しいファイル (緑色でハイライト) が表示されます。
バージョン管理外ファイル変更リストには、あなたのプロジェクトに追加されたが、Git によって追跡されていないすべてのファイルが表示されます。
エディターでファイルへの変更を追跡する
エディターでファイルを変更したときに、そのファイルへの変更を追跡することもできます。すべての変更は、変更された行の隣のガターに表示される変更マーカーでハイライトされ、最後にリポジトリと同期してから導入された変更の種類を示します。リポジトリに変更をコミットすると、変更マーカーが消えます。
テキストに加えた変更は色分けされています。
変更マーカーの上にマウスを移動してクリックすると表示されるツールバーを使用して、変更を管理できます。ツールバーは、変更された行の前の内容を示すフレームとともに表示されます。
をクリックして変更をロールバックし、 をクリックして現在の行の現在のバージョンとリポジトリバージョンの違いを調べることができます。変更されたフラグメントをハイライトするには、 をクリックします。
ファイル全体を元に戻す代わりに、このポップアップの内容の一部をコピーしてエディターに貼り付けることができます。
ファイルの状態を確認する
IntelliJ IDEA を使用すると、リポジトリに対するプロジェクトファイルのステータスを確認できます。ファイルステータスには、前回リポジトリと同期してからファイルに対して実行された操作が表示されます。
ファイル名のハイライトに使用されている色によって、任意のインターフェース要素 (エディターやツールウィンドウなど) でファイルのステータスを確認できます。
色とフォント設定ページでファイルステータスのデフォルトの色をカスタマイズできます。
バージョン管理 | ファイルステータスの色設定ページ Ctrl+Alt+S で VCS ファイルのステータスの色を設定できます。
以下の表は、いくつかのカラースキームにおけるデフォルトのファイルステータスの色とその意味を示しています。
色 | ファイルステータス | 説明 |
---|---|---|
#0A7700 | 追加済み | アクティブな変更リストのファイルは、リポジトリへの追加がスケジュールされています。 |
#0EAA00 | 非アクティブ変更リスト内の追加対象 | 非アクティブ変更リスト内のファイルは、リポジトリへの追加が予定されています。このファイルステータスは、非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。 で |
#FF0000 | 変更リストの競合 | 非アクティブな変更リスト内のファイルがアクティブな変更リスト内で変更されます。この場合、新しいダイアログが開き、変更リストの競合を解決するように求められます。このファイルステータスは、 ですべてのオプションが有効になっている場合に使用できます。 |
#0A7700 | コピー | ファイルが別のファイルのコピーである場合、そのメタデータが追跡され、そのようなファイルはコピー済みとしてマークされます。 |
#616161 | 削除 | ファイルはリポジトリから削除される予定です。 |
#773895 | ファイルシステムから削除 | ファイルはローカルで削除されましたが、削除がスケジュールされておらず、リポジトリにまだ存在しています。 |
#8AA4C8 | 変更された子孫あり | ファイルが変更されると、IDE はそのファイルを含むすべてのディレクトリを再帰的にハイライトします。このステータスは、プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。 で |
#3264B4 | 即時変更された子あり | ファイルが変更されると、IDE はその親ディレクトリをハイライトします。このステータスは、プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。 で |
#B28C00 | ハイジャック | [Perforce, ClearCase, VSS] ファイルはチェックアウトせずに変更されています。 |
#727238 | 無視 | ファイルは VCS によって意図的に追跡されていません。 |
#7503DC | マージ済み | ファイルはアップデートの結果として VCS によってマージされます。 |
#FF0000 | 競合のあるマージ | 最後の更新中に、ファイルは競合とマージされました。 |
#FF0000 | プロパティ競合のマージ | 前回の更新中に、IDE はローカルファイルのプロパティとそのサーバーバージョンの違いを検出しました。 |
#FF0000 | テキストおよびプロパティ競合のマージ | テキストとプロパティの競合は、2 人以上の開発者がファイルの同じ行と同じファイルプロパティを変更すると発生します。 |
#0032A0 | 変更 | 最後の同期以降にファイルが変更されました。 |
#0047E4 | 非アクティブな変更リストで変更 | 無効な変更リスト内のファイルが変更されます。このファイルステータスは、非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。 で |
#7C7C00 | 廃止 | このファイルはもうリポジトリの作業コピーに含まれていないはずです。 |
#007C7C | 名前変更 | 最後の更新以降、ファイルの名前は変更されました。 |
#08978F | 切り替え | [SVN] ファイルは、プロジェクト全体とは異なるブランチから取得されます。 |
#993300 | (不明)バージョン管理外 | ファイルはローカルに存在しますが、リポジトリには存在せず、追加はスケジュールされていません。 |
なし (デフォルトの色) | 最新 | ファイルは変更されていません。 |
色 | ファイルステータス | 説明 |
---|---|---|
#629755 | 追加済み | アクティブな変更リストのファイルは、リポジトリへの追加がスケジュールされています。 |
#629755 | 非アクティブ変更リスト内の追加対象 | 非アクティブ変更リスト内のファイルは、リポジトリへの追加が予定されています。このファイルステータスは、非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。 で |
#D5756C | 変更リストの競合 | 非アクティブな変更リスト内のファイルがアクティブな変更リスト内で変更されます。この場合、新しいダイアログが開き、変更リストの競合を解決するように求められます。このファイルステータスは、 ですべてのオプションが有効になっている場合に使用できます。 |
#0A7700 | コピー | ファイルが別のファイルのコピーである場合、そのメタデータが追跡され、そのようなファイルはコピー済みとしてマークされます。 |
#6C6C6C | 削除 | ファイルはリポジトリから削除される予定です。 |
#6C6C6C | ファイルシステムから削除 | ファイルはローカルで削除されましたが、削除がスケジュールされておらず、リポジトリにまだ存在しています。 |
#6897BB | 変更された子孫あり | ファイルが変更されると、IDE はそのファイルを含むすべてのディレクトリを再帰的にハイライトします。このステータスは、プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。 で |
#6897BB | 即時変更された子あり | ファイルが変更されると、IDE はその親ディレクトリをハイライトします。このステータスは、プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。 で |
なし (デフォルトの色) | ハイジャック | [Perforce, ClearCase, VSS] ファイルはチェックアウトせずに変更されています。 |
#848504 | 無視 | ファイルは VCS によって意図的に追跡されていません。 |
#9876AA | マージ済み | ファイルはアップデートの結果として VCS によってマージされます。 |
#D5756C | 競合のあるマージ | 最後の更新中に、ファイルは競合とマージされました。 |
#D5756C | プロパティ競合のマージ | 前回の更新中に、IDE はローカルファイルのプロパティとそのサーバーバージョンの違いを検出しました。 |
#D5756C | テキストおよびプロパティ競合のマージ | テキストとプロパティの競合は、2 人以上の開発者がファイルの同じ行と同じファイルプロパティを変更すると発生します。 |
#6897BB | 変更 | 最後の同期以降にファイルが変更されました。 |
#6897BB | 非アクティブな変更リストで変更 | 無効な変更リスト内のファイルが変更されます。このファイルステータスは、非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。 で |
なし (デフォルトの色) | 廃止 | このファイルはもうリポジトリの作業コピーに含まれていないはずです。 |
#3A8484 | 名前変更 | 最後の更新以降、ファイルの名前は変更されました。 |
なし (デフォルトの色) | 切り替え | [SVN] ファイルは、プロジェクト全体とは異なるブランチから取得されます。 |
#D1675A | (不明)バージョン管理外 | ファイルはローカルに存在しますが、リポジトリには存在せず、追加はスケジュールされていません。 |
なし (デフォルトの色) | 最新 | ファイルは変更されていません。 |
色 | ファイルステータス | 説明 |
---|---|---|
#62CC47 | 追加済み | アクティブな変更リストのファイルは、リポジトリへの追加がスケジュールされています。 |
#62CC47 | 非アクティブ変更リスト内の追加対象 | 非アクティブ変更リスト内のファイルは、リポジトリへの追加が予定されています。このファイルステータスは、非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。 で |
#FF6666 | 変更リストの競合 | 非アクティブな変更リスト内のファイルがアクティブな変更リスト内で変更されます。この場合、新しいダイアログが開き、変更リストの競合を解決するように求められます。このファイルステータスは、 ですべてのオプションが有効になっている場合に使用できます。 |
#62CC47 | コピー | ファイルが別のファイルのコピーである場合、そのメタデータが追跡され、そのようなファイルはコピー済みとしてマークされます。 |
#ED864A | 削除 | ファイルはリポジトリから削除される予定です。 |
#ED864A | ファイルシステムから削除 | ファイルはローカルで削除されましたが、削除がスケジュールされておらず、リポジトリにまだ存在しています。 |
#4FF0FF | 変更された子孫あり | ファイルが変更されると、IDE はそのファイルを含むすべてのディレクトリを再帰的にハイライトします。このステータスは、プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。 で |
#4FF0FF | 即時変更された子あり | ファイルが変更されると、IDE はその親ディレクトリをハイライトします。このステータスは、プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトするオプションが有効になっている場合に利用可能です。 で |
なし (デフォルトの色) | ハイジャック | [Perforce, ClearCase, VSS] ファイルはチェックアウトせずに変更されています。 |
#A9B837 | 無視 | ファイルは VCS によって意図的に追跡されていません。 |
#ED94FF | マージ済み | ファイルはアップデートの結果として VCS によってマージされます。 |
#FF6666 | 競合のあるマージ | 最後の更新中に、ファイルは競合とマージされました。 |
#FF6666 | プロパティ競合のマージ | 前回の更新中に、IDE はローカルファイルのプロパティとそのサーバーバージョンの違いを検出しました。 |
#FF6666 | テキストおよびプロパティ競合のマージ | テキストとプロパティの競合は、2 人以上の開発者がファイルの同じ行と同じファイルプロパティを変更すると発生します。 |
#4FF0FF | 変更 | 最後の同期以降にファイルが変更されました。 |
#4FF0FF | 非アクティブな変更リストで変更 | 無効な変更リスト内のファイルが変更されます。このファイルステータスは、非アクティブな変更リストからファイルをハイライトするオプションが有効になっている場合に利用可能です。 で |
なし (デフォルトの色) | 廃止 | このファイルはもうリポジトリの作業コピーに含まれていないはずです。 |
#4FF0FF | 名前変更 | 最後の更新以降、ファイルの名前は変更されました。 |
なし (デフォルトの色) | 切り替え | [SVN] ファイルは、プロジェクト全体とは異なるブランチから取得されます。 |
D1675A | (不明)バージョン管理外 | ファイルはローカルに存在しますが、リポジトリには存在せず、追加はスケジュールされていません。 |
なし (デフォルトの色) | 最新 | ファイルは変更されていません。 |
リポジトリからファイルを削除する
バージョン管理下にあるファイルを削除しても、変更をコミットするまでそのファイルはリポジトリに残ります。削除されたファイルはアクティブな変更リストに配置され、灰色でハイライトされます。
プロジェクトツールウィンドウ Alt+1 でファイルを選択し、Delete を押すか、コンテキストメニューから削除を選択します。
表示されるダイアログで、使用方法を検索せずにこのファイルを削除するか、安全な削除オプションをチェックして安全な削除を実行する (未使用のファイルを確実に削除するため) かを選択できます。
使用箇所が見つかった場合は、検出された使用箇所ダイアログがポップアップ表示され、使用箇所がリストされます。ファイルを削除する前に、これらの使用箇所を表示し、このファイルへの参照を削除できます。
リポジトリへの変更をコミットします。
関連ページ:
リモート Git リポジトリと同期する (フェッチ、プル、更新)
変更をアップストリームにプッシュして作業結果を共有する前に、リモートリポジトリと同期して、プロジェクトのローカルコピーが最新であることを確認する必要があります。これを行うには、次のいずれかの方法があります: 変更のフェッチ、変更のプル、プロジェクトの更新 Git ブランチポップアップには、まだフェッチされていない受信コミットの数 (ブランチの名前の横にある青い矢印アイコン) と送信コミットの数 (ブランチの名前の横にある緑の矢印アイコン) が示されます。変更のフェッチ:アップストリームから変更をフェ...
カラースキームの切り替え
このセクションを使用して、IntelliJ IDEA エディターの配色を選択します。スキームワークスペースで使用する配色を選択してください。このボタンをクリックすると、次のコマンドが呼び出されます(選択したスキームに応じて)。複製: 現在選択されているカラー設定を新しいスキームとして保存します。新しいスキームを保存するにはを押し、操作をキャンセルするにはを押します。デフォルトの復元: 選択したカラースキームを IntelliJ IDEA に同梱されている初期デフォルトにリセットします。定義済...
色とフォント
開発者は、エディターのソースコード、検索結果、デバッガー情報、コンソールの入出力など、多くのテキストリソースを操作します。このテキストのフォーマットには色とフォントスタイルが使用されており、一目で理解できるようになります。IntelliJ IDEA では、IDE テキストで使用される色とフォントを定義する構成可能な配色から選択できます。事前定義された配色を使用するか、あなたの好みに合わせてカスタマイズすることができます。スキームを共有することも可能です。配色を選択を押して設定を開き、を選択する...
変更を変更リストにグループ化する
変更リストは、VCS リポジトリにまだコミットされていないローカル変更のセットです。変更リストを使用すると、さまざまなタスクに関連する変更をグループ化し、これらの変更セットを個別にコミットできます。詳細については、変更をローカルでコミットするを参照してください。変更リストは、コミットツールウィンドウの変更ビューに表示されます。最初は、変更と呼ばれる単一のデフォルト変更リストがあります。すべての新しい変更は、自動的に変更変更リストに配置されます。また、Git にまだ追加されていない新しく作成され...
Git の競合を解決する
チームで作業しているときに、現在作業中のファイルに誰かが変更をプッシュするという状況に遭遇する可能性があります。これらの変更が重複しない場合(つまり、異なるコード行に変更が加えられた場合)、競合するファイルは自動的にマージされます。しかし、同じ行が影響を受けた場合、Git は無作為に一方を他方を選ぶことはできず、衝突を解決するように求めます。Git では、プル、マージ、リベース、チェリーピック、変更のスタッシュ解除、またはパッチの適用のいずれかの操作を実行しようとすると、競合が発生する可能性があ...
ファイルカラー
このページを使用して、特定のスコープのプロジェクトファイルを区別するための色を設定します。ファイルカラーを有効にするこのチェックボックスを選択して機能を有効にします。エディタータブで使用するエディターのタブで色を有効にします。プロジェクトビューで使用するプロジェクトツールウィンドウと検索結果 (たとえば、複数ファイル内検索ダイアログ) で色を有効にします。スコープの管理このボタンをクリックして、必要な範囲を定義します。色を設定する:スコープと同様に、色の関連付けはローカルで共有できます。ロ