Daniel Shahaf wrote:
> Johan Corveleyn wrote:
>> [...], revision N-1 contains a real
>> change, but only a short log message; and revision N has a no-op
>> change to that same path, and a very informative log message [...]
>
> The FreeBSD project used to intentionally make no-op commits (they term it
> "forced commits") as part of their new committer workflow. I don't know
> whether they still do that.
We need to be careful with terminology. We're not talking about a
no-op commit, we're talking about a path that is marked as 'changed'
within a commit, but whose content did not change. (The same commit
might or might not also contain other paths that have real changes.)
In fact, I think one of the first things we need to do is a precise
analysis of the issue:
* What exactly are the existing possible forms of 'no-op change'
that any part of Subversion can represent?
- Text-change?
- Props-change?
- Whole-node-change?
- Commit? (not so interesting in the current issue)
- Only certain combinations of those?
* At which APIs can each those changes be (a) made and (b) seen?
- FS API?
- Repos API?
- RA and client-side APIs?
- svnadmin dump/load?
- svnrdump dump/load?
- svnsync?
- Julian