##// END OF EJS Templates
largefiles: restore standins according to restored dirstate...
largefiles: restore standins according to restored dirstate Before this patch, standins are restored from the NEW parent of the working directory at "hg rollback", and this causes: - standins removed in the rollback-ed revision are restored, and become orphan, because they are already marked as "R" in the restored dirstate and expected to be unlinked - standins added in the rollback-ed revision are left as they were before rollback, because they are not included in the new parent (this may not be so serious) This patch replaces the "merge.update" invocation with a specific implementation to restore standins according to restored dirstate. This is also the preparation to centralize the logic of updating largefiles into the function wrapping "merge.update" in the subsequent patch. After that patch, "merge.update" will also update largefiles in the working directory and be redundant for restoring standins only.

File last commit:

r20249:dc515784 default
r22285:85bded43 default
Show More
test-rebase-pull.t
167 lines | 2.7 KiB | text/troff | Tads3Lexer
/ tests / test-rebase-pull.t
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cat >> $HGRCPATH <<EOF
> [extensions]
> rebase=
>
> [alias]
> tglog = log -G --template "{rev}: '{desc}' {branches}\n"
> EOF
$ hg init a
$ cd a
$ echo C1 > C1
$ hg ci -Am C1
adding C1
$ echo C2 > C2
$ hg ci -Am C2
adding C2
$ cd ..
$ hg clone a b
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg clone a c
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd b
$ echo L1 > L1
$ hg ci -Am L1
adding L1
$ cd ../a
$ echo R1 > R1
$ hg ci -Am R1
adding R1
$ cd ../b
Now b has one revision to be pulled from a:
$ hg pull --rebase
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 pulling from $TESTTMP/a (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608 searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
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
@ 3: 'L1'
|
o 2: 'R1'
|
o 1: 'C2'
|
o 0: 'C1'
Re-run:
$ hg pull --rebase
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 pulling from $TESTTMP/a (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608 searching for changes
no changes found
Invoke pull --rebase and nothing to rebase:
$ cd ../c
Matt Mackall
rebase: move bookmarks as needed with pull --rebase (issue3285)
r16228 $ hg book norebase
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ hg pull --rebase
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 pulling from $TESTTMP/a (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608 searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
Mads Kiilerich
rebase: improve error message for --base being empty or causing emptiness...
r20249 nothing to rebase - working directory parent is already an ancestor of destination 77ae9631bcca
Adrian Buehlmann
tests: unify test-rebase*
r12608 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Matt Mackall
rebase: move bookmarks as needed with pull --rebase (issue3285)
r16228 updating bookmark norebase
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog -l 1
@ 2: 'R1'
|
pull --rebase --update should ignore --update:
$ hg pull --rebase --update
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 pulling from $TESTTMP/a (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608 searching for changes
no changes found
pull --rebase doesn't update if nothing has been pulled:
$ hg up -q 1
$ hg pull --rebase
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 pulling from $TESTTMP/a (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608 searching for changes
no changes found
$ hg tglog -l 1
o 2: 'R1'
|
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..
Pierre-Yves David
rebase: fix pull --rev options clashing with --rebase (issue3619)...
r17988
pull --rebase works when a specific revision is pulled (issue3619)
$ cd a
$ hg tglog
@ 2: 'R1'
|
o 1: 'C2'
|
o 0: 'C1'
$ echo R2 > R2
$ hg ci -Am R2
adding R2
$ echo R3 > R3
$ hg ci -Am R3
adding R3
$ cd ../c
$ hg tglog
o 2: 'R1'
|
@ 1: 'C2'
|
o 0: 'C1'
$ echo L1 > L1
$ hg ci -Am L1
adding L1
created new head
$ hg pull --rev tip --rebase
Kevin Bullock
tests: fix some slash-based Windows failures
r18108 pulling from $TESTTMP/a (glob)
Pierre-Yves David
rebase: fix pull --rev options clashing with --rebase (issue3619)...
r17988 searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files
saved backup bundle to $TESTTMP/c/.hg/strip-backup/ff8d69a621f9-backup.hg (glob)
$ hg tglog
@ 5: 'L1'
|
o 4: 'R3'
|
o 3: 'R2'
|
o 2: 'R1'
|
o 1: 'C2'
|
o 0: 'C1'