Mercurial > hg
changeset 45514:93a0f3ba36bb
merge with stable
author | Augie Fackler <augie@google.com> |
---|---|
date | Mon, 21 Sep 2020 15:05:38 -0400 |
parents | 22140fd783d2 (current diff) 2bc978921e8a (diff) |
children | 89f0d9f87701 |
files | hgext/strip.py |
diffstat | 2 files changed, 61 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/strip.py Wed Sep 16 19:32:53 2020 +0200 +++ b/hgext/strip.py Mon Sep 21 15:05:38 2020 -0400 @@ -254,7 +254,7 @@ # only reset the dirstate for files that would actually change # between the working context and uctx - descendantrevs = repo.revs(b"%d::.", uctx.rev()) + descendantrevs = repo.revs(b"only(., %d)", uctx.rev()) changedfiles = [] for rev in descendantrevs: # blindly reset the files, regardless of what actually changed
--- a/tests/test-strip.t Wed Sep 16 19:32:53 2020 +0200 +++ b/tests/test-strip.t Mon Sep 21 15:05:38 2020 -0400 @@ -1177,6 +1177,14 @@ summary: commitA +stripping a set containing a merge properly reset file content, including items on other branches + +The added file is moved to unknown, which is the behavior we have been seeing for other `hg strip --keep` call. + +stripping a set containing a merge properly reset file content, including items on other branches + +The added file is moved to unknown, which is the behavior we have been seeing for other `hg strip --keep` call. + $ hg unbundle -u $TESTTMP/issue4736/.hg/strip-backup/35358f982181-a6f020aa-backup.hg adding changesets adding manifests @@ -1185,6 +1193,50 @@ new changesets 35358f982181:4cf5e92caec2 (2 drafts) 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg id + 4cf5e92caec2 (new-branch) tip + $ hg status --rev "f62c6c09b707" + A bar.txt + $ hg diff --rev "f62c6c09b707" + diff -r f62c6c09b707 bar.txt + --- /dev/null Thu Jan 01 00:00:00 1970 +0000 + +++ b/bar.txt Thu Jan 01 00:00:00 1970 +0000 + @@ -0,0 +1,1 @@ + +bar + $ hg log -G -v --rev 35358f982181:: --patch + @ changeset: 5:4cf5e92caec2 + |\ branch: new-branch + | ~ tag: tip + | parent: 3:f62c6c09b707 + | parent: 4:35358f982181 + | user: test + | date: Thu Jan 01 00:00:00 1970 +0000 + | description: + | merge + | + | + | diff -r f62c6c09b707 -r 4cf5e92caec2 bar.txt + | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 + | +++ b/bar.txt Thu Jan 01 00:00:00 1970 +0000 + | @@ -0,0 +1,1 @@ + | +bar + | + o changeset: 4:35358f982181 + | parent: 1:eca11cf91c71 + ~ user: test + date: Thu Jan 01 00:00:00 1970 +0000 + files: bar.txt + description: + bar + + + diff -r eca11cf91c71 -r 35358f982181 bar.txt + --- /dev/null Thu Jan 01 00:00:00 1970 +0000 + +++ b/bar.txt Thu Jan 01 00:00:00 1970 +0000 + @@ -0,0 +1,1 @@ + +bar + + $ hg strip -k -r 35358f982181 saved backup bundle to $TESTTMP/issue4736/.hg/strip-backup/35358f982181-a6f020aa-backup.hg $ hg log -G @@ -1211,12 +1263,14 @@ date: Thu Jan 01 00:00:00 1970 +0000 summary: commitA - $ hg diff - diff -r f62c6c09b707 bar.txt - --- /dev/null Thu Jan 01 00:00:00 1970 +0000 - +++ b/bar.txt Thu Jan 01 00:00:00 1970 +0000 - @@ -0,0 +1,1 @@ - +bar + + $ hg status -A + ? bar.txt + C a + C b + C foo.txt + $ cat bar.txt + bar Use delayedstrip to strip inside a transaction