Skip to Content.
Sympa Menu

sm-discuss - Re: [SM-Discuss] using git for grimoires

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: Jeremy Kolb <jkolb AT brandeis.edu>
  • To: David Brown <dmlb2000 AT gmail.com>
  • Cc: SM Discuss <sm-discuss AT lists.ibiblio.org>
  • Subject: Re: [SM-Discuss] using git for grimoires
  • Date: Fri, 07 Apr 2006 17:24:39 -0400

David Brown wrote:
> Since I've had several questions about using git scm (the scm that the
> linux kernel uses) for the grimoires heres the way I could see us
> using it and how things would change from the current system. Most of
> the steps I deal with are using pure git if you use cogito some steps
> may be simplified or removed.
>
> Use Case Changes:
>
> 1) guru update and submit
> currently the guru submitting code to the repository is very
> centralized and requires constant access to the net when editing code.
>
> the change would be that there wouldn't need to be any access to the
> net because the guru would have an exact copy of the repository off
> the server that everyone uses. However to get code to the public
> grimoire for everyone to use there'd be one more level of indirection.
>
> the current steps to commit changes to the public grimoire are:
> 1) open files for edit
> 2) hack hack hack
> 3) commit open files (or some subset)
> 4) repeat 3 until happy
>
> the reason for 4 being there is that most of the TL's have told me
> (and through experience) splitting up commits to encompass one change
> (instead of one spell update in the test grimoire and one in the games
> grimoire) is a good thing and good development practice.
>
> the new steps to commit using a git repo would be the following:
> 1) hack hack hack
> 2) update index to encaplulate the commit
> 3) commit the files
> 4) repeat 1-3 until happy
> 5) pull the changes from your grimoire to the public grimoire.
>
> step 5 could include asking certain TL's to pull the changes to the
> public grimoire or if you have permissions ssh'ing in to the main
> system and then pulling from your grimoire to the public one.
>
> There would also be an alternative path as well:
> 3) perform a diff on the head
> 4) email the diff
>
> step 4 would be to someone who has permissions to edit the public
> grimoire or the ml where some one with those permissions would then
> apply the patch.
>
> ==== Pros of Using git ====
> 1) No internet access needed until you want your changes pulled to the
> public grimoire :DDD
> 2) decentralized repos, since everyone (including users if they use
> git to pull their grimories to use on their system) would have a copy
> of the repository and all it's history, so changing the DNS to point
> to someone else temporarily would be easy and many people could do it.
> 3) making small diffs for general updates of spells would be quicker (I
> think).
> 4) git-diff is and has always been relative to the root of the
> grimoire no fscking with the -p value on patches using git, it's all
> standardized.
>
> ==== Cons of Using git ====
> 1) Depending on how permissions for the publicly accessed grimoires
> are handled our TL's could have more work to do. Either Arwed would
> have to do this solo or he would have to choose people for a 'super
> guru' set that would have permission to pull from other guru's
> grimoires.
> I would advise not giving everyone permissions to the public grimoire
> because I'm not sure if a git pull can manage blowing over several
> files at once... haven't tried it.
>
> These are just my thoughts on using git let me know what you thing about it.
> There are several frontends for git including a bash frontend called cogito.
>
> - David Brown
> _______________________________________________
> SM-Discuss mailing list
> SM-Discuss AT lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/sm-discuss

We use git for xcb (xcb.freedesktop.org) and it works well, dunno about
maintaining repos but for code commit etc it's pretty neat.

Jeremy




Archive powered by MHonArc 2.6.24.

Top of Page