Downgrading Subversion from 1.8 to 1.7 in MacPorts

bash-3.2# cd /tmp
bash-3.2# svn co --revision 108493
A    subversion/files
A    subversion/files/
A    subversion/files/patch-osx_unicode_precomp.diff
A    subversion/files/config_impl.h.patch
A    subversion/files/servers.default
A    subversion/Portfile
Ausgecheckt, Revision 108493.
bash-3.2# cd subversion/
bash-3.2# port install
--->  Computing dependencies for subversion
--->  Fetching archive for subversion
--->  Attempting to fetch subversion-1.7.10_1.darwin_12.x86_64.tbz2 from
--->  Attempting to fetch subversion-1.7.10_1.darwin_12.x86_64.tbz2.rmd160 from
--->  Scanning binaries for linking errors: 100.0%
--->  No broken files found.
bash-3.2# port installed subversion
The following ports are currently installed:
  subversion @1.7.10_1
  subversion @1.8.1_1 (active)
bash-3.2# port activate subversion @1.7.10_1
--->  Computing dependencies for subversion
--->  Deactivating subversion @1.8.1_1
--->  Cleaning subversion
--->  Activating subversion @1.7.10_1
--->  Cleaning subversion

You may also like...

20 Responses

  1. jonny B says:

    I was getting a “Library not loaded: /opt/local/lib/libserf-1.0.dylib” error when trying to run svn 1.7 after doing this, so found i also had to do:

    sudo port activate serf1 @1.2.1_0

    (having done “port installed | grep serf” to check what was installed)

    Hope that helps someone…

  2. jonny B says:

    …and thanks for the article (i meant to add 🙂

  3. Philipp says:

    You are right.
    You also need to downgrade / activate an older version of serf1:

    > svn co –revision 108607
    > cd serf1
    > sudo port install
    > sudo port installed | grep serf
    < serf0 @0.7.2_0 (active)
    < serf1 @1.2.1_1 (active)
    < serf1 @1.3.0_0

    If 1.2.1 is not active, you should do a:
    > sudo port activate serf1 @1.2.1_1

  4. I was spending all day on this. Actually, the bit in the comments about serf1 is what did the trick for me. Thanks!

  5. Stefan says:

    Thank you for your great help. One more question: I have to downgrade to svn 1.7 to get git-svn working again. For that I have to downgrade subversion-perlbindings-5.12. I allready did

    svn co –revision 108493

    and installed it, but now I have

    subversion-perlbindings @1.7.10_0 (active)
    subversion-perlbindings-5.12 @1.8.3_2 (active)

    Can you tell me how to downgrade perlbindings-5.12? (I’m quite new to this advanced use of MacPorts) …

  6. Philipp says:

    Hi Stefan,

    so i guess a

    port installed subversion-perlbindings

    Gave you the output you just showed in your comment?

    port activate subversion-perlbindings @1.7.10_0

    Should then active the correct perlbinding for Subversion 1.7.10.
    Could you post the error message you get if you try to run git-svn?

  7. Tim Telcik says:

    Hello Philipp and Co.

    I found this short blog entry very helpful after MacPorts automagically upgraded my SVN client from 1.7.x to 1.8.x.

    In addition to downgrading the SVN client, you may also need to downgrade the JavaHL bindings project from 1.8.x to 1.7.x to use Subclipse with the Eclipse IDE.

    # Downgrade SVN client from 1.8.x to 1.7.x
    % cd /tmp
    % svn co –revision 106629
    % sudo port install
    % sudo port activate subversion-javahlbindings @1.7.10

    # Confirm Active SVN Java HL Bindings
    $ sudo port installed subversion-javahlbindings | grep active
    subversion-javahlbindings @1.7.10_0 (active)

    I hope this helps the next group of readers.



  8. Marcin Gryszko says:

    I just wanted to say thanks (also to johnny B)! I took me < 5 minutes to downgrade the package.

  9. SjG says:

    Thanks. As a JetBrains IDE user, this was a life-saver.

  10. jonny B says:

    Glad i commented on this and have been getting the comment emails – macports just did it again (did port upgrade outdated – oops) so needed the instructions again – thanks Philipp once more!)

  11. Philipp says:

    I found another method, that seems to survive an “upgrade outdated”.
    You need to create your own local ports folder with the previoues verson of Portfiles.

    To do so, create a Folder with your Portfiles:

    # mkdir /Users/philipp/ports

    Add this Repository to your ports sources:

    # cat /opt/local/etc/macports/sources.conf
    rsync:// [default]

    Imports: Your Repository has to be first in this file.

    Create the Folder for your Port Groups (subversion => devel, serf1 => www):

    # mkdir /Users/philipp/ports/devel
    # mkdir /Users/philipp/ports/www

    Now checkout your SVN Revisions:

    # cd /Users/philipp/ports/devel
    # svn co --revision 108493
    # cd /Users/philipp/ports/www
    # svn co --revision 108607

    Index the Folder for Port:

    # portindex
    Creating port index in /Users/philipp/ports

    Install your Ports as before.
    I did then a

    # sudo port selfupdate && port upgrade outdated

    And got:

    # svn --version
    svn, Version 1.7.10 (r1485443)
       übersetzt Jun  3 2013, 06:49:42
  12. jonny B says:

    Wow, that’s involved (but thanks!)

    I think there should be an easier way – i found:
    port upgrade outdated and not subversion
    saves subversion from being upgraded, and
    port upgrade outdated and not serf1
    is ok for the serf1 thing, but i couldn’t make it work for both at the same time. You can leave out the upgrade command to test or course…
    port outdated and not subversion and not serf1
    port outdated and not \(serf1 or subversion\)
    and various other combinations either list one or the other or don’t seem to return (for ages)
    Any better ideas anyone?

  13. jonny B says:

    Sorry for the lack of formatting – how do you do those code blocks here? 😉

  14. Philipp says:

    I guess excluding some Port Files from the update is okay if you just have some… if you have a lots of them, you either save your command somewhere or just use your own Port Folder.
    Just do a <pre> your code </pre> :-).

  15. Clemens says:

    You can probably use the newer version of serf, too, if you force a build from source, instead of getting a binary download of the subversion package. To do that, run port -s install instead of port install (no guarantee this works, though).

    For the subversion-perlbindings package, run port install — subport=subversion-perlbindings-5.12 to get the 5.12 version of that. Installing the “subversion-perlbindings” port itself will actually only install a readme file saying this is a stub port.

  16. Clemens says:

    That’s port install DASH DASH subport=subversion-perlbindings-5.12. Unfortunately the blog software mangled this part into an emdash.

  1. 2013-09-11

    […] Philipp Haussleiter's blog post – "2013/08/01 Downgrading Subversion from 1.8 to 1.7 in MacPorts". […]

  2. 2013-09-11

    […] Philipp Haussleiter's Blog – 2013/08/01 Downgrading Subversion from 1.8 to 1.7 in MacPorts […]

  3. 2013-12-03

    […] Por cierto, que no me he inventado ni descubierto nada, este post está inspirado en esto y esto […]

  4. 2014-05-01

    […] Philipp Haussleiter's Blog – 2013/08/01 Downgrading Subversion from 1.8 to 1.7 in MacPorts […]

Leave a Reply