mirror of
https://github.com/git/git.git
synced 2024-11-25 02:44:48 +08:00
7bd93c1c62
A minor fix that eliminates usage of "2>/dev/null" when --quiet or -q has already been implemented. Signed-off-by: Dan Loewenherz <daniel.loewenherz@yale.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
55 lines
944 B
Bash
Executable File
55 lines
944 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Copyright (c) 2005 Linus Torvalds
|
|
# Copyright (c) 2005 Junio C Hamano
|
|
#
|
|
# Resolve two trees, using enhanced multi-base read-tree.
|
|
|
|
# The first parameters up to -- are merge bases; the rest are heads.
|
|
bases= head= remotes= sep_seen=
|
|
for arg
|
|
do
|
|
case ",$sep_seen,$head,$arg," in
|
|
*,--,)
|
|
sep_seen=yes
|
|
;;
|
|
,yes,,*)
|
|
head=$arg
|
|
;;
|
|
,yes,*)
|
|
remotes="$remotes$arg "
|
|
;;
|
|
*)
|
|
bases="$bases$arg "
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# Give up if we are given two or more remotes -- not handling octopus.
|
|
case "$remotes" in
|
|
?*' '?*)
|
|
exit 2 ;;
|
|
esac
|
|
|
|
# Give up if this is a baseless merge.
|
|
if test '' = "$bases"
|
|
then
|
|
exit 2
|
|
fi
|
|
|
|
git update-index -q --refresh
|
|
git read-tree -u -m --aggressive $bases $head $remotes || exit 2
|
|
echo "Trying simple merge."
|
|
if result_tree=$(git write-tree 2>/dev/null)
|
|
then
|
|
exit 0
|
|
else
|
|
echo "Simple merge failed, trying Automatic merge."
|
|
if git-merge-index -o git-merge-one-file -a
|
|
then
|
|
exit 0
|
|
else
|
|
exit 1
|
|
fi
|
|
fi
|