>First, If a forced commit is pushed, the subsequent commit email will >contain '[Forced Update!]' in the subject line
The Board has decided force push could be allowed for development branches. However, our current master branch is protected. I suggest we un-protect it. This would enable: 1) Roll-back commits. For now, we can do only "revert-commits". However, the commits clutter history. 2) Edit commits. For instance, Felix pushed recently "update documentation from Ant to Gradle" as four independent commits. If master branch was un-protected, we could combine the commits and re-structure it as a single commit with nice summary. 3) "oops", "make checkstyle happy", etc could be combined. Then Git history would be easier to follow, and bug analysis would be simpler. 3) Edit commit messages. For instance, if the wording is not that good, we could edit the message. For instance, we could add BugZilla ID or whatever. WDYT? Of course, with great power comes great responsibility, so I don't suggest to force-push often. Force-pushes might complicate PR rebase. However, please note that 99.42% of the cases I suggest are "edit the very last-two-three" commits. So it shouldn't really be a problem for rhe rebase. I've raised https://issues.apache.org/jira/browse/INFRA-19231 , and a consensus is needed in order to un-protect master. Vladimir