toc
meta title="Contributing to cwidget"
Getting the development tree
While you can always work from the distributed source (see getting cwidget), I recommend that you use the active development tree to ensure that your changes are compatible with the current state of cwidget.
The cwidget development tree is managed using the git version control system. You can install git using your operating system's utilities or by following the instructions on its web page. Once it is installed, issuing the command
git clone git://git.debian.org/git/cwidget/cwidget-upstream.git cwidget
will retrieve the latest version of the source and store it in a
directory named
. You can update this directory to
the latest source version by changing to it and issuing the folowing
command:cwidget
git pull
git is a fully distributed version control system. This means that once you have made some changes to your copy of the source code, you can commit them by running
git add <file>
for each <file>
that you have modified, then running
git commit
and typing a commit message. In order to make it easier for us to review your patches, I recommend making small, logically distinct commits rather than checking in 50 changes at once. If this means that you have dead-ends in your change history, that's fine.
For more information on using git, see the git documentation.
Sending patches
Once you have committed some changes, you can automatically generate emails containing your patches:
git pull && git format-patch origin
This command will generate one or more patches represnting your changes relative to the upstream tree, writing the names of the files to standard output:
daniel@alpaca:/tmp/cwidget$ git format-patch origin 0001-A-simple-test-commit-to-try-bundling.patch
Patches should be sent to cwidget-devel@lists.alioth.debian.org. You can use patches as email templates, for instance via
mutt -H 0001-A-simple-test-commit-to-try-bundling.patch cwidget-devel@lists.alioth.debian.org
, or you can just attach the patches themselves to your email. Using the patch as a template is preferred, but may not be easy or possible in all mail readers.
Compiling the development tree
In addition to cwidget's normal prerequisites, you will need the following additional pieces of software:
These tools allow you to generate the build system of cwidget. The build system can be generated by running
sh ./autogen.sh
, which will create and run a configure script to build the Makefiles.
Once autogen
is finished, you can just run
make
as usual to build the library.