[Koha-devel] Re: distributed VCS, some thoughts.
Jerry Van Baren
gerald.vanbaren at smiths-aerospace.com
Mon Mar 19 17:21:23 CET 2007
Yes, for a pull to happen, the repository must be publicly accessible
(i.e. on the internet). The best way is via the git port 9418, the
other way is via port 80 using http: (I presume 443 https: works too,
have not tried). Unfortunately, many IT departments block all ports
except 80 and 443 (including ssh, grrrrr). Depending on what an
individual developer has to work with (what the IT department provides
for access), publishing a local repository can be difficult or
impossible. Pushing is generally (exclusively?) done via ssh so
unenlightened/uncooperative IT departments can be a problem for pushing
as well (cvs/svn have the same problem).
What Wolfgang Denk did for u-boot is to set up a bunch of feeder
repositories on his company's server and give the feeder developers ssh
access so that they could push their local repositories to the main
server, at which point the world can pull from the main repository and
any feeder repositories that they need.
<http://www.denx.de/wiki/UBoot/Custodians>
I presume that is similar to what the primary linux kernel developers
have on <http://git.kernel.org/>, but better organized. The u-boot
feeder repositories is a fairly new development. It has been working
well so far...
Having all the feeder repositories collected in one place for ease of
reference is ideal. Since git is a distributed SCM, all your eggs are
in everybodys' baskets (repo clones) so this is not a problem.
Obviously, this takes some effort to set up and a host (like koha.org)
to run it on.
HTH,
gvb
Kyle Hall wrote:
> Thanks for the extra information. Just on a technical note, let's say I
> e-mail you and say 'pull the changes I've made from my local repository
> into yours', this means that I have to have my work pc publicly
> available. I assume that git has a certain port it works on. Is that
> correct?
>
> Kyle
>
> On 3/19/07, *Jerry Van Baren* <gerald.vanbaren at smiths-aerospace.com
> <mailto:gerald.vanbaren at smiths-aerospace.com>> wrote:
>
> Well, it is hard to be definitive without a clue of your current
> development methodologies, but I would speculate that it will take
> somewhere from little more to a lot less time than CVS/SVN with multiple
> writers (note that you can still have multiple writers with git, it just
> is not generally useful since everybody has their own copy of the
> repository).
>
> If the code in CVS never gets messed up because of multiple people
> committing incompatible changes, it will take minimal extra time for
> everybody upstream to pull changes.
>
> On the other hand, if ever you get a mess due to multiple people
> committing incompatible stuff in CVS, you've just saved every bit of
> time that the extra pulling cost. I suspect this has already happened
> at least once. :-/
>
> I tried to outline a "pull" scenario in a previous email to illustrate
> that it is NOT painful. Doing a pull is a single command you run that
> takes seconds to run and you do it occasionally (on demand, when you
> feel like it, once a day, once a week, whatever makes sense). It is
> the
> same level of effort as doing a "svn update". In addition, if you use
> local source control (maintaining a local copy of the cvs/svn repository
> to track local changes or using RCS locally) *which all developers
> should do*, git is a huge improvement.
>
> All of the developers will benefit (save time) with git, so the net time
> savings equation is positive, regardless. There is a learning curve to
> climb, but it isn't very steep and the rewards are pretty good.
> RCS - gets the job done but cannot share the changes
> CVS - gets the job done over the wire, allowing sharing (Pinto)
> SVN - puts a turbocharger in the Pinto (Pangra)
> git - everybody makes their own clone of the Lamborghini
>
> Reference pointers for the non-US residents (and youngsters ;-):
> <http://en.wikipedia.org/wiki/Ford_Pinto>
> < http://en.wikipedia.org/wiki/Supercar>
>
> Best regards,
> gvb
>
>
> Kyle Hall wrote:
> > I think everyone would agree that more checking of code is good.
> As long
> > as you and Paul and Josh are willing to put in a bit more time, I
> > imagine everyone will be all for it. I think the big question is *how
> > much* more time will it require from you guys. I think only the
> people
> > currently using git will be able to help us answer us.
> >
> > Kyle
> >
> > On 3/16/07, *Chris Cormack* <chris at katipo.co.nz
> <mailto:chris at katipo.co.nz>
> > <mailto:chris at katipo.co.nz <mailto:chris at katipo.co.nz>>> wrote:
> >
> > On Fri, Mar 16, 2007 at 03:04:30PM -0400, Kyle Hall said:
> > > Thank you for illuminating us on the ways of git ; )
> > > It seems from you're description if there are lot's of
> Kyle's,
> > that the
> > > likes of Chris and Paul are in for more work that
> previously. I,
> > on the
> > > other hand, would be effected little.
> > >
> > Speaking as Chris
> >
> > I don't think this is nessecarily a bad thing, a bit more
> checking as
> > code comes in can save a bunch of time in the future. I guess
> what I'm
> > saying is we should be doing something like this currently
> anyway, at
> > least we should be sanity checking code as its committed. We
> wouldnt
> > end up with dual implementation of the same feature, and some
> of the
> > duplicate code we now have.
> >
> > Chris
> >
> >
> > --
> > Chris Cormack
> > Programmer
> > 027 4500 789 Katipo
> > Communications Ltd
> > chris at katipo.co.nz <mailto:chris at katipo.co.nz>
> > <mailto:chris at katipo.co.nz
> <mailto:chris at katipo.co.nz>> www.katipo.co.nz
> <http://www.katipo.co.nz>
> > < http://www.katipo.co.nz>
> >
> >
> >
> >
> > --
> > IT Tech
> > Crawford County Federated Library System
> >
> ______________________________________________________________________
> > CAUTION: This message was sent via the Public Internet and its
> > authenticity cannot be guaranteed.
> >
> > ______________________________________________________
>
>
>
>
> --
> IT Tech
> Crawford County Federated Library System
> ______________________________________________________________________
> CAUTION: This message was sent via the Public Internet and its
> authenticity cannot be guaranteed.
>
> ______________________________________________________
More information about the Koha-devel
mailing list