git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: fetching from an hg remote fails with bare git repositories

From
Mike Hommey <mh@glandium.org>
Date
Aug 4, 2015, 23:03 UTC
Message-ID
<20150804230359.GA27965@glandium.org>
In-Reply-To
<CAKfKJYshy58eQMXTusUTf0dc2B7uVU+=rzdSicSG0JAuODSBug@mail.gmail.com>
On Tue, Aug 04, 2015 at 05:27:13PM -0400, Taylor Braun-Jones wrote:
Show 33 quoted lines
> On Tue, Aug 4, 2015 at 2:56 PM, Stefan Beller <sbeller@google.com> wrote:
> > On Tue, Aug 4, 2015 at 10:45 AM, Taylor Braun-Jones
> > <taylor@braun-jones.org> wrote:
> >> Fetching from an hg remote fails with bare git repositories. Non-bare
> >> repositories work fine.
> >>
> >> Steps to reproduce:
> >>
> >> mkdir /tmp/hgrepo
> >> cd /tmp/hgrepo
> >> hg init
> >> echo foo > foo.txt
> >> hg add foo.txt
> >> hg commit -m "add foo.txt" foo.txt
> >> git clone hg::/tmp/hgrepo/ /tmp/gitrepo
> >> cd /tmp/gitrepo/
> >> git fetch # WORKS
> >> git clone --bare hg::/tmp/hgrepo/ /tmp/gitrepo.git
> >> cd /tmp/gitrepo.git/
> >> git fetch # FAILS
> >>
> >> The error message from the last line is:
> >>
> >> fatal: bad object 0000000000000000000000000000000000000000
> >> error: hg::/tmp/hgrepo/ did not send all necessary objects
> >>
> >> Taylor
> >
> > Which version of git did you test this with? Does it also happen on
> > the latest version?
> 
> Sorry - forgot that detail. This is using git 2.1.4 from Ubuntu 15.04
> x86_64. I haven't tried the latest version of git yet.

Another missing detail is what you're using for mercurial support in git. I would guess https://github.com/felipec/git-remote-hg. Shameless plug, you may want to give a try to https://github.com/glandium/git-cinnabar.

Anyways, your error looks like what I fixed in 33cae54, which git describe tells me made it to git 2.3.2.

Mike
Previous: Taylor Braun-JonesNext: Taylor Braun-Jones
Message 4 of 5 in “fetching from an hg remote fails with bare git repositories”
  1. Taylor Braun-JonesAug 4, 2015
  2. Stefan BellerAug 4, 2015
  3. Taylor Braun-JonesAug 4, 2015
  4. Mike HommeyAug 4, 2015
  5. Taylor Braun-JonesAug 6, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.