git: 'http-push' is not a git command.

2,246 views
Skip to first unread message

datastr...@gmail.com

unread,
Feb 20, 2014, 5:05:55 AM2/20/14
to msy...@googlegroups.com
Hello everybode!

Recently I've downloaded msysgit from http://msysgit.github.io. But i've a problem with pushing new branch to a repo.
I've created new branch, checkout to it and commit. Then when i ran "git push origin master" i got this error:

git: 'http-push' is not a git command. See 'git --help'
fatal: git-http-push failed

I've used a git shell. 
Could you please give me a clue how can I resolve this issue?

Thank you in advance.

Erik Faye-Lund

unread,
Feb 20, 2014, 5:28:41 AM2/20/14
to datastr...@gmail.com, msysGit
On Thu, Feb 20, 2014 at 11:05 AM, <datastr...@gmail.com> wrote:
> Hello everybode!
>
> Recently I've downloaded msysgit from http://msysgit.github.io. But i've a
> problem with pushing new branch to a repo.
> I've created new branch, checkout to it and commit. Then when i ran "git
> push origin master" i got this error:
>
> git: 'http-push' is not a git command. See 'git --help'
> fatal: git-http-push failed
>

First off, I think you installed Git for Windows, and not msysGit.

But interesting. I can reproduce that git http-push isn't present in
my installation of Git for Windows either.

And in msysGit it is, but:

---------------------------
git-http-push.exe - System Error
---------------------------
The program can't start because libcurl-4.dll is missing from your
computer. Try reinstalling the program to fix this problem.
---------------------------
OK
---------------------------

So it seems something's wrong, indeed.

Johannes Schindelin

unread,
Feb 20, 2014, 11:06:49 AM2/20/14
to Erik Faye-Lund, datastr...@gmail.com, msysGit
Hi,

On Thu, 20 Feb 2014, Erik Faye-Lund wrote:

> On Thu, Feb 20, 2014 at 11:05 AM, <datastr...@gmail.com> wrote:
>
> > I've created new branch, checkout to it and commit. Then when i ran "git
> > push origin master" i got this error:
> >
> > git: 'http-push' is not a git command. See 'git --help'
> > fatal: git-http-push failed
>
> But interesting. I can reproduce that git http-push isn't present in
> my installation of Git for Windows either.

It is not present in mine, either... But...

-- snip --
$ GIT_TRACE=1 git push https://github.com/msysgit/git HEAD
trace: built-in: git 'push' 'https://github.com/msysgit/git' 'HEAD'
trace: run_command: 'git-remote-https' 'https://github.com/msysgit/git' 'https://github.com/msysgit/git'
Username for 'https://github.com': _
-- snap --

datastream.post, could you also execute your push with GIT_TRACE=1?

Ciao,
Johannes

tuomas...@gmail.com

unread,
Apr 25, 2014, 8:29:18 AM4/25/14
to msy...@googlegroups.com, datastr...@gmail.com

Hi,

I've been struggling with this, too. Git just wouldn't accept http-push as a valid command, even though there is documentation for it!
Finally I noticed that my installation of Git (version 1.9.0.preview20140217) just didn't have file git-http-push in C:\Program Files (x86)\Git\libexec\git-core directory.

I installed an older version on Git (at least 1.8.1.2-preview20130211 has that blasted file) and what do you know? Git started pushing :-) And continued to push even after I installed 1.9.0 right on top of the 1.8 version, without uninstalling it first.

Hope this works for you!

Tuomas Silvola

Johannes Schindelin

unread,
Apr 25, 2014, 8:59:47 AM4/25/14
to tuomas...@gmail.com, msy...@googlegroups.com, datastr...@gmail.com
Hi,

On Fri, 25 Apr 2014, tuomas...@gmail.com wrote:

> torstai, 20. helmikuuta 2014 12.05.55 UTC+2 datastr...@gmail.com kirjoitti:
> >
> > git: 'http-push' is not a git command. See 'git --help'
> > fatal: git-http-push failed
>
> I've been struggling with this, too. Git just wouldn't accept http-push
> as a valid command, even though there is documentation for it!

I agree that there should not be any documentation for it. Rudimentary
research shows that the fault lies in the upstream HTML docs:

https://github.com/gitster/git-htmldocs/blob/master/git-http-push.html

