Notes for util-linux-ng developers ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AUTOTOOLS: * "./autogen.sh" generates all necessary files (run it after checkout from git) * "make distclean" removes all unnecessary files, but code is still possible recompile by "./configure; make" * "make dist-gzip" (or -bzip2) creates tarball which is possible use without autogen.sh PATCHES: * send your patches to the mailing list or to upstream maintainer (see the AUTHORS file) * diff -u * don't include generated (autotools) stuff to your patches (use git-clean [-X]) * patches are delivered via email only. Downloading them from internet servers is a pain. * one patch per email, with the changelog in the body of the email. * Subject: [PATCH] subsystem: description * if someone else wrote the patch, they should be credited (and blamed) for it. To communicate this, add a line: From: John Doe * add a Signed-off-by line: Signed-off-by: Foo Bar * there is a lot of really useful rules. Please, read: The perfect patch http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt SCM (source code management): git clone git://git.kernel.org/pub/scm/utils/util-linux-ng/util-linux-ng.git util-linux-ng * maintenance (stable) branch - created for every . release - branch name: stable/v. * bugfix branch - created for .. release for critical/security bugs only - this branch is optional - branch name: stable/v.. * master branch - the status of this branch is: "it works for me". It means useful but not well tested patches. - it's source for occasional snapshots - for long-term development or invasive changes should be an active development forked into a separate branch (topic branches) from the tip of "master". * A new tag object is created for: - every release, tag name: v KNOWN BUGS: - tag v2.13.1 is typo. Please, ignore this tag.