##// END OF EJS Templates
copies: add config option for writing copy metadata to file and/or changset...
copies: add config option for writing copy metadata to file and/or changset This introduces a config option that lets you choose to write copy metadata to the changeset extras instead of to filelog. There's also an option to write it to both places. I imagine that may possibly be useful when transitioning an existing repo. The copy metadata is stored as two fields in extras: one for copies since p1 and one for copies since p2. I may need to add more information later in order to make copy tracing faster. Specifically, I'm thinking out recording which files were added or removed so that copies._chaincopies() doesn't have to look at the manifest for that. But that would just be an optimization and that can be added once we know if it's necessary. I have also considered saving space by using replacing the destination file path by an index into the "files" list, but that can also be changed later (but before the feature is ready to release). Differential Revision: https://phab.mercurial-scm.org/D6183

File last commit:

r35722:41ef02ba default
r42317:0e41f40b default
Show More
test-commit-unresolved.t
141 lines | 3.4 KiB | text/troff | Tads3Lexer
/ tests / test-commit-unresolved.t
Nicolas Dumazet
tests: unify test-commit-unresolved
r11804 $ addcommit () {
> echo $1 > $1
> hg add $1
> hg commit -d "${2} 0" -m $1
> }
$ commit () {
> hg commit -d "${2} 0" -m $1
> }
$ hg init a
$ cd a
$ addcommit "A" 0
$ addcommit "B" 1
$ echo "C" >> A
$ commit "C" 2
$ hg update -C 0
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ echo "D" >> A
$ commit "D" 3
created new head
Pulkit Goyal
merge: add `--abort` flag which can abort the merge...
r35722 State before the merge
$ hg status
$ hg id
e45016d2b3d3 tip
$ hg summary
parent: 3:e45016d2b3d3 tip
D
branch: default
commit: (clean)
update: 2 new changesets, 2 branch heads (merge)
phases: 4 draft
Testing the abort functionality first in case of conflicts
$ hg merge --abort
abort: no merge in progress
[255]
$ hg merge
merging A
warning: conflicts while merging A! (edit, then use 'hg resolve --mark')
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg merge --abort e4501
abort: cannot specify a node with --abort
[255]
$ hg merge --abort --rev e4501
abort: cannot specify both --rev and --abort
[255]
$ hg merge --abort
aborting the merge, updating back to e45016d2b3d3
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
Checking that we got back in the same state
$ hg status
? A.orig
$ hg id
e45016d2b3d3 tip
$ hg summary
parent: 3:e45016d2b3d3 tip
D
branch: default
commit: 1 unknown (clean)
update: 2 new changesets, 2 branch heads (merge)
phases: 4 draft
Nicolas Dumazet
tests: unify test-commit-unresolved
r11804 Merging a conflict araises
$ hg merge
merging A
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging A! (edit, then use 'hg resolve --mark')
Nicolas Dumazet
tests: unify test-commit-unresolved
r11804 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
Pulkit Goyal
merge: add `--abort` flag which can abort the merge...
r35722 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
Matt Mackall
tests: add exit codes to unified tests
r12316 [1]
Nicolas Dumazet
tests: unify test-commit-unresolved
r11804
Correct the conflict without marking the file as resolved
$ echo "ABCD" > A
$ hg commit -m "Merged"
timeless
localrepo: use single quotes in use warning
r29975 abort: unresolved merge conflicts (see 'hg help resolve')
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-commit-unresolved
r11804
Mark the conflict as resolved and commit
$ hg resolve -m A
Pierre-Yves David
resolve: add parenthesis around "no more unresolved files" message...
r21947 (no more unresolved files)
Nicolas Dumazet
tests: unify test-commit-unresolved
r11804 $ hg commit -m "Merged"
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
Siddharth Agarwal
localrepo.commit: check all files for resolve state (issue4972)...
r27102 Test that if a file is removed but not marked resolved, the commit still fails
(issue4972)
$ hg up ".^"
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg merge 2
merging A
warning: conflicts while merging A! (edit, then use 'hg resolve --mark')
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
Pulkit Goyal
merge: add `--abort` flag which can abort the merge...
r35722 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
Siddharth Agarwal
localrepo.commit: check all files for resolve state (issue4972)...
r27102 [1]
$ hg rm --force A
$ hg commit -m merged
timeless
localrepo: use single quotes in use warning
r29975 abort: unresolved merge conflicts (see 'hg help resolve')
Siddharth Agarwal
localrepo.commit: check all files for resolve state (issue4972)...
r27102 [255]
$ hg resolve -ma
(no more unresolved files)
$ hg commit -m merged
created new head
Pulkit Goyal
merge: add `--abort` flag which can abort the merge...
r35722 Testing the abort functionality in case of no conflicts
$ hg update -C 0
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ addcommit "E" 4
created new head
$ hg id
68352a18a7c4 tip
$ hg merge -r 4
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ hg merge --preview --abort
abort: cannot specify --preview with --abort
[255]
$ hg merge --abort
aborting the merge, updating back to 68352a18a7c4
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg id
68352a18a7c4 tip
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..