Feel free to report this to g...@vger.kernel.org, i.e. the (non-Windows)
Git mailing list (because the issue is not limited to Windows).

> Finally I noticed that my installation of Git (version
> 1.9.0.preview20140217) just didn't have file git-http-push in C:\Program
> Files (x86)\Git\libexec\git-core directory.

I was under the impression that git-remote-curl replaced the need for
git-http-push. Do you call "git http-push" directly? If so, you might want
to retrain your fingers to call "git push" instead.

Further, feel free to build Git for Windows from scratch, using
http://msysgit.github.io/#download-msysgit and figure out why it is not
building http-push (it is still in the source code:
https://github.com/msysgit/git/blob/master/http-push.c). If you feel
unable to do that, feel free to offer a bounty for anybody willing to fix
the issue. Remember: Open Source is not that place where you get to say
how other people spend their time. That is called "prison", not "Open
Source".

Ciao,
Johannes

Erik Faye-Lund

unread,
Apr 25, 2014, 9:14:15 AM4/25/14
to Johannes Schindelin, tuomas...@gmail.com, msysGit, Denial Datastream
On Fri, Apr 25, 2014 at 2:59 PM, Johannes Schindelin
<Johannes....@gmx.de> wrote:
> Hi,
>
> On Fri, 25 Apr 2014, tuomas...@gmail.com wrote:
>
>> torstai, 20. helmikuuta 2014 12.05.55 UTC+2 datastr...@gmail.com kirjoitti:
>> >
>> > git: 'http-push' is not a git command. See 'git --help'
>> > fatal: git-http-push failed
>>
>> I've been struggling with this, too. Git just wouldn't accept http-push
>> as a valid command, even though there is documentation for it!
>
> I agree that there should not be any documentation for it. Rudimentary
> research shows that the fault lies in the upstream HTML docs:
>
> https://github.com/gitster/git-htmldocs/blob/master/git-http-push.html
>
> Feel free to report this to g...@vger.kernel.org, i.e. the (non-Windows)
> Git mailing list (because the issue is not limited to Windows).
>
>> Finally I noticed that my installation of Git (version
>> 1.9.0.preview20140217) just didn't have file git-http-push in C:\Program
>> Files (x86)\Git\libexec\git-core directory.
>
> I was under the impression that git-remote-curl replaced the need for
> git-http-push. Do you call "git http-push" directly? If so, you might want
> to retrain your fingers to call "git push" instead.

It seems remote-curl.c starts http-push when pushing over DAV.

Tuomas Silvola

unread,
Apr 28, 2014, 2:06:44 AM4/28/14
to kusm...@gmail.com, Johannes Schindelin, msysGit, Denial Datastream
Yes, http-push is automatically started. I just typed "git push".
Also, I did report the issue to the mailing list Johannes mentioned.

Tuomas
who is too new to all things git to really understand what he is doing... :-/

Erik Faye-Lund

unread,
Apr 28, 2014, 9:14:22 AM4/28/14
to Tuomas Silvola, Johannes Schindelin, msysGit, Denial Datastream
On Mon, Apr 28, 2014 at 8:06 AM, Tuomas Silvola <tuomas...@gmail.com> wrote:
> Yes, http-push is automatically started. I just typed "git push".
> Also, I did report the issue to the mailing list Johannes mentioned.
>
> Tuomas
> who is too new to all things git to really understand what he is doing...
> :-/
>

I've investigated the issue, and come up with this patch:
http://www.mail-archive.com/g...@vger.kernel.org/msg48843.html

I even built an installer (thanks Dscho and others for making this so
simple!), so you can give it a spin:
https://dl.dropboxusercontent.com/u/1737924/Git-1.9.2-http-push.exe

boks...@gmail.com

unread,
Dec 14, 2014, 11:58:15 AM12/14/14
to msy...@googlegroups.com
Hello, i have the same problem

git.exe push --progress  "origin" master:master

git: 'http-push' is not a git command. See 'git --help'.
fatal: git-http-push failed


Now downloading the installer from Erik Faye-Lund  :) 


 

Thomas Braun

unread,
Dec 15, 2014, 3:34:26 AM12/15/14
to boks...@gmail.com, msy...@googlegroups.com, kusm...@gmail.com
Reply all
Reply to author
Forward
0 new messages