PhpStorm 2019.1ヘルプ

Gitリポジトリを設定する

リモートホストからプロジェクトをチェックアウトする (クローン)

PhpStormでは、既存のリポジトリを(Git用語のクローンで )チェックアウトし、ダウンロードしたデータに基づいて新しいプロジェクトを作成することができます。

  1. メインメニューからVCS | バージョン管理からチェックアウト | Gitを選択するか、現在プロジェクトが開いていない場合は、ようこそ画面でバージョン管理からチェックアウト | Gitを選択します。

  2. リポジトリーのクローンダイアログで、複製するリモートリポジトリのURLを指定します(テストをクリックして、リモートとの接続が確立されていることを確認できます)。

  3. ディレクトリーフィールドに、ローカルのGitリポジトリ用のフォルダーを作成し、リモートリポジトリを複製するパスを指定します。

  4. クローンをクリックしてください。複製したソースに基づいてPhpStormプロジェクトを作成したい場合は、確認ダイアログで[ はい ]をクリックします。Gitのルートマッピングは自動的にプロジェクトのルートディレクトリーに設定されます。

既存のプロジェクトをGitのバージョン管理下に置く

リモートリポジトリのクローン作成とは別に、既存のプロジェクトのソースに基づいてローカルリポジトリを作成することができます。

プロジェクト全体を1つのGitリポジトリにインポートする

  1. Gitの中に入れたいプロジェクトを開きます。

  2. メインメニューからVCS | バージョン管理統合を使用可能にするを選択します。

  3. 表示されるダイアログで、ドロップダウンリストからGitを選択し、OKをクリックします。

異なるプロジェクトモジュールを異なるGitリポジトリにインポートする

  1. Gitの中に入れたいプロジェクトを開きます。

  2. メインメニューからVCS | バージョン管理へインポート | Git リポジトリーの作成を選択します。

  3. 表示されたダイアログで、新しいGitリポジトリを作成するディレクトリーを指定します。

ローカルリポジトリにファイルを追加する

プロジェクト用のGitリポジトリを初期化した後、プロジェクトデータを追加する必要があります。

バージョン管理ツールウィンドウ(Alt+9)を開き、ローカルの変更タブに切り替えます。
  • Ctrl+Alt+A を押すか、コンテキストメニューからVCS へ追加を選択して、バージョン管理下のバージョン管理外のファイル変更リストにファイルを置きます。変更リスト全体を追加するか、別のファイルを選択することができます。

    プロジェクトツールウィンドウからローカルのGitリポジトリにファイルを追加することもできます。追加するファイルを選択し、Ctrl+Alt+A を押すか、コンテキストメニューからGit | 追加を選択します。

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

バージョン管理からファイルを除外する (無視)

場合によっては、特定の種類のファイルをバージョン管理外のままにしておく必要があります。これらは、VCS管理ファイル、ユーティリティの成果物、バックアップコピーなどです。

