Details
Details
- Reviewers
- None
- Group Reviewers
hg-reviewers - Commits
- rHG83b225fbd788: tests: demonstrate loss of changeset copy metadata on rebase
Diff Detail
Diff Detail
- Repository
- rHG Mercurial
- Lint
Lint Skipped - Unit
Unit Tests Skipped
hg-reviewers |
Lint Skipped |
Unit Tests Skipped |
Path | Packages | |||
---|---|---|---|---|
M | tests/test-copies-in-changeset.t (23 lines) |
Commit | Parents | Author | Summary | Date |
---|---|---|---|---|
Martin von Zweigbergk | May 10 2019, 1:23 PM |
Status | Author | Revision | |
---|---|---|---|
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz | ||
Closed | martinvonz |
$ cat >> $HGRCPATH << EOF | $ cat >> $HGRCPATH << EOF | ||||
> [experimental] | > [experimental] | ||||
> copies.write-to=changeset-only | > copies.write-to=changeset-only | ||||
> copies.read-from=changeset-only | > copies.read-from=changeset-only | ||||
> [alias] | > [alias] | ||||
> changesetcopies = log -r . -T 'files: {files} | > changesetcopies = log -r . -T 'files: {files} | ||||
> {extras % "{ifcontains("copies", key, "{key}: {value}\n")}"}' | > {extras % "{ifcontains("copies", key, "{key}: {value}\n")}"}' | ||||
> showcopies = log -r . -T '{file_copies % "{source} -> {name}\n"}' | > showcopies = log -r . -T '{file_copies % "{source} -> {name}\n"}' | ||||
> [extensions] | |||||
> rebase = | |||||
> EOF | > EOF | ||||
Check that copies are recorded correctly | Check that copies are recorded correctly | ||||
$ hg init repo | $ hg init repo | ||||
$ cd repo | $ cd repo | ||||
$ echo a > a | $ echo a > a | ||||
$ hg add a | $ hg add a | ||||
a | a | ||||
$ hg showcopies | $ hg showcopies | ||||
$ hg showcopies --config experimental.copies.read-from=compatibility | $ hg showcopies --config experimental.copies.read-from=compatibility | ||||
a -> k | a -> k | ||||
$ hg showcopies --config experimental.copies.read-from=filelog-only | $ hg showcopies --config experimental.copies.read-from=filelog-only | ||||
a -> k | a -> k | ||||
$ cd .. | $ cd .. | ||||
Test rebasing a commit with copy information | |||||
$ hg init rebase-rename | |||||
$ cd rebase-rename | |||||
$ echo a > a | |||||
$ hg ci -Aqm 'add a' | |||||
$ echo a2 > a | |||||
$ hg ci -m 'modify a' | |||||
$ hg co -q 0 | |||||
$ hg mv a b | |||||
$ hg ci -qm 'rename a to b' | |||||
$ hg rebase -d 1 --config rebase.experimental.inmemory=yes | |||||
rebasing 2:55d0b405c1b2 "rename a to b" (tip) | |||||
merging a and b to b | |||||
saved backup bundle to $TESTTMP/rebase-rename/.hg/strip-backup/55d0b405c1b2-78df867e-rebase.hg | |||||
BROKEN: should show the rename | |||||
$ hg st --change . --copies | |||||
A b | |||||
R a | |||||
$ cd .. |