diff --git a/git-checkout.sh b/git-checkout.sh
index 77c25938091b75f51eb3cc5922d67db6333e1e74..580a9e8a233f0a94c84792eba7c3dc653fccf3a0 100755 (executable)
--- a/git-checkout.sh
+++ b/git-checkout.sh
set x "$arg" "$@"
shift
fi
+ case "$1" in
+ --)
+ shift ;;
+ esac
break
;;
esac
# Match the index to the working tree, and do a three-way.
git diff-files --name-only | git update-index --remove --stdin &&
work=`git write-tree` &&
- git read-tree --reset $new &&
- git checkout-index -f -u -q -a &&
+ git read-tree --reset -u $new &&
git read-tree -m -u --aggressive $old $new $work || exit
if result=`git write-tree 2>/dev/null`