Difference between revisions of "Git"

From GnuCash
Jump to: navigation, search
(add the -s switch)
(add git-svn dcommit)
Line 17: Line 17:
  
 
That's it.
 
That's it.
 +
 +
Once you committed your changes to your local git repository, here's how you commit the local changes upstream into gnucash's SVN repository:
 +
git-svn dcommit
  
 
Did I mention I think git is very cool?
 
Did I mention I think git is very cool?

Revision as of 18:45, 22 December 2007

Git is an extremely cool version control system, but a bit geeky to get used to it. For gnucash, it can be used to hold a local copy of the full svn repository, which means extremely fast version browsing. Also, it is possible to prepare your commits in your local repository first, and sending them to the gnucash svn server sometime later in a batch. Also extremely cool.

Webpage: http://git.or.cz

Note: You should install git >= 1.5.0 because svn handling has improved considerably with these versions.

Here's how you as a developer get your local git repository if you only want trunk (git-1.5.2):

git-svn clone -r16500:HEAD svn+ssh://USERNAME@svn.gnucash.org/repo/gnucash/trunk

Here's how you as a developer get your local git repository if you want trunk and all branches (git-1.5.2):

git-svn clone -r16500:HEAD svn+ssh://USERNAME@svn.gnucash.org/repo/gnucash -s

That's it. (Starting at r16500 is a good opportunity because the 2.2 branch is branched at approx. r16560.)

Here's how you run the equivalent of "svn update":

git-svn rebase

That's it.

Once you committed your changes to your local git repository, here's how you commit the local changes upstream into gnucash's SVN repository:

git-svn dcommit

Did I mention I think git is very cool?