Just explicitly add $(X) to most programs.
[git.git] / git-pull.sh
index 8cf39e7..1f4a05d 100755 (executable)
@@ -6,10 +6,10 @@
 
 . git-sh-setup || die "Not a git archive"
 
-orig_head=$(cat "$GIT_DIR/HEAD") || die "Pulling into a black hole?"
+orig_head=$(git-rev-parse --verify HEAD) || die "Pulling into a black hole?"
 git-fetch --update-head-ok "$@" || exit 1
 
-curr_head=$(cat "$GIT_DIR/HEAD")
+curr_head=$(git-rev-parse --verify HEAD)
 if test "$curr_head" != "$orig_head"
 then
        # The fetch involved updating the current branch.
@@ -24,11 +24,9 @@ then
                die "You need to first update your working tree."
 fi
 
-merge_head=$(sed -e 's/        .*//' "$GIT_DIR"/FETCH_HEAD | tr '\012' ' ')
-merge_name=$(
-    perl -e 'print join("; ", map { chomp; s/^[0-9a-f]*        //; $_ } <>)' \
-    "$GIT_DIR"/FETCH_HEAD
-)
+merge_head=$(sed -e '/ not-for-merge   /d' \
+       -e 's/  .*//' "$GIT_DIR"/FETCH_HEAD | \
+       tr '\012' ' ')
 
 case "$merge_head" in
 '')
@@ -41,6 +39,5 @@ case "$merge_head" in
        ;;
 esac
 
-git-resolve \
-       "$(cat "$GIT_DIR"/HEAD)" \
-       $merge_head "Merge $merge_name"
+merge_name=$(git-fmt-merge-msg <"$GIT_DIR/FETCH_HEAD")
+git-resolve "$curr_head" $merge_head "$merge_name"