Do you want explicit licensing and publishing permissions for each patch you incorporate into your project? Do you miss the simplicity of Signed-off-by tags you use when developing the Linux kernel and Git? This repository extracts the Developer Certificate of Origin and Signed-off-by documentation from both projects, and presents them in a project-agnostic manner. To incorporate into your own project,
-
Pull the documentation into your project:
$ git pull --allow-unrelated-histories git://tremily.us/signed-off-by.git signed-off-by
Alternatively, you may pull in one of the other branches listed below, for example:
$ git pull --allow-unrelated-histories git://tremily.us/signed-off-by.git contributing-github
If you like signing merges, you may want to run:
$ git commit --amend --signoff --no-edit
-
Tell your developers by pointing to
Documentation/SubmittingPatches
from yourREADME
orCONTRIBUTING
documentation and sending a message to your mailing list. -
Prosper.
To make it easier to merge bits and pieces of this documentation into your project, I've split the contents into several branches:
master:
This branch, mostly a container for this README
.
signed-off-by:
Documentation/developer-certificate-of-origin
contains the full
text of the DCO (verbatim copies only), and
Documentation/SubmittingPatches
(GPLv2-exact) explains how to
use the DCO with Signed-off-by tags.
copying:
The license under which Documentation/SubmittingPatches
is
distributed. Check here to determine if you are allowed to merge
signed-off-by
into your project.
contributing:
An example CONTRIBUTING
file in case your license does not allow
you to merge signed-off-by
. The contributing file is released
under the very permissive CC0 1.0 unported.
contributing-github:
A version of the contributing
branch adapted for GitHub-based
projects.
license:
The text of all the licenses related to this repository. Includes
GPLv2-exact
for SubmittingPatches
, CC0-1.0
for CONTRIBUTING
,
and CC-BY-3.0
for CC0-1.0
. It also includes the short,
human-readable versions of the CC licenses.
Licensing of the DCO itself is a bit murky, with:
Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
in https://developercertificate.org/ and:
© 2005 Open Source Development Labs, Inc. The Developer's Certificate of Origin 1.1 is licensed under a Creative Commons Attribution-ShareAlike 2.5 License. If you modify you must use a name or title distinguishable from "Developer's Certificate of Origin" or "DCO" or any confusingly similar name.
and:
© 2004 Open Source Development Labs, Inc. The Developer's Certificate of Origin 1.0 is licensed under a Creative Commons Attribution-ShareAlike 2.5 License. If you modify you must use a name or title distinguishable from "Developer's Certificate of Origin" or "DCO" or any confusingly similar name.
But with the Linux Foundation as the successort to OSDL, it seems unlikely that anyone would be upset by verbatim copies.
For work that started in other projects (e.g. the Linux kernel and
Git), I've cherry-picked the relevant commits from the project
repositories to preserve commit metadata. For each of these commits,
I've attached a note with the commit hash, original commit message,
and original commit repository. Fetch the refs/notes/commits
reference from my public repository if you want these notes:
$ git config --add remote.origin.fetch '+refs/notes/:refs/notes/' $ git fetch origin
If I altered the original patch by removing context, I've added my s-o-b. Otherwise the original patch applied cleanly, and I left my s-o-b off.