remote-hg: do not fail on invalid bookmarks
commit51be46ec4d0b64c1deb60a4814bcd24b6b478eeb
authorMax Horn <max@quendi.de>
Fri, 21 Mar 2014 11:36:36 +0000 (21 12:36 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 25 Mar 2014 19:05:24 +0000 (25 12:05 -0700)
tree95a7dea28e97d7c03bb4b83de2ba2a561b171322
parentd2446dfd7f3b3f8948142cfb07a0270e2497d93f
remote-hg: do not fail on invalid bookmarks

Mercurial can have bookmarks pointing to "nullid" (the empty root
revision), while Git can not have references to it. When cloning or
fetching from a Mercurial repository that has such a bookmark, the
import failed because git-remote-hg was not be able to create the
corresponding reference.

Warn the user about the invalid reference, and do not advertise these
bookmarks as head refs, but otherwise continue the import. In
particular, we still keep track of the fact that the remote repository
has a bookmark of the given name, in case the user wants to modify that
bookmark.

Also add some test cases for this issue.

Reported-by: Antoine Pelisse <apelisse@gmail.com>
Signed-off-by: Max Horn <max@quendi.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
contrib/remote-helpers/git-remote-hg
contrib/remote-helpers/test-hg.sh