On Thu, Aug 13, 2020 at 12:08:36AM -0400, Tom Lane wrote: > Noah Misch <n...@leadboat.com> writes: > > On Wed, Aug 12, 2020 at 07:47:01PM -0400, Tom Lane wrote: > >> If the workflow is commit first and re-indent later, then we can always > >> revert the pgindent commit and clean things up manually; but an auto > >> re-indent during commit wouldn't provide that history. > > > There are competing implementations of assuring pgindent-cleanliness at > > every > > check-in: > > > 1. After each push, an automated followup commit appears, restoring > > pgindent-cleanliness. > > 2. "git push" results in a commit that melds pgindent changes into what the > > committer tried to push. > > 3. "git push" fails, for the master branch, if the pushed commit disrupts > > pgindent-cleanliness. > > > Were you thinking of (2)? > > I was objecting to (2). (1) would perhaps work. (3) could be pretty > darn annoying,
Right. I think of three use cases here: a) I'm a committer who wants to push clean code. I want (3). b) I'm a committer who wants to ignore pgindent. I get some email complaints under (1), which I ignore. Under (3), I'm forced to become (a). c) I'm reading the history. I want (3). > I hadn't thought about the angle of HEAD versus back-branch patches, > but that does seem like something to ponder. The back branches don't > have the same pgindent rules necessarily, plus the patch versions > might be different in more than just whitespace. My own habit when > back-patching has been to indent the HEAD patch per-current-rules and > then preserve that layout as much as possible in the back branches, > but I doubt we could get a tool to do that with any reliability. Similar habit here. Another advantage of master-only is a guarantee against disrupting time-critical patches. (It would be ugly to push back branches and sort out the master push later, but it doesn't obstruct the mission.)