You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.1 KiB

Notes for util-linux-ng developers


* "./" generates all necessary files (run it after checkout from

* "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


* 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

SCM (source code management):

git clone git:// util-linux-ng

* maintenance (stable) branch
- created for every <major>.<minor> release
- branch name: stable/v<major>.<minor>

* bugfix branch
- created for <major>.<minor>.<maint> release for critical/security bugs only
- this branch is optional
- branch name: stable/v<major>.<minor>.<maint>

* 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<version>