[chora] Re: PHP script for viewing subversion repositories

Jay Freeman (saurik) saurik at saurik.com
Sun Aug 24 04:52:09 PDT 2003


(*cross posted to Chora's mailing list, for people who are seeing this just
suddenly appear there*)

On a related note, a _long_ time ago I modified Chora (a really nice CVS
repository browser) to work almost entirely against Subversion using the
same method (executing the command line programs and parsing the results). I
took the 20 minutes just now to port it to a more recent version of
Subversion. Back when I first wrote this it was kind of slow, but it seems
that the command line programs got faster or something... now browsing is
rather reasonable.

If people would like to take a look at it you can go to:
http://mail.saurik.com/chora/cvs.php/trunk/

That repository is the same as that being backed by this URL:
http://svn.saurik.com/repos/menes/trunk/

The source code is in my CVS repository if anyone wants it
(cvs.saurik.com:/cvs/chora, chora, anonymous, no password).

I didn't break Chora's CVS support, this URL should browse the source for
the repository browser:
http://mail.saurik.com/chora/cvs.php?rt=Chora

The Chora people were interested in merging this, but the person I was
talking to got sick or something and we lost touch for a while (although I
may have misinterpreted what was going on and just overlooked an e-mail or
something...)... I should try to get in contact with them again... *would
need to port it to the latest version of Chora if they are still
interested*. In fact, so I don't forget... *cross-posts this to Chora's
mailing list*.

Sincerely,
Jay Freeman (saurik)
saurik at saurik.com

----- Original Message -----
From: "Martin MAURER" <martin.maurer at email.de>
To: <users at subversion.tigris.org>
Sent: Saturday, August 23, 2003 1:19 PM
Subject: PHP script for viewing subversion repositories


Hi all,

I recently wrote a small PHP script which displays subversion
repositories similar (but not as powerful) to viewcvs.
This script calls the svn binary of your system and parses the output.
I wrote it as I had some problems with viewcvs cvs version (first not
getting it installed easily and then not doing some things - diff - for
me correctly).

Although this script is not well tested and even lacking some features
in respect to viewcvs it works well fo me, and so I decided to send it
to this list, so maybe other people could use it too. I most likely wont
do a lot of further changes (as it does what i needed it to do), but if
anyone has problems "installing" it, i could of course try to help out -
just send a mail.
If anyone improves the script I would be happy to get a copy of it.

Please know, that there may be security problems that I don't know of.
(I am not a professional PHP programmer, and this script executes shell
commands - so don't use this script on publically available servers as
long as no one rechecked it for problems regarding security - you have
been warned.)

Things that (should) work:
- browsing the repository
- viewing the logs of a file
- retrieving diffs between a file+revision and the previous revision
- manually switching to a specific revision

Things that dont't work / are missing:
- error handling
- show some sort of revision log for a directory
  (didn't know how to get the revisions of a directory where its direct
  childs changed using an elegant way.)
- not tested on _big_ archives

To install it, simply put the .php file into some direcotry on your
PHP-enabled webserver (you may rename the php file without breaking
something) and edit the top part of the file.
(you have to specify your repositories and such things)

greetings
Martin

PS: I am not on this list any more - so CC for any feedback/question/...



More information about the chora mailing list