Rename README.svn to README.git and revise

reflecting the git conversion.
This commit is contained in:
John Ralls 2014-02-16 09:37:09 -08:00
parent 2c2d0efe0f
commit 168dc03dde

View File

@ -1,9 +1,9 @@
This file contains guidelines for using GnuCash from Subversion. This file contains guidelines for using GnuCash from a git repository.
They have been adapted from the guidelines for gnome-libs by They have been adapted from the guidelines for gnome-libs by
Miguel de Icaza who adapted them from guidelines written by Miguel de Icaza who adapted them from guidelines written by
Owen Taylor. Owen Taylor.
+ In order to build GnuCash from SVN, you need to run the autogen.sh + In order to build GnuCash from git, you need to run the autogen.sh
command to generate a configure script: command to generate a configure script:
./autogen.sh ./autogen.sh
@ -19,23 +19,25 @@ Owen Taylor.
(Note: Previously, autogen.sh automatically called configure as (Note: Previously, autogen.sh automatically called configure as
well. This behaviour was dropped in favor of two separate calls well. This behaviour was dropped in favor of two separate calls
because: Autogen should be an additional step taken by only by because autogen should be an additional step taken by only by
developers using SVN sources. Configure is a step taken by developers using git sources. Configure is a step taken by
everyone compiling the sources, be it from svn or a tarball.) everyone compiling the sources, be it from git or a tarball.)
+ Some versions of gettextize don't deal well with re-running themselves. + Some versions of gettextize don't deal well with re-running themselves.
You will see this as an error like: You will see this as an error like:
configure.in:1141: error: `intl/Makefile' is already registered with configure.ac:1141: error: `intl/Makefile' is already registered with
AC_CONFIG_FILES. autoconf/status.m4:844: AC_CONFIG_FILES is expanded AC_CONFIG_FILES. autoconf/status.m4:844: AC_CONFIG_FILES is expanded
from... configure.in:1141: the top level from... configure.ac:1141: the top level
autom4te: /usr/bin/m4 failed with exit status: 1 autom4te: /usr/bin/m4 failed with exit status: 1
autoheader: /usr/bin/autom4te failed with exit status: 1 autoheader: /usr/bin/autom4te failed with exit status: 1
**Error**: autoheader failed. **Error**: autoheader failed.
If you see this error, you may need to run "svn revert" to pull down If you see this error, it most likely means that you've made some
the repository versions of configure.in and/or Makefile.am in various places. local changes to configure.ac or one or more Makefile.am. You can
NOTE WELL: using "revert" will over-write any local changes you may have. reset changes on a file-by-file basis with git checkout, e.g.
git checkout configure.ac Makefile.am
When making changes to GnuCash and trying to commit to the repository: When making changes to GnuCash and trying to commit to the repository:
@ -58,24 +60,13 @@ When making changes to GnuCash and trying to commit to the repository:
+ You must not break the build! Never check in changes that do not + You must not break the build! Never check in changes that do not
compile, install or run. Just because your local tree compiles compile, install or run. Just because your local tree compiles
doesn't mean you are done. The most common way to break the build doesn't mean you are done. The most common way to break the build
is to forget to add new files or directories to SVN. But it is easy is to forget to add new files or directories to git. But it is easy
to fix this problem: 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.
+ Keep two directories, one where you make changes and another + 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.
'pristine' tree that you keep up to date. As soon as you check
in changes to your working tree, update the pristine tree then
recompile, install and run the pristine version. If you forgot
to add some new files, it will quickly show up.
+ Try not to break 'make dist' tarballs. These are generally broken
by not updating Makefile.am files when files are added or removed
to the repository.
+ If you are going to be changing many files in an experimental fashion,
it is probably a good idea to create a separate branch for your
changes. Please see the SVN info documentation to see how to create
a branch. Also, please inform the gnucash-devel-list about what you
are going to do.
+ When code is added from new developers, add them to AUTHORS and + When code is added from new developers, add them to AUTHORS and
to doc/sgml/C/xacc-about.sgml. to doc/sgml/C/xacc-about.sgml.