copy: add option to unmark file as copied
To unmark a file as copied, the user currently has to do this:
hg forget <dest>
hg add <dest>
The new command simplifies that to:
hg copy --forget <dest>
That's not a very big improvement, but I'm planning to also teach `hg
copy [--forget]` a `--at-rev` argument for marking/unmarking copies
after commit (usually with `--at-rev .`).
Differential Revision: https://phab.mercurial-scm.org/D8029
== New Features ==
* `hg purge`/`hg clean` can now delete ignored files instead of
untracked files, with the new -i flag.
* `hg log` now defaults to using an '%' symbol for commits involved
in unresolved merge conflicts. That includes unresolved conflicts
caused by e.g. `hg update --merge` and `hg graft`. '@' still takes
precedence, so what used to be marked '@' still is.
* New `conflictlocal()` and `conflictother()` revsets return the
commits that are being merged, when there are conflicts. Also works
for conflicts caused by e.g. `hg graft`.
* `hg copy --forget` can be used to unmark a file as copied.
== New Experimental Features ==
== Bug Fixes ==
== Backwards Compatibility Changes ==
* When `hg rebase` pauses for merge conflict resolution, the working
copy will no longer have the rebased node as a second parent. You
can use the new `conflictparents()` revset for finding the other
parent during a conflict.
== Internal API Changes ==
* The deprecated `ui.progress()` has now been deleted. Please use
`ui.makeprogress()` instead.
* `hg.merge()` has lost its `abort` argument. Please call
`hg.abortmerge()` directly instead.
* The `*others` argument of `cmdutil.check_incompatible_arguments()`
changed from being varargs argument to being a single collection.