equal
deleted
inserted
replaced
25 error, |
25 error, |
26 formatter, |
26 formatter, |
27 graphmod, |
27 graphmod, |
28 match as matchmod, |
28 match as matchmod, |
29 mdiff, |
29 mdiff, |
|
30 merge, |
30 patch, |
31 patch, |
31 pathutil, |
32 pathutil, |
32 pycompat, |
33 pycompat, |
33 revset, |
34 revset, |
34 revsetlang, |
35 revsetlang, |
69 if limit <= 0: |
70 if limit <= 0: |
70 raise error.Abort(_(b'limit must be positive')) |
71 raise error.Abort(_(b'limit must be positive')) |
71 else: |
72 else: |
72 limit = None |
73 limit = None |
73 return limit |
74 return limit |
|
75 |
|
76 |
|
77 def diff_parent(ctx): |
|
78 """get the context object to use as parent when diffing |
|
79 |
|
80 |
|
81 If diff.merge is enabled, an overlayworkingctx of the auto-merged parents will be returned. |
|
82 """ |
|
83 repo = ctx.repo() |
|
84 if repo.ui.configbool(b"diff", b"merge") and ctx.p2().node() != nullid: |
|
85 # avoid cycle context -> subrepo -> cmdutil -> logcmdutil |
|
86 from . import context |
|
87 |
|
88 wctx = context.overlayworkingctx(repo) |
|
89 wctx.setbase(ctx.p1()) |
|
90 with repo.ui.configoverride( |
|
91 { |
|
92 ( |
|
93 b"ui", |
|
94 b"forcemerge", |
|
95 ): b"internal:merge3-lie-about-conflicts", |
|
96 }, |
|
97 b"merge-diff", |
|
98 ): |
|
99 repo.ui.pushbuffer() |
|
100 merge.merge(ctx.p2(), wc=wctx) |
|
101 repo.ui.popbuffer() |
|
102 return wctx |
|
103 else: |
|
104 return ctx.p1() |
74 |
105 |
75 |
106 |
76 def diffordiffstat( |
107 def diffordiffstat( |
77 ui, |
108 ui, |
78 repo, |
109 repo, |