sapling/eden/scm/tests/test-merge-conflict-count.t
Adam Simpkins ab3a7cb21f Move fb-mercurial sources into an eden/scm subdirectory.
Summary:
In preparation for merging fb-mercurial sources to the Eden repository,
move everything from the top-level directory into an `eden/scm`
subdirectory.
2019-11-13 16:04:48 -08:00

86 lines
2.5 KiB
Raku

$ enable amend rebase
$ setconfig merge.printcandidatecommmits=True
Encountering a merge conflict prints the number of textual conflicts in each file:
$ newrepo
$ hg debugdrawdag <<'EOS'
> e
> | # "b" has two conflicts between c and d:
> c d # b/b = 1\n2\n3\n4\n5\n6\n7\n8
> |/ # c/b = b\n2\n3\n4\n5\nq\n7\n8
> b # d/b = 0\n2\n3\n4\n5\n9\n7\n8
> |
> | # "a" has two conflicts between c and d:
> | # c/a = one
> a # d/a = two
> EOS
$ hg rebase -r d -d e
rebasing 211accd27e10 "d" (d)
merging a
merging b
warning: 1 conflicts while merging a! (edit, then use 'hg resolve --mark')
1 commits might have introduced this conflict:
- [21906429c027] c
warning: 2 conflicts while merging b! (edit, then use 'hg resolve --mark')
1 commits might have introduced this conflict:
- [21906429c027] c
unresolved conflicts (see hg resolve, then hg rebase --continue)
[1]
$ cat b
<<<<<<< dest: 2c5d04f1a41f e tip - test: e
b
=======
0
>>>>>>> source: 211accd27e10 d - test: d
2
3
4
5
<<<<<<< dest: 2c5d04f1a41f e tip - test: e
q
=======
9
>>>>>>> source: 211accd27e10 d - test: d
7
8 (no-eol)
$ cat c
c (no-eol)
A merge conflict prints the possible conflicting commits:
$ newrepo
$ hg debugdrawdag <<'EOS'
> j
> | # d conflicts with c and h. e changed the file but doesn't
> i # conflict. We'll see that it gets included in the list as
> | # the algorithm isn't smart enough yet to know that.
> h # b/b = 1\n2\n3\n4\n5\n6\n7\n8
> | # c/b = b\n2\n3\n4\n5\nq\n7\n8
> g # d/b = 0\n2\n3\n4\n5\n9\n7\n8
> | # e/b = b\n2\n3\n4\n5\nq\n7\n8\nnot_conflicting
> f # h/b = c\n2\n3\n4\n5\nq\n7\n8\nnot_conflicting
> |
> e
> |
> c d
> |/
> b
> |
> | # "a" has two conflicts between g and d:
> | # g/a = one
> a # d/a = two
> EOS
$ hg rebase -r d -d j
rebasing 211accd27e10 "d" (d)
merging a
merging b
warning: 1 conflicts while merging a! (edit, then use 'hg resolve --mark')
1 commits might have introduced this conflict:
- [395beecc0ab6] g
warning: 2 conflicts while merging b! (edit, then use 'hg resolve --mark')
3 commits might have introduced this conflict:
- [0942ca9aff3d] h
- [3ebd0a462491] e
- [3e5843b4b236] c
unresolved conflicts (see hg resolve, then hg rebase --continue)
[1]
=======