Mercurial > hg
annotate relnotes/next @ 44365:7c4b98a4e536
copy: add experimetal support for unmarking committed copies
The simplest way I'm aware of to unmark a file as copied after
committing is this:
hg uncommit --keep <dest>
hg forget <dest>
hg add <dest>
hg amend
This patch teaches `hg copy --forget` a `-r` argument to simplify that into:
hg copy --forget --at-rev . <dest>
In addition to being simpler, it doesn't touch the working copy, so it
can easily be used even if the destination file has been modified in
the working copy.
I'll teach `hg copy` without `--forget` to work with `--at-rev` next.
Differential Revision: https://phab.mercurial-scm.org/D8030
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 28 Jan 2020 14:07:57 -0800 |
parents | 8be0c63535b5 |
children | 9dab3fa64325 |
rev | line source |
---|---|
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
1 == New Features == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
2 |
44289
9f8eddd2723f
purge: add -i flag to delete ignored files instead of untracked files
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44194
diff
changeset
|
3 * `hg purge`/`hg clean` can now delete ignored files instead of |
9f8eddd2723f
purge: add -i flag to delete ignored files instead of untracked files
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44194
diff
changeset
|
4 untracked files, with the new -i flag. |
42309
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
5 |
44345
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
diff
changeset
|
6 * `hg log` now defaults to using an '%' symbol for commits involved |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
diff
changeset
|
7 in unresolved merge conflicts. That includes unresolved conflicts |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
diff
changeset
|
8 caused by e.g. `hg update --merge` and `hg graft`. '@' still takes |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
diff
changeset
|
9 precedence, so what used to be marked '@' still is. |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
diff
changeset
|
10 |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
diff
changeset
|
11 * New `conflictlocal()` and `conflictother()` revsets return the |
44343
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44289
diff
changeset
|
12 commits that are being merged, when there are conflicts. Also works |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44289
diff
changeset
|
13 for conflicts caused by e.g. `hg graft`. |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44289
diff
changeset
|
14 |
44364
8be0c63535b5
copy: add option to unmark file as copied
Martin von Zweigbergk <martinvonz@google.com>
parents:
44347
diff
changeset
|
15 * `hg copy --forget` can be used to unmark a file as copied. |
8be0c63535b5
copy: add option to unmark file as copied
Martin von Zweigbergk <martinvonz@google.com>
parents:
44347
diff
changeset
|
16 |
44343
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44289
diff
changeset
|
17 |
42309
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
18 == New Experimental Features == |
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
19 |
44365
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44364
diff
changeset
|
20 * Use `hg copy --forget --at-rev REV` to unmark already committed |
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44364
diff
changeset
|
21 copies. |
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44364
diff
changeset
|
22 |
42309
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
23 |
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
24 == Bug Fixes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
25 |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
26 |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
27 == Backwards Compatibility Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
28 |
44347
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44345
diff
changeset
|
29 * When `hg rebase` pauses for merge conflict resolution, the working |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44345
diff
changeset
|
30 copy will no longer have the rebased node as a second parent. You |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44345
diff
changeset
|
31 can use the new `conflictparents()` revset for finding the other |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44345
diff
changeset
|
32 parent during a conflict. |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44345
diff
changeset
|
33 |
42944
c2676b5a9f59
narrow: don't hexify paths and double-hexify known nodes on wire (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42935
diff
changeset
|
34 |
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
35 == Internal API Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
36 |
44159
df2162672d24
progress: delete deprecated ui.progress()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44133
diff
changeset
|
37 * The deprecated `ui.progress()` has now been deleted. Please use |
df2162672d24
progress: delete deprecated ui.progress()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44133
diff
changeset
|
38 `ui.makeprogress()` instead. |
44178
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44159
diff
changeset
|
39 |
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44159
diff
changeset
|
40 * `hg.merge()` has lost its `abort` argument. Please call |
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44159
diff
changeset
|
41 `hg.abortmerge()` directly instead. |
44194
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44178
diff
changeset
|
42 |
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44178
diff
changeset
|
43 * The `*others` argument of `cmdutil.check_incompatible_arguments()` |
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44178
diff
changeset
|
44 changed from being varargs argument to being a single collection. |