It would be nice if we could amend a change that has dependents and just replay the dependent changes on top of it.
Yes indeed. Not sure how to do that though. What happens if you introduce a file in change
A, and then edit it in
B, but then amend
A to say you never introduced the file in the first place?
By that you mean
added file asdf, and
changed lines in file asdf, and you
A to remove the
added file change? A very good question.
We should probably just disallow that (
Dependent B modifies file introduced in A, but file is no longer introduced in A) altogether. Another option would be to remove that change from
B (with a warning) but keep it on the user’s FS as an unrecorded change (e.g. shows up in
As a user, I sometimes actually want to remove a file that was edited in (potentially many) dependent changes. Having to manually amend each dependent change before being able to remove the file would be unpleasant.