From: Avery Pennarun Date: Thu, 24 Jun 2010 05:53:05 +0000 (-0400) Subject: (Hopefully) fix PATH setting for msysgit. X-Git-Tag: v1.7.11-rc0~176^2~14 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=9c632ea29ccd58a9967690c2670edec31dc468cd;p=git.git (Hopefully) fix PATH setting for msysgit. Reported by Evan Shaw. The problem is that $(git --exec-path) includes a 'git' binary which is incompatible with the one in /usr/bin; if you run it, it gives you an error about libiconv2.dll. You might think we could just add $(git --exec-path) at the *end* of PATH, but then if there are multiple versions of git installed, we could end up with the wrong one; earlier versions used to put git-sh-setup in /usr/bin, so we'd pick up that one before the new one. So now we just set PATH back to its original value right after running git-sh-setup, and we should be okay. --- diff --git a/git-subtree.sh b/git-subtree.sh index 501c6dc2f..935dfca7f 100755 --- a/git-subtree.sh +++ b/git-subtree.sh @@ -29,8 +29,12 @@ rejoin merge the new branch back into HEAD squash merge subtree changes as a single commit " eval $(echo "$OPTS_SPEC" | git rev-parse --parseopt -- "$@" || echo exit $?) + +OPATH=$PATH PATH=$(git --exec-path):$PATH . git-sh-setup +PATH=$OPATH # apparently needed for some versions of msysgit + require_work_tree quiet=