bzr bisect should update the working copy rather than revert it
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar Bisect Plugin |
New
|
Undecided
|
Gustaf Thorslund |
Bug Description
Currently, bisect uses `revert` to set the working copy to the correct revision.
Since bzr 2.1, `update` can take a `—revision` argument. Using it (when available anyway) would have the advantages of leaving the working copy clean (better ability to try things out when reaching the result of the bisect) and of providing more informations to the user (if the user performs a lot of operations after the latest bisect call he might lose his way/bearings, `bzr revno —tree` gives the information of which revision is the current one at least) and the tools (`bzr qlog` for instance will mark the current working copy revision on the log).
Therefore, I believe it would be a better working mechanic for bisect than revert.
Changed in bzr-bisect: | |
assignee: | nobody → Gustaf Thorslund (gthorslund) |
I've actually thought about this too and done some coding. I'll look over my code and attach to the bug.
One thing I ran into was what to do with uncommitted changes. 'revert' would just throw them away while 'update' will try to move them away. Next update would move them again. Don't remember details now, but I ended up with lots of files being moved.
I think a good solution would be to refuse starting if there are uncommitted changes or even unknown files. That's also where I left when looking at this last time.