My change was an optimization for the common case. What we had already was "correct" for the edge cases you identified.
On one hand:
- I could make an additional change to handle the case of change in the branch location.
- We use revnos only, practically, so I think that's fine, myself.
However:
- I don't see how to handle an uncommit or an --overwrite.
I think those are pretty unlikely cases, but if we care about handling them, I think this is dead in the water. In that case, Aaron, isn't this actually a Rejected?
My change was an optimization for the common case. What we had already was "correct" for the edge cases you identified.
On one hand:
- I could make an additional change to handle the case of change in the branch location.
- We use revnos only, practically, so I think that's fine, myself.
However:
- I don't see how to handle an uncommit or an --overwrite.
I think those are pretty unlikely cases, but if we care about handling them, I think this is dead in the water. In that case, Aaron, isn't this actually a Rejected?