On Mon, Apr 28, 2014 at 9:36 AM, Marat Radchenko <marat@xxxxxxxxxxxxxxxx> wrote: > Silvola Tuomas wrote >> Hello, >> >> I installed git for windows 1.9.0 but any push operation I tried with it >> produced an error message saying "git: 'http-push' is not a git command". >> Other commands like pull, add, and commit worked just fine. >> At the end of this day I noticed that C:\Program Files >> (x86)\Git\libexec\git-core just didn't have the file git-http-push. There >> were git-http-backend, git-http-fetch and git-imap-send and such but no >> git-http-push. >> >> I resolved my issue by uninstalling 1.9.0, installing an older version >> instead (1.8.1.2; this is when push started working) and 1.9.0 right on >> top of the older version. Now git push command works as expected. >> >> Br, >> Tuomas Silvola > > From Makefile: > > curl_check := $(shell (echo 070908; curl-config --vernum) 2>/dev/null | > sort -r | sed -ne 2p) > ifeq "$(curl_check)" "070908" > ifndef NO_EXPAT > PROGRAM_OBJS += http-push.o > endif > endif > > if there's no curl-config, http-push.c is silently skipped. This check also > doesn't play with cross-compiling when you cannot call curl-config because > it is for other arch. > > There's also a mystic git-http-push$X that is not referenced from anywhere. We're using Curl 7.30.0 in msysGit (and thus also Git for Windows), so we should be able to include it. However, we do not have curl-config installed. Looking at 08900987 ("Decide whether to build http-push in the Makefile"), that commit is from 2005, so it seems we've broken something. Further, looking a bit at our curl build-script, we don't seem to to install curl-config. HOWEVER, 37e42ab ("curl: update to 7.28.1 and enable ipv6"), dated 1. Feb 2013 adds a function to remove curl-config. Pat, why is this? My knee-jerk suspicion would be that it's because it's a stale curl-config from a previous install (that *did* install it). However, it doesn't seem like the mingw32 Makefile (the one you get without running configure, it seems) even tries to build curl-config. In fact, it seems this is simply built by configure itself. Which we don't run, again since 37e42ab ("curl: update to 7.28.1 and enable ipv6"). So it seems that 08900987 ("Decide whether to build http-push in the Makefile") makes a bad assumption about the availability of curl-config on new libcurl installations; it's not present on "stock" Windows builds. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html