Subversion 1.8 and IntelliJ IDEA 13

As you know, one of the features introduced in IntelliJ IDEA 13 is the long-awaited support for Subversion 1.8. Let’s have a closer look at it.

Unlike its earlier versions, Subversion 1.8 support uses the native command line client instead of SVNKit to run commands. This approach is more flexible and makes the support of upcoming versions much easier.

Now, IntelliJ IDEA offers different integration options for each specific Subversion:

  • 1.6 – SVNKit only
  • 1.7 – SVNKit and command line client
  • 1.8 – Command line client only

If you opt to the command line client, make sure you have its binaries installed on your machine, because they are not bundled with IntelliJ IDEA.

In case the working copy format version is different from the command line client version, you will be prompted to make a conversion.

More details on the Subversion 1.8 support can be found here.

Feel free to report any found bugs to our issue tracker.

Develop with Pleasure!

 

This entry was posted in New Features and tagged , , . Bookmark the permalink.

35 Responses to Subversion 1.8 and IntelliJ IDEA 13

  1. stepand76 says:

    Is it possible to use IDEA *12* with SVN 1.8?

    • Maxim Mossienko says:

      Integrated Svn 1.8 support in IDEA 12 is absent because Svn 1.8 was released 3 months AFTER we released IDEA 12.1

      • Rui Lopes says:

        Do you know the concept of improvements, patches, corrections and plugins update?
        Dummy question of course, but the honesty of my question competes with the one of your comment.

  2. Great work guys. Thank you!

  3. Vk says:

    Oh, it’s works fine for Windows, but I cant to run the Diff tool for Idea 13 for OSX…

  4. Guy lubovitch says:

    I am not clear, i am using idea 13 and a project that used svn 1.8 doesnt work on my idea 13? from this blog it should. any idea why it doesnt ?

    • Konstantin Kolosovsky says:

      What errors do you have? Could you provide some screenshots?

    • deepnmn says:

      On 13.1.1, on my 1.8 repo, I now get this message box:
      “No versioned directories to update was found”.
      The log just says “15:12:05 Errors found while svn working copies detection. Fix it.”

      I have not checked “use command line”. My command line is 1.7 anyways.

      • Konstantin Kolosovsky says:

        As described in the post, if your working copy format is 1.8 then only command line client integration is used (despite of the settings). So you have to install svn 1.8 command line client and specity path to it in settings.

        • Bill Poitras says:

          I have followed everything indicated here. I am currently using a SVN 1.8 client, IDEA has a path to the SVN executable. But I still get “No versioned directories to update was found”. I can run my command line client to get status, and update the files, but it doesn’t work inside the interface.

          Intellij 13.1.1 (idea64.exe)
          JRE: 1.7.0_51-b13 amd64

          Every 200ms, the system/log/idea.log spits out the following:
          2014-04-07 15:37:43,045 [ 226371] INFO – org.jetbrains.idea.svn.SvnVcs – Failed to get local info for . Trying to get HEAD info.

          • Konstantin Kolosovsky says:

            What is displayed in “Subversion Working Copies Information” panel – are some working copies detected?

            Could you please attach screenshot of your VCS roots configuration – “Version Control” project settings?

  5. Philippus Baalman says:

    I got it working except I can not commit changes.
    ‘compare with latest repository version’ shows differences.
    However when I try to commit PhpStorm says ‘No changes detected’.

    • Konstantin Kolosovsky says:

      Differences in “Compare with latest repository version” action do not mean you have uncommitted local changes – probably some other person committed changed revision of the file to the repository and you’re not updated to the latest revision – so corresponding action show changes.

      Are you sure you have files in your working copy with local changes (you could try changing some file and see if it appears as changed in “Changes” -> “Local” panel)? Does “svn status” command show these files as “modified”? Do necessary changed files appear after you manually hit “Refresh” in “Changes” -> “Local” panel?

  6. David Herzog says:

    I installed IntelliJ Ultimate Edition 13.1.1 on Mac OS (10.9.2). I have svn client version 1.8.1 (Subversion-1.8.1_10.8.x.pkg) that I installed almost a year ago. I have the svn client working without issue with the corresponding subclipse plugin in eclipse. When I try to checkout a project from source control in IntelliJ, when prompted for the version of SVN to use 1.8 is greyed out. If I import an existing project that I checked out via the command line I get the following error – “svn: E155021: E155021: This client is too old to work with the working copy at ‘/’ (format 31). You need to get a newer Subversion client.” I’ve downloaded IntelliJ on Windows and I am able to get it working just fine. Is this a known Mac issue? I am currently evaluating IntelliJ as a possible replacement for eclipse at our company. Many of us use Mac’s and version 1.8 of the svn client so this would prevent us from moving to IntelliJ if there is no fix.

    • Konstantin Kolosovsky says:

      This is likely issue for Mac when specifying svn client by short name. Please specify full path to svn client in “Version Control” -> “Subversion” project settings.

      • David Herzog says:

        Are you referring to using ‘/usr/bin/svn’ instead of ‘svn’ in the ‘Use command line client’ field? I already tried that with no success. I get the same result.

        • Konstantin Kolosovsky says:

          Please run “/usr/bin/svn –version” command in terminal. Does it show 1.8 version? – Likely it should show some previous version.

          But I guess “svn –version” command in terminal should show 1.8 version. Please determine full path where “svn” points by running “which svn” command and specify this path in IDEA settings.

          • David Herzog says:

            Thanks so much for the help Konstantin. /usr/bin/svn was the default version installed on the Mac (1.7.10) and the one I installed ended up in /opt/subversion/bin/svn. All looks good now that I changed it under Preferences -> Version Control -> Subversion.

          • Buffalo Rabor says:

            Thank you both, following this convo and using “which svn” to locate the proper path solved the issue for me as well ~

  7. Vitaliy says:

    At Mac OS X Idea can’t correctly detect SVN client when it’s in PATH and “svn” specified in Idea settings. Works only after specifying full path to binary like “/opt/local/bin/svn”. Please fix this.

  8. Michael Bach says:

    That’s right.
    in IntelleJ running on Mac OS X you need to specify full path to SVN
    /opt/subversion/bin/svn
    it works.

  9. harry says:

    Hi I am new to Intellij. I was trying to checkout from svn. i am using Intellij 13 community edition and svn client 1.8 and Mac OS X
    I use the svn+shh////trunk

    every time i give in my pwd it says credentials rejected by ssh server svn :E170001
    I am pretty sure my pwd is correct. would there some crazy encoding issue?
    how can i debug the same ?

  10. harry says:

    I have Intellij working on mac OS x and svn is version 1.8 while trying to checkout from svn over svn+ssh:// the ssh server is rejecting my credentials ; which seemed to work from command line. Is there any crazy encoding issue over here?

  11. João Fernandes says:

    hi, I’ve been using SVN 1.8 as described in this post, in the past couple of months but lately all kind of svn operations are taking forever. It seems it’s only related to svn because the rest of the IDE operations work as expected. Is there any way to track what might be the cause?

    The only thing I remember changing was the IntelliJ cache but if it was the cause shouldn’t everything inside the IDE crawl and not just SVN integration?

    • Konstantin Kolosovsky says:

      * Please provide more details – with what svn operations do you experience performace issues (update, commit, etc.)?
      * Do you use SVNKit or command line integration? You could try switching “Use command line client” checkbox in Subversion settings to check if it helps.
      * Please try “Clear Auth Cache” in Subversion settings and check if it helps.

      If options above do not help, please create corresponding issue. Reproduce the error and attach idea.log (Help->Show Log in…) and CPU Snapshot to the created issue.

  12. Lee says:

    I have upgraded SVN to 1.8.10 if i do svn in the terminal (Mac) i see the correct 1.8.10 version but intellij isn’t seeing this it still uses the original SVN (1.7) i have ticked the box for using command line client and I’ve pasted in the path into the box but it still doesn’t work when i try to checkout a repo that should use 1.8 it is still greyed out. I got the path to use by dong which SVN on the terminal. have i missed anything ?

  13. Konstantin Kolosovsky says:

    Please see this and related comments – you could use “which svn” command in terminal to get full path to svn client.

  14. Dayglo says:

    Hi ,

    I’m just making the switch to IntelliJ 14 from Eclipse. I’m having some trouble getting SVN set up. I use svn+ssh and my setup on Eclipse works fine. The Subversion server is running v1.8.5. I’m using v 1.8 in Intellij.
    I’ve pointed the SSH settings to use TortoisePlink.exe as my SSH executable but I’m wondering if this is necessary on IntelliJ ?? I’ve set my ssh username and port up. I’m logging in with password at the moment as this is what I do Eclipse (I’ll probably change to private key once I have this working).
    I’ve cleared the Auth Cache a number of times between attempts to get this working.

    When I click on my the repository I’ve added the Authentication Required dialog appears. I login and I can browse the repository. However if I try and check the repository out with the same credentials in the Authentication Required dialog they fail and I repeatedly get asked to reenter them. Any ideas what is happening here?

    Thanks for any help

  15. Michael says:

    After the migration of my local project from svn 1.7 to svn 1.8 version, I’m no more able to commit. I was running IntelliJ IDEA 13, and now run intellij IDEA 14 on a windows vista box. My svn repository is a sourceforge project which adress is svn+ssh://myname@svn.code.sf.net…
    I still can update from IntelliJ and I can commit from Tortoise svn, so my url/username.password are OK.
    I have been stuck with the problem since several days and tried the following options (I’m not a svn expert and always used it through IDEs) :
    - check / uncheck “use command line client” and all the other options of this panel
    - set the path to svn tool with the file chooser, changing the path to use /, \, \\, double quotes, “Progra~1″ instead of Program Files, to point to SlikSvn, TortoiseSvn…
    - set ssh option with defaults, with a path to plink.exe (same variations as above), with password or with “Subversion config” checked.
    - reinstall IntelliJ (switched to 14)
    - changed the user from myname to admin
    - etc.
    One of the many reasons I switched from Eclipse was that svn configuration was much more easy in IntelliJ IDEA. It was the time before svn 1.8 :-(
    Any idea someone ?

    • Konstantin Kolosovsky says:

      If you’re using plink you could select “Subversion config” option, enter value like “plink -l -pw “, press “Update”. Also please uncheck “Enable interactive mode” (Subversion settings, “General” tab).

      Does such configuration resolve your issue?

      • Michaël says:

        Thanks for the reply. Unfortunately, it does not help.
        Here are more options I set and the message I get ()

        Version Control > Subversion (General panel)
        Use command line client : C:\\Progra~1\\SlikSvn\\bin\\svn.exe (changing \\ to \ or to / and Progra~1 to Program Files or quoting does not help)
        Enable interactive mode : if unchecked I’m invited to enter user/pwd endlessly, else, I get the error
        Use system default subversion Configuration directory or set to C:\Users\Michaël\AppData\Roaming\Subversion

        Version controle > Subversion (SSH settings)
        SSH Executable (+ password checked) : C:\Windows\PLINK.EXE (changing place or \ does not help)
        or
        Subversion config : plink -l -pw (+ update + svn_ssh environment variable pointing to plink.exe)

        Trying to connect to the repository throws :
        svn: E170012: When using svn+ssh:// URLs, keep in mind that the –username and –password options are ignored because authentication is performed by SSH, not Subversion
        svn: E170012: Unable to connect to a repository at URL ‘svn+ssh://michaudm@svn.code.sf.net/p/jump-pilot/code/core/trunk’
        svn: E170012: Can’t create tunnel
        svn: E720002: Can’t create tunnel: Le fichier sp�cifi� est introuvable.

        Today, even update do not work. In most cases, I get
        Error:svn: E170012: Unable to connect to a repository at URL ‘svn+ssh://michaudm@svn.c
        svn: E170012: Can’t create tunnel
        svn: E720002: Can’t create tunnel: Le fichier spécifié est introuvable.

        thanks for the help

        • Michaël says:

          In command line client, any try to set a path containing “Program Files” will fail with
          Error:’C:\Program’ is not recognized…
          even if the path is quoted.
          Hence the use of Progra~1 : unfortunately, it does not help much (get errors E170012 and E720002) :-(
          Also tried to put subversion client in tortoise svn bin directory and to set
          Use command line client : C:\Progra~1\TortoiseSVN\bin\svn.exe
          and
          ssh executable : C:\Progra~1\TortoiseSVN\bin\TortoisePlink.exe

          without success

          • Konstantin Kolosovsky says:

            It seems that my comment was posted incorrectly.

            Could you please “Subversion config” option, enter value like “plink -l <user_name> -pw <password>“, press “Update” and uncheck “Enable interactive mode”?

            So you should put your user_name and password (not just -l and -pw) in ssh tunnel configuration.

            Please also clear SVN_SSH environment variable and specify full path to plink if short name does not work (use forward slashes ‘/’ for full path).

  16. michael says:

    Hi Konstantin,

    Works fine !
    Thanks for your patience.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">