format-patch: Produce better output with --inline or --attach
[gitweb.git] / git-pull.sh
index bf0c2985af875cdb7b2c64998390dbee908ff14c..75c36100a2f858bcf2663d2b4560654787963175 100755 (executable)
@@ -107,6 +107,11 @@ error_on_no_merge_candidates () {
 }
 
 test true = "$rebase" && {
+       git update-index --ignore-submodules --refresh &&
+       git diff-files --ignore-submodules --quiet &&
+       git diff-index --ignore-submodules --cached --quiet HEAD -- ||
+       die "refusing to pull with rebase: your working tree is not up-to-date"
+
        . git-parse-remote &&
        origin="$1"
        test -z "$origin" && origin=$(get_default_remote)
@@ -116,7 +121,7 @@ test true = "$rebase" && {
                "refs/remotes/$origin/$reflist" 2>/dev/null)"
 }
 orig_head=$(git rev-parse --verify HEAD 2>/dev/null)
-git-fetch --update-head-ok "$@" || exit 1
+git fetch --update-head-ok "$@" || exit 1
 
 curr_head=$(git rev-parse --verify HEAD 2>/dev/null)
 if test "$curr_head" != "$orig_head"