I'm trying to figure out the best way to manage version control for my refactoring of OpenJUMP. When I was originally thinking about the refactoring, this wasn't an issue, because I was going to start with a blank slate and add parts as I went along. I've decided it would be better to start with the complete core and slowly integrate my changes, making sure that things build and run along the way.
This leaves me with an interesting source code version control challenge. I'll really need to manage two (2) versions of OpenJUMP's core. The first version is the core in the JPP SVN repository. This is where most of our community's development work takes place. The second version will be in my own SVN repository. This is where I will be making all of the changes for the refactoring. What I would like to do is synch these two (2) repository so I can overwrite existing code with my changes but still stay up to date with all the other improvements being made. This shouldn't be a major problem, because I'll only be tweaking about 10% to 20% of the core, and I can still suck in the improvements made to the other 80% or 90%. Here is an example of what I'll want to do: I'm refactoring out an Application class from the JUMPWorkbench that will represent the "model" of the application and will separate it cleanly from the GUI. I'll want to add my Application.java file and overwrite the existing JUMPWorkbench.java in my copy of the JPP SVN. I'll need to do this while using the latest versions of all the other classes in the package that contains the JUMPWorkbench.java file. My build process will run something like this: [1] Download the latest copy of the core from the JPP SVN. [2] Download the latest copy of the refactored classes from the core in the SurveyOS SVN. [3] Copy over the refactored classes to the copy of the core from the JPP SVN, overwriting existing classes when necessary. [4] Build the merged core to produce the executable program. I'm thinking I can write a fairly simple Ant Task that will perform the last two steps automatically. I can just work with two (2) Eclipse projects linked to the two (2) SVN repositories like I normally do, but I'll run the build script with my custom task when building the executable program. I'm wondering if there is already and existing tool (Ant Task or other tool) or existing functionality in the SVN program that will allow me to work with two (2) repositories in this way. I don't want to reinvent the wheel. Please let me know if you have any suggestions. If not, I'll work on creating my custom Ant Task for this work over the next couple of weeks. Thanks, The Sunburned Surveyor P.S. - All of my work will be taking place in a WORKING COPY of the JPP SVN. I'm not talking about making any changes to the core the other programmers use, unless my changes are first approved by our community. In this case, I would commit my changes directly to the JPP SVN. ------------------------------------------------------------------------------ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel