Re: Handling commit change logs
From: Andreas Färber <hidden>
Date: 2014-08-21 10:43:38
Also in:
linux-arm-kernel, linux-pm, linux-tegra, lkml
Am 20.08.2014 22:30, schrieb Stephen Warren:
On 08/20/2014 02:02 PM, Andreas Färber wrote:quoted
Am 20.08.2014 17:39, schrieb Javier Martinez Canillas:quoted
As you already know when you apply a patch with git am, everything that is between a line with 3 dashes line (---) and the actual diff is omitted since that is where the generated diffstat is placed by git format-patch. We usually rely on that behavior to put there the history of a patch or any information that we think that is useful for reviewers but is not suitable to end in the commit message. Now that means that you have to generate the patch and then manually edit it to add the history there. But since git am omits any text between the first "---" and the diff, it means that you can add a "---" on your actual commit message and anything that follows will be discarded by git am, that way you can maintain your history on your commit message which is way less tedious than manually editing patches. So the second "---" from Tuomas patch is actually the one generated by git format-patch but that gets discarded by git am just like any other text so it causes no harm when other apply the patches. If this not the correct workflow and you have a better way to manage this, I would love to know about it.One drawback of having --- in the commit message is that you can't cherry-pick but really need to use git-am for it to be stripped.You can, you just have to either: * Pass -e to git cherry-pick so you get to edit the patch description, * Run "git commit --amend" right afterwards, ... and then delete everything starting at ---. I do this reasonably often on my own patches; I send them to the list, get them reviewed, and then cherry-pick them into the Tegra maintainer tree rather than saving them from the email client and running git am.
Sure. My point was more that the person doing the cherry-pick needs to be aware of and correct such misuse, and in QEMU I did see people cherry-picking from each other and committing with Signed-off-by *below* the change log. ;) Also, keeping commits and change log separate allows me to work on them concurrently. As with editors, everyone will have their own preferences. Cheers, Andreas -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg