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

Daniel Vetter daniel.vetter at ffwll.ch
Wed Dec 12 14:08:28 UTC 2018


Boris needs this.

v2: Improve the text for all cases that need manual fixups.

Cc: Rob Clark <robdclark at gmail.com>
Cc: Boris Brezillon <boris.brezillon at bootlin.com>
Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
---
 drm-tip.rst | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/drm-tip.rst b/drm-tip.rst
index 002246f573e3..e38f59df1e3f 100644
--- a/drm-tip.rst
+++ b/drm-tip.rst
@@ -132,3 +132,35 @@ best way to go about this is:
    smoothly, at least for this merge::
 
        $ dim rebuild-tip
+
+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
+
+   Stop the rebuilding of drm-tip by hitting ^C.
+
+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
-- 
2.20.0.rc1



More information about the igt-dev mailing list