Evergreen now Git-ified

As of today, Evergreen and OpenSRF are now using Git for version control. The new version control server, kindly provided by the Georgia Public Library Service, is http://git.evergreen-ils.org/. The Subversion repositories for Evergreen and OpenSRF are now read-only and will no longer be updated.

So what does using Git mean for the Evergreen project?

  • Git is designed for distributed development and will make it easier for the committers to handle contributions from the ever-growing herd of Evergreen developers.
  • Git, once you wrap your mind around it, makes it easy to do a lot of common version control tasks, including creating topic branches and reviewing other contributor’s patches
  • The project’s Git server will act as a host for working trees of Evergreen, OpenSRF, related projects, and contributions. I strongly encourage all people and organizations who are doing Evergreen development to make use of the community Git server, either to host your public repositories directly or to mirror them.

A guide to how Evergreen uses Git is available on the wiki, but if you want to jump in and get started, try this:

git clone git://git.evergreen-ils.org/Evergreen.git
cd Evergreen
git checkout -b working_branch
# hack away
git commit -as # and enter a useful comment
git format-patch origin
# attach patch file(s) to Launchpad bug

If you are developing for Evergreen and want to host your repository on the community Git server, please send an email to gitadmin@evergreen-ils.org. You’ll need to supply SSH public keys for the people who will be pushing to your repository. Please be aware that your repository must be relevant to Evergreen and OpenSRF and may only contain code or documentation that is licensed under the same license (or a compatible license) as Evergreen or its manual.

Over the next few days, we’ll:

  • Finish moving the Git repository for the Evergreen Documentation Interest Group to git.evergreen-ils.org
  • Start using Git for ILS-Contrib

I’d like to thank the co-administrator of Evergreen’s Git service, Thomas Berezansky, for his help with the transition.