Setting Up PEAR2 and PEAR Checkouts With SVN 1.5+

Now that pear2 is in svn.php.net, it is possible to do commits with
multiple packages using a feature of subversion called “sparse checkouts.”

Rasmus wrote about this for setting up php checkouts here:
http://news.php.net/php.internals/44993

Here is the version I used to set up pear and pear2 in a way that will
allow committing to both pear and pear2 packages in a single commit.
For packages like Console_CommandLine that live in both repositories,
this is very useful for tracking merges.  (Note: on windows, get
TortoiseSVN 1.6.3, and right-click “checkout” for checkout, and use the
“update to revision” option for the sparse updates)

svn co http://svn.php.net/repository –set-depth empty phpsvn
cd phpsvn
svn up –set-depth immediates pear pear2
svn up –set-depth immediates pear2/* pear/*
svn up –set-depth infinity pear2/*/trunk pear/*/trunk
svn up –set-depth immediates pear2/sandbox
svn up –set-depth infinity pear2/sandbox/*/trunk
svn up –set-depth immediates pear/peardoc
svn up –set-depth infinity pear/peardoc/trunk

At this point, your work is done.  You can perform the same steps for
pearweb if you’re a maintainer, and be on your way.

With the above setup, when you make a change to a package, you can
update the documentation immediately and commit it together, by changing
to phpsvn and running “svn commit” (Windows: right-click on the phpsvn
folder and choose “svn commit”)

Hopefully this will get people started with being able to develop more
efficiently and to work effectively with PEAR2.

If you want to start a Pear2 package, all you need to do is send an
email to the pear-dev@lists.php.net, and the PEAR Group will get you set up.  I’m happy to answer
any questions.

Greg Beaver

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

5 Responses to Setting Up PEAR2 and PEAR Checkouts With SVN 1.5+

  1. Christian Weiske says:

    The first command needs to be:
    > svn co http://svn.php.net/repository –depth empty phpsvn

    Note: — was one big dash and –set-depth has to be –depth

  2. Pingback: PEAR Blog: Setting Up PEAR2 and PEAR Checkouts With SVN 1.5+ | Webs Developer

  3. Pingback: PEAR Blog: Setting Up PEAR2 and PEAR Checkouts With SVN 1.5+ | PHP

  4. Indika says:

    I can’t checkout using “svn co http://svn.php.net/repository –depth empty phpsvn” command. may be because i have installed svn by compiled the source.
    Is there any other method that i can checkout this repository???

  5. Andrew Ferk says:

    [QUOTE](Note: on windows, get
    TortoiseSVN 1.6.3, and right-click “checkout” for checkout, and use the
    “update to revision” option for the sparse updates)[/QUOTE]

    I just did this with TortoiseSVN. It’s A LOT dialog/confirmation boxes :(