comparison hgmerge @ 828:7a6acd56cd5a

Hide error message of type command.
author Thomas Arendsen Hein <thomas@intevation.de>
date Thu, 04 Aug 2005 16:56:44 +0100
parents 0902ffece4b4
children 764b0350acb8
comparison
equal deleted inserted replaced
818:eef752151556 828:7a6acd56cd5a
17 17
18 # Back up our file 18 # Back up our file
19 cp "$LOCAL" "$LOCAL.orig" 19 cp "$LOCAL" "$LOCAL.orig"
20 20
21 # Attempt to do a non-interactive merge 21 # Attempt to do a non-interactive merge
22 if type merge > /dev/null ; then 22 if type merge > /dev/null 2>&1; then
23 if merge "$LOCAL" "$BASE" "$OTHER" 2> /dev/null; then 23 if merge "$LOCAL" "$BASE" "$OTHER" 2> /dev/null; then
24 # success! 24 # success!
25 exit 0 25 exit 0
26 fi 26 fi
27 cp "$LOCAL.orig" "$LOCAL" 27 cp "$LOCAL.orig" "$LOCAL"
28 elif type diff3 > /dev/null ; then 28 elif type diff3 > /dev/null 2>&1; then
29 if diff3 -m "$LOCAL.orig" "$BASE" "$OTHER" > "$LOCAL" ; then 29 if diff3 -m "$LOCAL.orig" "$BASE" "$OTHER" > "$LOCAL" ; then
30 # success 30 # success
31 exit 0 31 exit 0
32 fi 32 fi
33 cp "$LOCAL.orig" "$LOCAL" 33 cp "$LOCAL.orig" "$LOCAL"
34 fi 34 fi
35 35
36 if [ -n "$DISPLAY" ]; then 36 if [ -n "$DISPLAY" ]; then
37 # try using kdiff3, which is fairly nice 37 # try using kdiff3, which is fairly nice
38 if type kdiff3 > /dev/null ; then 38 if type kdiff3 > /dev/null 2>&1; then
39 if kdiff3 --auto "$BASE" "$LOCAL" "$OTHER" -o "$LOCAL" ; then 39 if kdiff3 --auto "$BASE" "$LOCAL" "$OTHER" -o "$LOCAL" ; then
40 exit 0 40 exit 0
41 else 41 else
42 exit 1 42 exit 1
43 fi 43 fi
44 fi 44 fi
45 45
46 # try using tkdiff, which is a bit less sophisticated 46 # try using tkdiff, which is a bit less sophisticated
47 if type tkdiff > /dev/null ; then 47 if type tkdiff > /dev/null 2>&1; then
48 if tkdiff "$LOCAL" "$OTHER" -a "$BASE" -o "$LOCAL" ; then 48 if tkdiff "$LOCAL" "$OTHER" -a "$BASE" -o "$LOCAL" ; then
49 exit 0 49 exit 0
50 else 50 else
51 exit 1 51 exit 1
52 fi 52 fi
53 fi 53 fi
54 fi 54 fi
55 55
56 # Attempt to do a merge with $EDITOR 56 # Attempt to do a merge with $EDITOR
57 if type merge > /dev/null ; then 57 if type merge > /dev/null 2>&1; then
58 echo "conflicts detected in $LOCAL" 58 echo "conflicts detected in $LOCAL"
59 merge "$LOCAL" "$BASE" "$OTHER" 2>/dev/null || $EDITOR "$LOCAL" 59 merge "$LOCAL" "$BASE" "$OTHER" 2>/dev/null || $EDITOR "$LOCAL"
60 exit 0 60 exit 0
61 fi 61 fi
62 62
63 if type diff3 > /dev/null ; then 63 if type diff3 > /dev/null 2>&1; then
64 echo "conflicts detected in $LOCAL" 64 echo "conflicts detected in $LOCAL"
65 diff3 -m "$LOCAL.orig" "$BASE" "$OTHER" > "$LOCAL" || $EDITOR "$LOCAL" 65 diff3 -m "$LOCAL.orig" "$BASE" "$OTHER" > "$LOCAL" || $EDITOR "$LOCAL"
66 exit 0 66 exit 0
67 fi 67 fi
68 68
71 rm -rf "$HGTMP" 71 rm -rf "$HGTMP"
72 exit $1 72 exit $1
73 } 73 }
74 74
75 # attempt to manually merge with diff and patch 75 # attempt to manually merge with diff and patch
76 if type diff > /dev/null ; then 76 if type diff > /dev/null 2>&1; then
77 if type patch > /dev/null ; then 77 if type patch > /dev/null 2>&1; then
78 # Remove temporary files even if we get interrupted 78 # Remove temporary files even if we get interrupted
79 trap "cleanup_exit 1" TERM KILL INT QUIT ABRT 79 trap "cleanup_exit 1" TERM KILL INT QUIT ABRT
80 80
81 HGTMP="${TMPDIR-/tmp}/hgmerge.$RANDOM.$RANDOM.$RANDOM.$$" 81 HGTMP="${TMPDIR-/tmp}/hgmerge.$RANDOM.$RANDOM.$RANDOM.$$"
82 (umask 077 && mkdir "$HGTMP") || { 82 (umask 077 && mkdir "$HGTMP") || {