Goodbye, Gitorious

I've been self-hosted since 1999, and always push that option when talking to people. I didn't always follow my own advice though and made an exception for public source code repos I put on Gitorious. The announcement of Gitorious's demise motivated me to change that policy so that the rug can't be pulled out from under me again. I spent some time reviewing options and wanted to share my own decisions and rationale.

  • GitLab.com - The canonical upgrade path provided by GitLab B.V. is moving people from Gitorious to the hosted GitLab.com. I do not like the idea of moving to GitLab.com since that runs their Enterprise Edition which is not free software. Proprietary sofware is never a solution so this option is automatically disqualified.
  • GitLab Community Edition - From a purely technical perspective this seems to have some nice features. GitLab B.V. only makes money when people buy the proprietary version though so they're clearly betting on people doing that. They also have a CLA. I'd like to be able to make contributions to a project without having to agree to such a thing. It stops me from submitting GPLed modifications to them (which is what my modifications would be under) because the CLA would neturalize the copyleft. As a result, while it's free software, using the Community Edition seems like propping up GitLab B.V.'s proprietary software business which I find distasteful. Disqualified.
  • Gitorious - It appears that GitLab B.V. will discontinue this so I'd be using abandoned software. That's not appealing to me. Also disqualified.
  • Phabricator - Like GitLab B.V.'s Community Edition, this seems to have some nice technical features. It also comes with a CLA. Disqualified for the same reason as the GitLab Community Edition.
  • GNU Savannah - I can see that some may complain about the web interface not being HTML5-ified, responsive, or whatever other terms the kids are using these days. On the other hand, Savannah supports multiple multiple version control systems, has issue, patch, and other trackers, mailing lists, website hosting, and more. Also, the GNU Project and FSF are unlikely to be going anywhere anytime soon.
  • Kallithea - This seems rather appealing. It's community-developed, doesn't have a CLA, but it's missing some features some may want such as issue tracking. From reading about their future plans in the documentation this is and more is planned though. Seems like it could be a good candidate.
  • Fossil - This seems like another good candidate. It has a bug tracker and a wiki in addition to source code hosting.
  • Gogs - This seems like a good candidate. There's no CLA and it seems to have all of the features I'd want (namely, an issue tracker.) I've talked to some of the developers on IRC and they seem very responsive and accepting of feedback. Based on my suggestion they now plan to add an option to the web interace for people to export their issues and such so that they can take them with them if they decide to move to another instance.
  • GitWeb - Basic, but would do what I need. My repositories are small, don't have lots of contributors (it's really just me) so I don't need bug trackers. I don't even get pull requests, really, having received exactly one. People can send their stuff to me via email, if they have any.

In the end, I've decided to go with GitWeb and letting people do anonymous cloing over HTTP. Someone with different needs (like an issue tracker) might do well with their own Gogs or Fossil instance though. I know of hosted Gogs instances at gogs.io and notabug.org and a hosted Fossil instance at chiselapp.com but whatever it is you should really run your own instance of it. The demise of Gitorious has shown just how easy it is to have the rug pulled out from under you. Do you really want to be in a position where it can happen again? I don't.

Copyright © 2015 Jason Self. See license.shtml for license conditions. Please copy and share.

The DRM-free label by Defective by Design (source) is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.