From: Richard H. C. <hch...@3g...> - 2007-08-10 17:13:02
|
The following patch does 3 things: 1. add an optional username as a first argument to checkin.php. Mantis will attempt to create the note using that username, if found, or fallback to the default behavior. 2. add websvn integration to core/string_api.php very similar to the cvsweb integration that was already there. It accepts two types of patterns, though, compared to the cvs functions, one. svn:repository:revision -- a link to the main revision page svn:repository:filename.ext:revision -- a link to the revision of a particular file 3. add a new default parameter, g_svn_web. I based this on Tom Gregory's excellent write-up about "Integrating Mantis and Subversion" at http://alt-tag.com/blog/archives/2006/11/ integrating-mantis-and-subversion/ which I found through the Mantis Wiki. For increased clarity, I'm also posting here my svn post-commit file (again, based on Tom's version) which does the initial work. I'm also posting some sample inputs and outputs so you can see the effect. To summarize the attachments: 1. SVN_integration.patch (checkin.php, core/string_api.php, config_defaults_inc.php) Patches against 1.0.8, but succeed against 1.1.0a4 2. post-commit 3. input.txt (the output of post-commit as it goes into checkin.php) 4. output.txt (the html output from mantis) 5. svn_output.png (a small screenshot of the html output for clarity) Issues: 1. I think the post-commit parsing of filenames might be missing some valid filename characters in its regular expression. I noticed '_' missing while testing. 2. ??? Thanks for a great product. The code is laid out so well that I have had little to no problem making these changes as well as others for my site. R. |