[bt-devel] Using git

Eeli Kaikkonen eekaikko at mail.student.oulu.fi
Wed Nov 26 15:05:33 MST 2008


I have played with git version control system. I have done it privately, 
using git-svn between my own git repo and sourceforge svn repo. I have 
to say I now believe all the hype around distributed version systems. 
Svn is good enough for some of our purposes, but it's quite rigid. I 
have thought about possibility of having a public git repository for 
BibleTime code. Svn could (and should) be used in the future, but more 
informal git repository could be nice for experimenting, branching, 
merging and sharing ideas.

I have several branches here which I use for different things. If you 
want to play with some small idea you can just create a branch, change 
the code and then either delete the branch or merge the code to another 
branch (or "HEAD").

I also have a problem with two places where I spend time/do coding. It 
would be good to have an internet repository where I could store my work 
instead of copying files or diffs to memstick.

Distributed vcs is great for sharing changes. We could share even the 
code which is not yet ready. It's not practical with svn. I have not 
really done any merging with svn but they say it's painful. It's one of 
the reasons why for example Linus Torvalds says CVS/SVN is fundamentally 
wrong. I don't have much first-hand experience of this but I still 
agree. Take a patch from Greg for example. He said it's for those who 
want to do something else than some others do. Would it be reasonable to 
put it in the SVN repo, in a branch? Could it be maintained there so 
that when the HEAD is updated the changes  would be merged to the 
branch? With git it should be easy.

I might put the BT code in to some public hosting service if you don't 
oppose (and I don't know why anyone should oppose). Nobody has to use 
it. The SVN repo is still the authoritative one and all real changes 
will be put there. The git repo would just offer a useful "playground" 
and more dynamic way to store or share code which is not ready to be put 
into the SVN HEAD.


--Eeli Kaikkonen



More information about the bt-devel mailing list