We merged Cheetah into Gazelle and stop working on Cheetah - this was to simplify our project.
Here's the steps we followed:
Make Maven handle Mifos dependencies for Ant, as noted in Maven Migration. This needs to be done first to make it easier to move the Cheetah modules around without modifying them extensively. Done
Create a branch to test the concept by copying Gazelle.
SVN copy all the Cheetah modules except application, acceptanceTests, and war to the branch.
Copy the cheetah pom.xml to the branch, name it cheetah-pom.xml.
Test that the Cheetah modules build in the new location using cheetah-pom.xml.
Merge the Gazelle pom.xml and Cheetah cheetah-pom.xml into a single pom.xml.
Test that everything builds correctly.
Merge the branch into the trunk.
Update findbugs and pmd configurations to make them work on the cheetah modules.
Retire the Cheetah project.
Cheetah existed because we planned to do most of our development there going forward. Due to resource constraints, we had to come up with another plan. It turned out that incrementally improving Gazelle (the trunk) made more sense given our new constraints.