PhpStormを通してファイルを無視することができます、そしてIDEはそれらをGitに追加することを提案せず、無視されたものとしてそれらを強調表示します。しかし、これはIDE側で行われるので、Gitはそのようなファイルをバージョン管理されていないものとして扱います。もしPhpStormの外で何か操作をしたりプロジェクトを共有したりする必要があるなら、無視したいファイルのリストを追加してください。 .gitignore ファイル(手順については、https://git-scm.com/docs/gitignore(英語)を参照)

Gitで無視されるファイルのリストを設定する

  1. どちらか:
    • 設定/環境設定ダイアログ(Ctrl+Alt+S)で、左ペインでバージョン管理 | 無視されるファイルを選択します。

    • バージョン管理ツールウィンドウ(Alt+9)を開き、ローカルの変更タブに切り替えます。ツールバーの eye icon をクリックし、無視するファイルの構成を選択します。

  2. ツールバーの追加 add ボタンをクリックします。

  3. バージョン管理されていないファイルの無視ダイアログで、無視するファイル/ディレクトリーを指定するか、ファイル名パターンを定義します。
    • 指定したファイルを無視する : プロジェクトルートを基準にしてファイル名を指定します。

    • 配下のすべてのファイルを無視する : プロジェクトのルートを基準にして内容を無視するディレクトリーを指定します。ルールはすべてのサブディレクトリーに再帰的に適用されます。

    • 一致するすべてのファイルを無視する : 無視するファイルの名前を定義するパターンを入力します。このルールは、プロジェクトルートにあるすべてのディレクトリーに適用されます。

      2文字をワイルドカードとして使用できます。

      • * : 任意の文字列を置き換えます。

      • ? : 単一の文字を置き換える。

      例: *.imlIML 拡張子を持つすべてのファイルを無視します。 *.?ml は拡張子が mlで終わるすべてのファイルを無視します。

プロジェクトの確認

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

バージョン管理ツールウィンドウ(Alt+9)を開き、ローカルの変更タブに切り替えます:

file status

  • デフォルト変更リストには、リモートリポジトリ(青色で強調表示されている)と最後に同期された後に変更されたすべてのファイルと、VCSに追加されていますがまだコミットされていない(緑色で強調表示されている)

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

マージ中に解決されなかったコンフリクトがあった場合、競合をマージするノードは対応する変更リストにリンクを表示して解決されます。

unmerged conflicts

変更リストの詳細については、異なる変更リストにグループを変更するを参照してください。

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

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

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

  • marker for a newly added line ラインが追加されました。

  • marker for a modified line 行が変更されました。

行を削除すると、左のガターに次のマーカーが表示されます: the deleted line marker

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

the modified line marker

the Revert icon をクリックして変更をロールバックすることができます(現在の行だけでなく、最後のリビジョン以降のファイルに対する変更はすべて元に戻ります)。the Show diff iconをクリックすると、現在の行と現在の行のリポジトリバージョンの違いを調べることができます。

リモートリポジトリを追加する

Gitプロジェクトで共同作業できるようにするには、データを取得するリモートリポジトリーを構成し、作業を共有する必要があるときにプッシュする必要があります。

GitHubなどからリモート Gitリポジトリを複製した場合、リモートは自動的に構成され、同期するとき(つまりプルまたはプッシュ操作を実行するとき)に指定する必要はありません。

Gitがクローンしたリモートに与えるデフォルトの名前は、起源です。

ただし、ローカルソースに基づいてGitリポジトリを作成した場合は、他のコントリビューターがその変更をプッシュできるようにし、作業の結果を共有できるようにするためにリモートリポジトリを追加する必要があります。

ローカルソースからリモートを作成する

  1. メインメニューからVCS | Git | プッシュを選択してコミットをプッシュする準備ができたら、プッシュダイアログを起動するか、Ctrl+Shift+Kをプッシュします。

  2. 表示されるダイアログで、リモートの名前とホストするURLを指定し、OKをクリックします。

場合によっては、2番目のリモートリポジトリも追加する必要があります。たとえば、書き込み権限のないリポジトリをクローンしていて、変更を元のプロジェクトの自分のフォークにプッシュする場合などに便利です。もう1つの一般的なシナリオは、他の人のプロジェクトフォークである自分のリポジトリをクローンしたことであり、元のプロジェクトと同期してそこから変更を取得する必要があるということです。

2台目のリモートを追加

  1. メインメニューからVCS | Git | リモートを選択します。Git リモートダイアログが開きます。

  2. ツールバーの追加 add ボタンをクリックするか、Alt+Insertを押してください。

  3. 表示されたダイアログで、リモートの名前とURLを指定し、OKをクリックします。


リモートを編集するには(たとえば、複製した元のプロジェクトの名前を変更する)、Git リモートダイアログでリモートを選択し、ツールバーの編集 edit ボタンをクリックするか、Enterを押します。

無効になったリポジトリを削除するには、Git リモートダイアログでそのリポジトリを選択し、ツールバーの除去 remove ボタンをクリックするか、Alt+Deleteを押します。

このビデオからさらに詳しく学ぶ:

最終更新日: 2019年4月23日

関連ページ:

競合の解決

チームで作業しているときに、現在作業中のファイルに誰かが変更をプッシュするという状況に遭遇する可能性があります。これらの変更が重複しない場合(つまり、異なるコード行に変更が加えられた場合)、競合するファイルは自動的にマージされます。しかし、同じ行が影響を受けた場合、Gitは無作為に一方を他方を選ぶこ...

複数の機能を同時に処理する

ときどき、未完成のものを使って別のタスクに切り替えてから、それらに戻る必要があります: PhpStormは作業を失うことなくいくつかの異なる機能に便利に取り組むためのいくつかの方法をあなたに提供します:保留中の変更はスタッシュまたはシェルブできます。スタッシュの変更はシェルブ付けと非常によく似てい...

コミットして変更をプッシュする

Gitリポジトリに新しいファイルを追加したり、すでにGitバージョン管理下にあり、それらの現在の状態に満足しているファイルを変更した後は、作業結果を共有できます。これには、リポジトリのスナップショットをプロジェクトの履歴に記録するようにローカルにコミットし、そしてそれらをリモートリポジトリにプッシュ...

プロジェクトに貢献する

GitHubでホストされているプロジェクトに貢献したいと思っていて、直接的にプッシュできない場合は、以下のワークフローを実行してください:貢献したいプロジェクトのフォークを作成します。クローンこのフォークは、ローカルリポジトリを作成します。元のプロジェクトのコピーを変更し、コミットしてプッシュします...