Perforce IDEA Community Integration

Compatible with: IntelliJ IDEA PhpStorm WebStorm PyCharm RubyMine AppCode CLion GoLand DataGrip Rider MPS Android Studio
Feb 12, 2019
31 784

[ Github ] | [ Open Issues ]

Associate your IDEA project with Perforce ("p4") through the built-in version control.


  • Does not indicate to the user whether a file is synchronized to the head revision or not, or if the file is locked in Perforce.
  • No resolving merge conflicts.
  • Symlinks not properly supported.

The plugin will keep your client's open changelists synchronized with the IDEA backed changelists, viewable under the "Changes" view. If the changelists become out of sync, you can force the plugin to re-examine the mappings by pressing the refresh button in the changes view.

Modifying a file, moving a file, copying a file, refactoring a file, and deleting a file will perform the correct Perforce operations, and put the changes into the currently selected IDEA changelist. Per-file history allows for comparing against the depot versions, even against the inherited file history.

Getting Started

Once you install the plugin, you can associate a project directory with Perforce in the project settings (File - Settings..., then navigate to the Version Control panel). Click on the "edit" icon for the version control root directories to setup the server connection.

For most people, the environment variables will be sufficient to use the same mechanism to connect to the Perforce server as what the command-line p4 tool does. However, you may need to explicitly set the property values, or use a file that contains the settings.

For SSL, you will want to use a P4PORT setting that starts with ssl:// (such as ssl://perforce:1666). If you have the server registered in the authorized hosts, then make sure that `P4TRUST` setting points to that file; or you can add a SSL server fingerprint setting to explicitly state the expected SSL fingerprint.

Full documentation on the configuration settings is on the main project page.

Please visit the GitHub project open issues for a list of known issues, or for reporting new ones.

Recent change notes

  • 0.10.5
    • Fixed a NPE when running the IDE with JDK 11 and Windows.
  • 0.10.4
    • Improved messaging when cache access takes too long.
    • Fixed a NPE that can happen during revert.

General usage instructions

Once you install the plugin, you can associate a project directory with Perforce in the project settings ("File -> Settings..."), and navigating to the Version Control panel. Set the VCS root to "Perforce", and make sure to edit the Perforce configuration.