D6667: amend: stop committing unrequested file reverts (issue6157)
valentin.gatienbaron (Valentin Gatien-Baron)
phabricator at mercurial-scm.org
Mon Jul 22 10:36:36 UTC 2019
valentin.gatienbaron created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D6667
AFFECTED FILES
mercurial/cmdutil.py
tests/test-amend.t
CHANGE DETAILS
diff --git a/tests/test-amend.t b/tests/test-amend.t
--- a/tests/test-amend.t
+++ b/tests/test-amend.t
@@ -456,7 +456,7 @@
- working copy parent has a change to file `a`
- working copy has the inverse change
- we amend the working copy parent for files other than `a`
-hg includes the changes to `a` anyway.
+hg used to include the changes to `a` anyway.
$ hg init 6157; cd 6157
$ echo a > a; echo b > b; hg commit -qAm_
@@ -466,5 +466,6 @@
1 files changed, 1 insertions(+), 1 deletions(-)
$ echo a > a; echo b2 > b; hg amend -q b
$ hg diff --stat -c .
+ a | 2 +-
b | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -2505,8 +2505,8 @@
# was removed, it's no longer relevant. If X is missing (aka
# deleted), old X must be preserved.
files.update(filestoamend)
- files = [f for f in files if (not samefile(f, wctx, base)
- or f in wctx.deleted())]
+ files = [f for f in files if (f not in filestoamend
+ or not samefile(f, wctx, base))]
def filectxfn(repo, ctx_, path):
try:
To: valentin.gatienbaron, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list