Re: [visad] Migrating to Git? [was: VisAD library updated]

Hi Curtis,


On 3/28/12 12:50 PM, Curtis Rueden wrote:

    Of course, as an API most people will simply need to put visad.jar
    in their classpath.
    Am I right?


Yes, because VisAD currently bundles all the dependencies in the same JAR file. However, if you want more flexible handling of dependencies, it becomes more difficult.

Maven's biggest strength is in dependency management. You can compile a JAR without needing to compile all the dependent JARs, or even have them committed to your VCS.


I mean't that the core VisAD api has no external dependencies other
than Java and Java3D.



    The ant build process works very well, and we spent about a month
    transitioning
    VisAD from CVS/make to SVN/ant.


You wouldn't have to get rid of Ant. For another project I work on (Bio-Formats), we kept the Ant build system and also added Maven POMs. So you can choose which way to build. We have the option of removing the Ant-based build system in the future, if/when it is no longer being used.

I would say keep the Ant build in place until if/when it becomes necessary
to change - it works.


Git is not easier to use than SVN. It is a PITA to learn. But once you learn it, it *rules*.

GitHub is easy to learn and use, and the most effective collaboration tool I have ever used. Rather than having to email someone patches, or give someone SVN commit rights, they can simply fork your repository and go to town on their copy. Then, when they have something working well, they submit a "pull request" to the upstream (i.e., official) repository. It makes submitting changes for official inclusion a breeze!

Well if GitHub is easier to do branches than CVS/SVN, that would be a big vote
yes from me.


    Maven is imperfect, but the benefits outweigh the disadvantages.
    The same is true for git/github.


I agree completely about Maven and Git being imperfect, but definitely worth it. Of the top of my head I can't think of any downsides to GitHub though—it's pretty fabulous. :-)


There is certainly pain involved in any technical migration or transition, so doing so should always be carefully considered. But I think if you migrated the system to Git, within 1-2 years you would look back and wonder why you waited so long to do it. Git really is amazing for collaboration, particularly among larger teams.


I wonder if we could mirror a release of VisAD, and experiment with a mavenized version in the Git/GitHub realm? I'm sorry that it would have to be you, Julien and Jon that would set this up, and being willing to help the community learn
to use it.

What about commit rights?  I would be concerned if anyone could commit at
anytime.

Tom