This file contains guidelines for using GnuCash from a git repository.
They have been adapted from the guidelines for gnome-libs by
Miguel de Icaza who adapted them from guidelines written by
Owen Taylor.

Autotools specific information in this file was removed in Jan 2018 
by Rob Gowin as part of the transition to CMake.

When making changes to GnuCash and trying to commit to the repository:

 + Ask first. If your changes are major, or could possibly break existing
   code, you should always ask. If your change is minor and you have
   been working on gnucash for a while it is probably not necessary
   to ask. But when in doubt, ask. Even if your change is correct,
   somebody may know a better way to do things.

   Since you want other people to review your code before it goes in,
   you can submit your changes as a patch to gnucash-devel@gnucash.org.
   See README for details.

   If you are making changes to gnucash, you should be subscribed
   to gnucash-devel@gnucash.org and to gnucash-changes@gnucash.org.
   (Subscription address: https://www.gnucash.org/en/lists.phtml)
   gnucash-devel@gnucash.org is a good place to ask about intended
   changes.

 + You must not break the build! Never check in changes that do not
   compile, install or run. Just because your local tree compiles
   doesn't mean you are done. The most common way to break the build
   is to forget to add new files or directories to git. But it is easy
   to fix this problem: Clone your local repo, but never make changes
   in it. After you have committed a set of changes, cd to the clone,
   run git pull, build and make distcheck. If that passes, it's safe
   to push.

 + It's wise to do major work in a branch. That allows you to keep the
   rest of your repo up to date. It's also better to commit small
   changes often rather than to make a single large change. Run make
   check often so that you can quickly find errors.

 + When code is added from new developers, add them to AUTHORS and to
   doc/sgml/C/xacc-about.sgml.

Dave Peticolas
June 21, 2002

Derek Atkins
November 21, 2002

Neil Williams
November 6th, 2005

