On 11/18/19 9:52 PM, Laszlo Kishalmi wrote:
As a former release manager I would like to defend the squashed commits.

Just for reference, OpenJDK projects go one step further and end up with half the commits in their history as NetBeans, with a much simpler history graph. I explain below.

As of forced push, I'd be pragmatic. Do not do that on master, release or a shared feature branches.

That's the concise version of my long-winded plea. :-)

Thanks,
John

OpenJDK and Project Skara
-------------------------
OpenJDK projects put the author in the Author field and the committer in the Commit field using just one entry in the history. For example:

----- openjdk/jdk ---------------------------------------------------
$ git log -n 1 --format=full 0ed2c6c2957269d1342610b6d0382a2f8052f167
commit 0ed2c6c2957269d1342610b6d0382a2f8052f167
Author: John Neffenger <j...@status6.com>
Commit: Phil Race <******@openjdk.org>

    8212071: Need to set the FreeType LCD Filter to reduce fringing

    Reviewed-by: prr, lbourges
---------------------------------------------------------------------

NetBeans leaves the Commit fields with their default values and adds an entry for the merge. For example:

----- apache/netbeans -----------------------------------------------
$ git log -n 2 --format=full 177e6c07707677cd95597b4150aa80383596969a
commit 177e6c07707677cd95597b4150aa80383596969a
Merge: 2f3fd90 10657f0
Author: Geertjan Wielenga <******@oracle.com>
Commit: GitHub <nore...@github.com>

    Merge pull request #1554 from jgneff/homenote

    [NETBEANS-3209] Add JAVA_HOME and ANT_HOME note

commit 10657f0de2a2f2e607c0985ef3c612f892b896ca
Author: John Neffenger <j...@status6.com>
Commit: John Neffenger <j...@status6.com>

    [NETBEANS-3209] Add JAVA_HOME and ANT_HOME note
    ...
    Fixes #3209
---------------------------------------------------------------------

The reasoning for the OpenJDK method is documented on the page below:

JEP 357: Migrate from Mercurial to Git
https://openjdk.java.net/jeps/357

"Git uses an additional field in the commit metadata to denote the committer of a commit, as distinct from the author. We'll use the committer field to signify sponsorship: in the event of a sponsored commit, the author will be named in the author field of the commit and the sponsor will be named in the committer field. If the sponsor also is a co-author, then an appropriate Co-authored-by trailer will be added, which is a situation that we cannot capture in the existing Mercurial message structure."

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@netbeans.apache.org
For additional commands, e-mail: dev-h...@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists



Reply via email to