[cvs] [Wiki] changed: Doc/Dev

Ben Klang ben at alkaloid.net
Thu Jun 4 13:25:28 UTC 2009


bklang  Thu, 04 Jun 2009 09:25:28 -0400

Modified page: http://wiki.horde.org/Doc/Dev
New Revision:  1.52
Change log:  Add H4 mini-FAQ

@@ -38,4 +38,53 @@
  * ((Doc/Dev/DAV|WebDAV/GroupDAV/CalDAV Documentation))
  * ((Doc/Dev/Benchmarks))
  * [http://cvs.horde.org/dimp/docs/dev/?sa=1 DIMP Development Documentation]
  * ((Doc/Dev/CopyrightLicense|Copyright and license stuff))
+
+++ Mini-FAQ for Horde 4 development
+
+**Q:** Are we going to keep the existing development model where we  
have a "master" server (i.e. cvs.horde.org) where we will build the  
releases?  For our workflow, that seems to make the most sense - since  
we don't have a "master" user that checks all commits before  
integrating.
+
+**A:** Yes. We'll figure this out as we work on Horde 4, to some  
extent, but my expectation is that we will all push commits to  
dev.horde.org:/horde/git/horde (or horde-hatchery, etc.), and we'll  
use branches to do local dev or to coordinate non-mainline work.
+
+**Q:** How do I combine the CVS and Git trees so I can test/develop  
current Horde 4 code?
+
+**A:** Some of this is still being worked out, and these instruction  
might change as development moves forward, but the current suggestion  
is:
+
+* Update/pull most recent changes into the various repositories
+* Use the horde-fw-symlinks.php script to link the various framework  
libraries to your include directory.
+
+<code>
+horde-fw-symlinks.php --src /var/www/html/horde/framework --dest  
/var/www/pear
+horde-fw-symlinks.php --src /usr/local/githorde/framework --dest  
/var/www/pear
+horde-fw-symlinks.php --src /usr/local/horde-hatchery/framework  
--dest /var/www/pear
+</code>
+
+* Note that if your filesystem is NOT case sensitive (i.e. HFS+ on  
the Mac) then you will need to have two separate include directories -  
one for the CVS framework libraries and one for the Git framework  
libraries. You will need to make sure to put the Git include directory  
first in your include_path.
+
+<code>
+horde-fw-symlinks.php --src /var/www/html/horde/framework --dest  
/var/www/pear
+horde-fw-symlinks.php --src /usr/local/githorde/framework --dest  
/var/www/gitpear
+horde-fw-symlinks.php --src /usr/local/horde-hatchery/framework  
--dest /var/www/gitpear
+</code>
+
+* For the actual Horde applications that have been moved to Git,  
there are a few options.  You could either copy the application  
directory back and forth from your /horde directory, you could try to  
use a joint CVS/Git source tree, or you can symlink the application  
into your horde/ directory.  Both methods have drawbacks. Issues with  
the first are obvious - you need to pull, copy, code, copy, push  
etc... The issue with second method is that you will either get lots  
of warnings about files that aren't tracked, or you could try to  
manage an ignore list for both CVS and Git. If you use a symlink, you  
will need to create a file base.local.php in the application's lib/  
directory - and define your HORDE_BASE in that file.
+
+**Q:** How do I start from scratch with a git/cvs head install
+
+**A:**
+These steps only work on case sensitive file systems, see above:
+
+<code>
+cvs -d:pserver:cvs.horde.org:/repository checkout horde framework
+git clone --depth 1 git://dev.horde.org/horde/git/horde horde-git
+git clone --depth 1 git://dev.horde.org/horde/git/horde-hatchery
+pear install framework/devtools/package.xml
+cd horde
+mkdir libs
+horde-fw-symlinks.php
+horde-fw-symlinks.php --src ../horde-git/framework
+horde-fw-symlinks.php --src ../horde-hatchery/framework
+echo "<?php ini_set('include_path', dirname(__FILE__) . '/../libs' .  
PATH_SEPARATOR . ini_get('include_path'));" > lib/core.local.php
+</code>
+
+Then continue with the installation steps in docs/INSTALL.



More information about the cvs mailing list