##// 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-merge9.t
94 lines | 1.7 KiB | text/troff | Tads3Lexer
Pradeepkumar Gayam
tests: unify test-merge9
r11982 test that we don't interrupt the merge session if
a file-level merge failed
$ hg init repo
$ cd repo
$ echo foo > foo
$ echo a > bar
$ hg ci -Am 'add foo'
adding bar
adding foo
$ hg mv foo baz
$ echo b >> bar
$ echo quux > quux1
$ hg ci -Am 'mv foo baz'
adding quux1
$ hg up -qC 0
$ echo >> foo
$ echo c >> bar
$ echo quux > quux2
$ hg ci -Am 'change foo'
adding quux2
created new head
test with the rename on the remote side
$ HGMERGE=false hg merge
merging bar
Siddharth Agarwal
merge.mergestate: perform all premerges before any merges (BC)...
r26618 merging foo and baz to baz
Pradeepkumar Gayam
tests: unify test-merge9
r11982 merging bar failed!
1 files updated, 1 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]
Pradeepkumar Gayam
tests: unify test-merge9
r11982 $ hg resolve -l
U bar
R baz
test with the rename on the local side
$ hg up -C 1
3 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ HGMERGE=false hg merge
merging bar
Siddharth Agarwal
merge.mergestate: perform all premerges before any merges (BC)...
r26618 merging baz and foo to baz
Pradeepkumar Gayam
tests: unify test-merge9
r11982 merging bar failed!
1 files updated, 1 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]
Pradeepkumar Gayam
tests: unify test-merge9
r11982
show unresolved
$ hg resolve -l
U bar
R baz
unmark baz
$ hg resolve -u baz
show
$ hg resolve -l
U bar
U baz
$ hg st
M bar
M baz
M quux2
? bar.orig
re-resolve baz
$ hg resolve baz
merging baz and foo to baz
after resolve
$ hg resolve -l
U bar
R baz
resolve all warning
$ hg resolve
Nathan Goldbaum
resolve: report no argument warning using a hint...
r21940 abort: no files or directories specified
timeless@mozdev.org
resolve: consistently describe re-merge + unresolved
r26352 (use --all to re-merge all unresolved files)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Pradeepkumar Gayam
tests: unify test-merge9
r11982
resolve all
$ hg resolve -a
merging bar
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging bar! (edit, then use 'hg resolve --mark')
Matt Mackall
tests: add exit codes to unified tests
r12316 [1]
Pradeepkumar Gayam
tests: unify test-merge9
r11982
after
$ hg resolve -l
U bar
R baz
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..