##// END OF EJS Templates
backout: remove unnecessary frobbing of addremove option...
backout: remove unnecessary frobbing of addremove option There's no way for addremove to show up in backout's opts dictionary. It was being set manually because cmdutil.commit expected it to be there (and would throw an exception if it wasn't). This was fixed waaaaaaay back in: changeset: 5829:784073457a0f user: Kirill Smelkov <kirr@mns.spb.ru> date: Thu Jan 10 12:07:18 2008 +0300 summary: cmdutil.commit: extract 'addremove' from opts carefully

File last commit:

r18136:f23dea2b default
r18686:0bca4d31 default
Show More
test-rebase-rename.t
227 lines | 3.9 KiB | text/troff | Tads3Lexer
/ tests / test-rebase-rename.t
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cat >> $HGRCPATH <<EOF
> [extensions]
> graphlog=
> rebase=
>
> [alias]
> tlog = log --template "{rev}: '{desc}' {branches}\n"
> tglog = tlog --graph
> EOF
$ hg init a
$ cd a
$ echo a > a
$ hg ci -Am A
adding a
$ echo b > b
$ hg ci -Am B
adding b
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 $ hg mv b b-renamed
$ hg ci -m 'rename B'
$ hg up -q -C 1
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg mv a a-renamed
$ hg ci -m 'rename A'
created new head
$ hg tglog
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 @ 3: 'rename A'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 | o 2: 'rename B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 o 1: 'B'
|
Adrian Buehlmann
tests: unify test-rebase*
r12608 o 0: 'A'
Rename is tracked:
$ hg tlog -p --git -r tip
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 3: 'rename A'
Adrian Buehlmann
tests: unify test-rebase*
r12608 diff --git a/a b/a-renamed
rename from a
rename to a-renamed
Rebase the revision containing the rename:
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 $ hg rebase -s 3 -d 2
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 @ 3: 'rename A'
|
o 2: 'rename B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
o 1: 'B'
|
o 0: 'A'
Rename is not lost:
$ hg tlog -p --git -r tip
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 3: 'rename A'
Adrian Buehlmann
tests: unify test-rebase*
r12608 diff --git a/a b/a-renamed
rename from a
rename to a-renamed
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136
Rebased revision does not contain information about b (issue3739)
$ hg log -r 3 --debug
changeset: 3:3b905b1064f14ace3ad02353b79dd42d32981655
tag: tip
phase: draft
parent: 2:920a371a5635af23a26a011ca346cecd1cfcb942
parent: -1:0000000000000000000000000000000000000000
manifest: 3:c4a62b2b64593c8fe0523d4c1ba2e243a8bd4dce
user: test
date: Thu Jan 01 00:00:00 1970 +0000
files+: a-renamed
files-: a
extra: branch=default
extra: rebase_source=89af05cb38a281f891c6f5581dd027092da29166
description:
rename A
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cd ..
$ hg init b
$ cd b
$ echo a > a
$ hg ci -Am A
adding a
$ echo b > b
$ hg ci -Am B
adding b
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 $ hg cp b b-copied
$ hg ci -Am 'copy B'
$ hg up -q -C 1
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg cp a a-copied
$ hg ci -m 'copy A'
created new head
$ hg tglog
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 @ 3: 'copy A'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 | o 2: 'copy B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 o 1: 'B'
|
Adrian Buehlmann
tests: unify test-rebase*
r12608 o 0: 'A'
Copy is tracked:
$ hg tlog -p --git -r tip
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 3: 'copy A'
Adrian Buehlmann
tests: unify test-rebase*
r12608 diff --git a/a b/a-copied
copy from a
copy to a-copied
Rebase the revision containing the copy:
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 $ hg rebase -s 3 -d 2
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/b/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 @ 3: 'copy A'
|
o 2: 'copy B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
o 1: 'B'
|
o 0: 'A'
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136
Adrian Buehlmann
tests: unify test-rebase*
r12608 Copy is not lost:
$ hg tlog -p --git -r tip
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136 3: 'copy A'
Adrian Buehlmann
tests: unify test-rebase*
r12608 diff --git a/a b/a-copied
copy from a
copy to a-copied
Siddharth Agarwal
copies: do not track backward copies, only renames (issue3739)...
r18136
Rebased revision does not contain information about b (issue3739)
$ hg log -r 3 --debug
changeset: 3:98f6e6dbf45ab54079c2237fbd11066a5c41a11d
tag: tip
phase: draft
parent: 2:39e588434882ff77d01229d169cdc77f29e8855e
parent: -1:0000000000000000000000000000000000000000
manifest: 3:2232f329d66fffe3930d43479ae624f66322b04d
user: test
date: Thu Jan 01 00:00:00 1970 +0000
files+: a-copied
extra: branch=default
extra: rebase_source=0a8162ff18a8900df8df8ef7ac0046955205613e
description:
copy A
Stefano Tortarolo
rebase: don't mark file as removed if missing in parent's manifest (issue2725)
r13778 $ cd ..
Test rebase across repeating renames:
$ hg init repo
$ cd repo
$ echo testing > file1.txt
$ hg add file1.txt
$ hg ci -m "Adding file1"
$ hg rename file1.txt file2.txt
$ hg ci -m "Rename file1 to file2"
$ echo Unrelated change > unrelated.txt
$ hg add unrelated.txt
$ hg ci -m "Unrelated change"
$ hg rename file2.txt file1.txt
$ hg ci -m "Rename file2 back to file1"
$ hg update -r -2
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ echo Another unrelated change >> unrelated.txt
$ hg ci -m "Another unrelated change"
created new head
$ hg tglog
@ 4: 'Another unrelated change'
|
| o 3: 'Rename file2 back to file1'
|/
o 2: 'Unrelated change'
|
o 1: 'Rename file1 to file2'
|
o 0: 'Adding file1'
$ hg rebase -s 4 -d 3
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-backup.hg (glob)
$ hg diff --stat -c .
unrelated.txt | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..