Show More
@@ -2750,15 +2750,15 b' def update(ui, repo, node=None, rev=None' | |||||
2750 | tip of the current branch if none is specified. |
|
2750 | tip of the current branch if none is specified. | |
2751 | See 'hg help dates' for a list of formats valid for -d/--date. |
|
2751 | See 'hg help dates' for a list of formats valid for -d/--date. | |
2752 |
|
2752 | |||
2753 |
If there are no outstanding changes in the working directory |
|
2753 | If there are no outstanding changes in the working directory, the | |
2754 | there is a linear relationship between the current version and the |
|
2754 | result is the requested version. | |
2755 | requested version, the result is the requested version. |
|
2755 | ||
2756 |
|
2756 | If the requested version is a descendant of the working directory | ||
2757 | To merge the working directory with another revision, use the |
|
2757 | and there are outstanding changes, those changes will be merged | |
2758 | merge command. |
|
2758 | into the result. | |
2759 |
|
2759 | |||
2760 |
By default, update will refuse to run if |
|
2760 | By default, update will refuse to run if there are outstanding | |
2761 | discarding local changes. |
|
2761 | changes and the update spans branches. | |
2762 | """ |
|
2762 | """ | |
2763 | if rev and node: |
|
2763 | if rev and node: | |
2764 | raise util.Abort(_("please specify just one revision")) |
|
2764 | raise util.Abort(_("please specify just one revision")) |
@@ -364,8 +364,11 b' def update(repo, node, branchmerge, forc' | |||||
364 | raise util.Abort(_("there is nothing to merge, just use " |
|
364 | raise util.Abort(_("there is nothing to merge, just use " | |
365 | "'hg update' or look at 'hg heads'")) |
|
365 | "'hg update' or look at 'hg heads'")) | |
366 | elif not (overwrite or branchmerge): |
|
366 | elif not (overwrite or branchmerge): | |
367 | raise util.Abort(_("update spans branches, use 'hg merge' " |
|
367 | if wc.files() or wc.deleted(): | |
368 | "or 'hg update -C' to lose changes")) |
|
368 | raise util.Abort(_("update spans branches, use 'hg merge' " | |
|
369 | "or 'hg update -C' to lose changes")) | |||
|
370 | # Allow jumping branches if there are no changes | |||
|
371 | overwrite = True | |||
369 | if branchmerge and not forcemerge: |
|
372 | if branchmerge and not forcemerge: | |
370 | if wc.files() or wc.deleted(): |
|
373 | if wc.files() or wc.deleted(): | |
371 | raise util.Abort(_("outstanding uncommitted changes")) |
|
374 | raise util.Abort(_("outstanding uncommitted changes")) |
@@ -12,9 +12,14 b' hg commit -m"comment #1" -d "1000000 0"' | |||||
12 | hg update 0 |
|
12 | hg update 0 | |
13 | rm b |
|
13 | rm b | |
14 | hg commit -A -m"comment #2" -d "1000000 0" |
|
14 | hg commit -A -m"comment #2" -d "1000000 0" | |
|
15 | mv a c | |||
15 | # in theory, we shouldn't need the "-y" below, but it prevents |
|
16 | # in theory, we shouldn't need the "-y" below, but it prevents | |
16 | # this test from hanging when "hg update" erroneously prompts the |
|
17 | # this test from hanging when "hg update" erroneously prompts the | |
17 | # user for "keep or delete" |
|
18 | # user for "keep or delete" | |
|
19 | echo % should abort | |||
|
20 | hg update -y 1 | |||
|
21 | mv c a | |||
|
22 | echo % should succeed | |||
18 | hg update -y 1 |
|
23 | hg update -y 1 | |
19 |
|
24 | |||
20 | exit 0 |
|
25 | exit 0 |
@@ -1,4 +1,7 b'' | |||||
1 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
1 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
2 | removing b |
|
2 | removing b | |
3 | created new head |
|
3 | created new head | |
|
4 | % should abort | |||
4 | abort: update spans branches, use 'hg merge' or 'hg update -C' to lose changes |
|
5 | abort: update spans branches, use 'hg merge' or 'hg update -C' to lose changes | |
|
6 | % should succeed | |||
|
7 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
General Comments 0
You need to be logged in to leave comments.
Login now