Thread (21 messages) flat view 21 messages, 8 authors, 2016-06-15

Re: [PATCH] user-manual: add advanced topic "bisecting merges"

From: Ralf Wildenhues <hidden>
Date: 2016-06-15 22:43:46

Hello Steffen,

A couple of language nits:

* Steffen Prohaska wrote on Sun, Nov 04, 2007 at 10:16:13AM CET:
+Suppose that on the upper development line, the meaning of one
+of the functions existed at Z was changed at commit X.  The
s/functions/& that/
+commits from Z leading to A change both the function's
+implementation and all calling sites that existed at Z, as well
+as new calling sites they add, to be consistent.  There is no
+bug at A.
[...]
+You merge to create C.  There is no textual conflict with this
+three way merge, and the result merges cleanly.  You bisect
+this, because you found D is bad and you know Z was good.  Your
+bisect will find that C (merge) is broken.  Understandably so,
+as at C, the new calling site of the function added by the lower
+branch is not converted to the new semantics, while all the
+other calling sites that already existed at Z would have been
+converted by the merge.  The new calling site has semantic
+adjustment needed, but you do not know that yet.  You need to
+find out that is the cause of the breakage by looking at the
s/that/that that/
+merge commit C and the history leading to it.
[...]
+If you linearlize the history by rebasing the lower branch on
+top of upper, instead of merging, the bug becomes much easier to
s/upper/the &/
+find and understand.  Your history would instead be:
[...]

Cheers,
Ralf
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help