HBASE-22311 - Update community docs to recommend use of "Co-authored-by" in git commits

This commit is contained in:
Norbert Kalmar 2019-05-27 17:24:57 +02:00 committed by Peter Somogyi
parent 73267d9ab1
commit b4dc778c3b
1 changed files with 25 additions and 7 deletions

View File

@ -2324,19 +2324,37 @@ message is in their patch and you can use that, but be sure the JIRA ID is at
the front of the commit message, even if the contributor left it out.
[[committer.amending.author]]
====== Add Amending-Author when a conflict cherrypick backporting
====== Use GitHub's "Co-authored-by" when there are multiple authors
We've established the practice of committing to master and then cherry picking back to branches whenever possible, unless
* it's breaking compat: In which case, if it can go in minor releases, backport to branch-1 and branch-2.
* it's a new feature: No for maintenance releases, For minor releases, discuss and arrive at consensus.
When there is a minor conflict we can fix it up and just proceed with the commit.
The resulting commit retains the original author.
When the amending author is different from the original committer, add notice of this at the end of the commit message as: `Amending-Author: Author
<committer&apache>` See discussion at link:http://search-hadoop.com/m/DHED4wHGYS[HBase, mail # dev
- [DISCUSSION] Best practice when amending commits cherry picked
from master to branch].
There are occasions when there are multiple author for a patch.
For example when there is a minor conflict we can fix it up and just proceed with the commit.
The amending author will be different from the original committer, so you should also attribute to the original author by
adding one or more `Co-authored-by` trailers to the commit's message.
See link:https://help.github.com/en/articles/creating-a-commit-with-multiple-authors/[the GitHub documentation for "Creating a commit with multiple authors"].
In short, these are the steps to add Co-authors that will be tracked by GitHub:
. Collect the name and email address for each co-author.
. Commit the change, but after your commit description, instead of a closing quotation, add two empty lines. (Do not close the commit message with a quotation mark)
. On the next line of the commit message, type `Co-authored-by: name <name@example.com>`. After the co-author information, add a closing quotation mark.
Here is the example from the GitHub page, using 2 Co-authors:
[source,xml]
----
$ git commit -m "Refactor usability tests.
>
>
Co-authored-by: name <name@example.com>
Co-authored-by: another-name <another-name@example.com>"
----
Note: `Amending-Author: Author <committer@apache>` was used prior to this
link:https://lists.apache.org/thread.html/f00b5f9b65570e777dbb31c37d7b0ffc55c5fc567aefdb456608a042@%3Cdev.hbase.apache.org%3E[DISCUSSION].
====== Close related GitHub PRs