[OSM-dev] OSM software repositories -- git and svn

Greg Troxel gdt at ir.bbn.com
Thu Jun 5 00:01:14 UTC 2014


     this is a discussion/brainstorming about if and how to get rid of
  what remains of the OSM project SVN.

I think your points about what's nice about the openstreetmap svn are
valid.  A few thoughts

1) git != github

osm could host a git repo  and allow the same set of people who can
write to svn to push to it.

2) the github model is not universal

github works by everyone having their own repository, and only
permission to write to it, while anyone can read anything.  This is good
because it enables people you don't even know exist to easily publish
changes, but it sort of forces one collaboration style.  There can be
organizational repos, but those seem geared to having a small set of
people accept changes rather than mirroring how svn or cvs works.

3) in-tool changes by unauthorized people

I think the most important thing about git for free software is that
people who haven't been given write permission can make changes in a
form that is entirely suitable for merging.   A change is more than a
patch; it's also the commit message.

4) discovery is a human organization issue more than a tool issue

I see your point about running ls in the svn checkout.  But the other
side of the coin is that the svn tree is a mess with respect to
tag/trunk/branches so that you can't reasonably check it out.

It seems usueful to have something, which could be a wiki page or a
short file, that has pointers to a curated set git repositories or
tools.

5) place for little scripts

It may make sense to have an official osm-misc git repo, in which many
people can put random little bits that are insufficient to merit a
top-level project.  I don't see how svn vs git really matters here,
except that increasingly people have learned git first and don't want to
deal with svn.


I have been using git on a project at work for about 4 years, and we
have a central repository (the git term is "official repository").
Everyone fetches and pushes from this official repository, and it
contains by definition the authoritative version.   So it's not really
so different than svn, except that the branching model doesn't cause
pain, and people can do things offline.   So really I'm suggesting
moving to git without giving up on shared-write official repos.



-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 180 bytes
Desc: not available
URL: <http://lists.openstreetmap.org/pipermail/dev/attachments/20140604/b8b6541a/attachment.pgp>


More information about the dev mailing list