Hi,

I'd like to revive this thread[1]. I wasn't around during the initial thread but Jiri has just pointed me to it and I read it through. I'd like to summarize (at least my take) on that thread and then list some pros and cons to stimulate a discussion.

Disclaimer:
I am not an expert on anything, but I've used both Subversion (via SourceForge and Google Projects) and Git (via GitHub.com and Gitorious). Also, this is as much about not using SourceForge as it is about switching away from Subversion.

Summary from previous thread:
The people in the thread who do not want to switch to Git, or those who don't seem to care either way, are those who have commit access to Subversion on SourceForge. Most (if not all) contributors to Geany are using Git (via git-svn). The workflow for those who don't have commit access on the subversion repository, when contributing to Geany is sub-optimal (to put it politely). SourceForge is painfully slow and the interface for viewing SVN source code online isn't great.

I think the reason GitHub/Gitorious is mentioned so much is not only because of the "Git" in their name, but also because it allows people who don't have commit access to actually be active members in the community, by means of having their public forked repositories, sending merge/pull requests, etc.

Cons from the previous thread:
- It's more social
- Not plain enough (I guess too Web 2.0/feature-full/cluttered)
- Effort required to move the project
- Having to learn a new VCS for those not familiar with Git

Pros from the thread:
- It's more social
- It's not so plain (ie. has more features which work well).
- Moving the codebase and history is very easy, for example using the script from the thread or GitHub offers you to import a SVN repository through the web interface when creating a new repository.
- Easier to contribute to the project for those without write access
- Faster hosting and better interface.
- Harder to have patches slip through the crack.
- Not having to maintain/create patches as much/at all.
- Public contributor repositories associated with the main one.
- No need to maintain changelog and authors files
- Proper attribution, blame and history for contributors and not having to put "Thanks" in all the commit messages.

Not sure if I missed any, or misconstrued them.

Here's some features of better project hosting sites. I'm listing things from GitHub because I know it better than Gitorious and others:

- Great source code viewer, branch/file browser, history/commit viewer.
- Ability to link to and comment on commits and even specific lines of a commit, for code review, etc. - Nice network graph viewer to get a better idea of what everyone else is working on, needs to be commited, etc[2]. - Tracker for pull/merge requests so no need for contributors to generate/maintain patch(sets) and keep bumping ML threads so their patches don't go forgotten. - Fork queue to compare other peoples repositories' commits against your repository to cherry pick specific commits, with an indication of whether or not the commit/patch will likely cleanly apply
- Good issue/bug tracker
- Built-in Wiki software
- Nice graphs to show languages, impact, commit activity, etc
- Web hooks to notify by email/ML, IRC and other services of commits, etc.[4] - No need to create nightly tarballs separately since the server takes care of this automatically when users clicks the Download link.

Hopefully this will stir up a little discussion about actually switching because every time I use SourceForge I die a little inside :) I think switching to one of the Git project hosting sites will really help the community/contributors get involved and feel like part of the team while still making sure the official code is controlled by a great team of core developers.

Obviously I'm not suggesting that the SourceForge project page is deleted, just switching the main development activity to elsewhere. We could have a git/svn mirror over at SourceForge still, and even keep their bug/feature tracker, though I can't see why, since it's pretty lousy.

It really wouldn't be hard either, the whole "switch" be done in probably 10-15 minutes, maybe 1-2hrs to wait for the history to be imported. There's no real reason it needs to be a big deal either, we could test out another project site and keep it the way it currently is still with not much extra effort, just someone/somescript needs to push to the new project page after committing to SVN. Basically all it would take beyond that is for one of the founders/core members to take some time to setup an account and push the code.

I already have a Geany repository[5] I use over at GitHub.com if you want to play with it to test out that site. Also, Jiri has an old repository[6] on Gitorious. Neither are exactly up to date. It's fun also to see the Geany hackery already happening on these sites[7][8].

Sorry again for the long message.

Cheers,
Matthew Brush

[1] http://lists.uvena.de/geany-devel/2010-June/002602.html
[2] https://github.com/blog/39-say-hello-to-the-network-graph-visualizer
[3] https://github.com/blog/270-the-fork-queue
[4] https://github.com/github/github-services
[5] https://github.com/codebrainz/geany
[6] http://gitorious.org/geany/complete
[7] https://github.com/search?langOverride=&q=geany&repo=&start_value=1&type=Repositories
[8] http://gitorious.org/search?q=geany
_______________________________________________
Geany-devel mailing list
Geany-devel@uvena.de
https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel

Reply via email to