[PATCH] Introducing cg-xxdiff for conflict resolution
From: Martin Langhoff <hidden>
Date: 2016-06-15 22:42:35
Subsystem:
kernel build + files below scripts/ (unless maintained elsewhere), the rest · Maintainers:
Nathan Chancellor, Nicolas Schier, Linus Torvalds
This is a bit of a crude but really useful shortcut for conflict resolution. The name is bad, but matches git-xxdiff which has been around for like... ages As Cogito doesn't make use of the index during merges/applies, cg-xxdiff is somewhat more brittle and cannot not help during conflict resolution when using cg-patch. Signed-off-by: Martin Langhoff <redacted> --- Makefile | 3 ++- cg-xxdiff | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletions(-)
diff --git a/Makefile b/Makefile
index ba9bf9a..dc21702 100644
--- a/Makefile
+++ b/Makefile@@ -18,7 +18,8 @@ SCRIPT= cg-object-id cg-add cg-admin-lso cg-export cg-help cg-init cg-log cg-merge cg-mkpatch cg-patch \ cg-fetch cg-restore cg-rm cg-seek cg-status cg-tag cg-tag-ls cg-update \ cg cg-admin-ls cg-push cg-branch-chg cg-admin-cat cg-clean \ - cg-admin-setuprepo cg-switch cg-mv cg-admin-rewritehist cg-tag-show + cg-admin-setuprepo cg-switch cg-mv cg-admin-rewritehist cg-tag-show \ + cg-xxdiff LIB_SCRIPT=cg-Xlib cg-Xmergefile cg-Xfetchprogress cg-Xfollowrenames
diff --git a/cg-xxdiff b/cg-xxdiff
new file mode 100755
index 0000000..7a1a863
--- /dev/null
+++ b/cg-xxdiff@@ -0,0 +1,33 @@ +#!/bin/sh + +USAGE='<path-with-conflict>' +SUBDIRECTORY_OK=No +. git-sh-setup + +FILE=$1 + +# Sanity checks +if test ! -n "$FILE" +then + echo Need a path + exit 1 +fi + +git cat-file blob `git rev-parse HEAD`:$FILE > $FILE~ours +if test $? -gt 0 +then + echo "Error - $FILE is not tracked by git or does not have a conflict" + exit 1 +fi +echo Written $FILE~ours + +git cat-file blob `git rev-parse FETCH_HEAD`:$FILE > $FILE~branch +if test $? -gt 0 +then + echo "Error - $FILE is not tracked by git or does not have a conflict" + exit 1 +fi +echo Written $FILE~branch +echo Resolved file will be saved as $FILE~merged + +xxdiff -wbB --show-merged-pane --merged-filename $FILE~merged $FILE~ours $FILE~branch
--
1.4.2.rc2.ge1f7