X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=git-pull.sh;h=664fe34419e9aeef1af8fac820cc423a641f5525;hb=dd718365cccfddd7d5992a40296de50e7cabdfc8;hp=809e537a4d81233966aad23df11c13931d6250c1;hpb=2d3cfd77ad5305c132f7b23c192ae6c327443c95;p=git.git diff --git a/git-pull.sh b/git-pull.sh index 809e537a4..664fe3441 100755 --- a/git-pull.sh +++ b/git-pull.sh @@ -107,9 +107,9 @@ error_on_no_merge_candidates () { } test true = "$rebase" && { - git update-index --refresh && - git diff-files --quiet && - git diff-index --cached --quiet HEAD -- || + 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 && @@ -121,10 +121,10 @@ 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" +if test -n "$orig_head" && test "$curr_head" != "$orig_head" then # The fetch involved updating the current branch. @@ -172,7 +172,7 @@ esac if test -z "$orig_head" then - git update-ref -m "initial pull" HEAD $merge_head "" && + git update-ref -m "initial pull" HEAD $merge_head "$curr_head" && git read-tree --reset -u HEAD || exit 1 exit fi