[PATCH] drm-tip: Docs for handling silent conflicts

Daniel Vetter daniel.vetter at ffwll.ch
Thu Dec 13 08:25:25 UTC 2018


On Thu, Dec 13, 2018 at 7:56 AM Rodrigo Vivi <rodrigo.vivi at intel.com> wrote:
>
> On Thu, Dec 13, 2018 at 12:22:38AM +0100, Daniel Vetter wrote:
> > Boris needs this.
> >
> > v2: Improve the text for all cases that need manual fixups.
> >
> > v3: Actually git add the additional changes
> >
> > Cc: Rob Clark <robdclark at gmail.com>
> > Cc: Boris Brezillon <boris.brezillon at bootlin.com>
> > Reviewed-by: Boris Brezillon <boris.brezillon at bootlin.com> (v2)
> > Tested-by: Boris Brezillon <boris.brezillon at bootlin.com> (v2)
> > Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> > ---
> >  drm-tip.rst | 46 +++++++++++++++++++++++++++++++++++++++++++++-
> >  1 file changed, 45 insertions(+), 1 deletion(-)
> >
> > diff --git a/drm-tip.rst b/drm-tip.rst
> > index 002246f573e3..b09a108da32d 100644
> > --- a/drm-tip.rst
> > +++ b/drm-tip.rst
> > @@ -128,7 +128,51 @@ best way to go about this is:
> >
> >         $ git diff | dim cat-to-fixup
> >
> > -   And finally rebuild the integration tree, which should now go through
> > +
> > +Anytime you add or change a manual merge fixup please inform the maintainers of
> > +both involved trees so that they are aware of the situation and can consider
> > +resolving the conflict permantly with a backmerge or pull.
> > +3. Finally rebuild the integration tree, which should now go through
> >     smoothly, at least for this merge::
> >
> >         $ dim rebuild-tip
> > +
> > +Anytime you add or change a manual merge fixup please inform the maintainers of
> > +both involved trees so that they are aware of the situation and can consider
> > +resolving the conflict permantly with a backmerge or pull.
> > +
> > +Fixing Silent Conflicts
> > +-----------------------
> > +
> > +A really annoying case is when a merge has a silent conflict, i.e. git merge
> > +succeeds, but the resulting source fails to compile or run. Often this happens
> > +when one branch changes a function or structure, while a 2nd branch adds a new
> > +user. The important part is to make sure we supply the fixup patch for the right
> > +merge commit.
> > +
> > +1. Identify the merge that breaks the build.
> > +
> > +2. Rebuild drm-tip in interactive mode, and stop until the broken merge has been
> > +   done::
> > +
> > +      $ dim -i rebuild-tip
>
> Cool! I had never noticed this interactive mode there.

dim is Great (tm)

> > +
> > +   Stop the rebuilding of drm-tip by hitting ^C.
>
> Maybe the interactive mode could be really interactive
> providing option (n)ext or (s)top here? or something like that....
>
> Anyway, doc is good already. Thanks for that
>
> Reviewed-by: Rodrigo Vivi <rodrigo.vivi at intel.com>

Thanks for review, pushed.
-Daniel

>
> > +
> > +3. Resolve the conflict normally, but don't stage it or commit it in any
> > +   fashion. Check that the resolution looks correct::
> > +
> > +       $ git diff
> > +
> > +   Of course also make sure it actually builds/works. Then store it as a manual fixup patch::
> > +
> > +       $ git diff | dim cat-to-fixup
> > +
> > +4. Finally rebuild the integration tree, which should now result in a working
> > +   tree with no broken merges::
> > +
> > +       $ dim rebuild-tip
> > +
> > +Anytime you add or change a manual merge fixup please inform the maintainers of
> > +both involved trees so that they are aware of the situation and can consider
> > +resolving the conflict permantly with a backmerge or pull.
> > --
> > 2.20.0.rc1
> >
> > _______________________________________________
> > dim-tools mailing list
> > dim-tools at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dim-tools



-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the dim-tools mailing list