Re: [PATCH] remote-hg: do not fail on invalid bookmarks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for noticing,
I can reproduce at work, I will try to come-up with an improved version soon,

Cheers,
Antoine

On Mon, Jan 6, 2014 at 2:52 PM, Torsten Bögershausen <tboegi@xxxxxx> wrote:
> On 2013-12-29 12.30, Antoine Pelisse wrote:
>> 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 will fail because git-remote-hg will not be able to
>> create the corresponding reference.
>>
>> Warn the user about the invalid reference, and continue the import,
>> instead of stopping right away.
>>
>> Signed-off-by: Antoine Pelisse <apelisse@xxxxxxxxx>
>> ---
>>  contrib/remote-helpers/git-remote-hg | 3 +++
>>  1 file changed, 3 insertions(+)
>>
>> diff --git a/contrib/remote-helpers/git-remote-hg b/contrib/remote-helpers/git-remote-hg
>> index eb89ef6..12d850e 100755
>> --- a/contrib/remote-helpers/git-remote-hg
>> +++ b/contrib/remote-helpers/git-remote-hg
>> @@ -625,6 +625,9 @@ def list_head(repo, cur):
>>  def do_list(parser):
>>      repo = parser.repo
>>      for bmark, node in bookmarks.listbookmarks(repo).iteritems():
>> +        if node == '0000000000000000000000000000000000000000':
>> +            warn("Ignoring invalid bookmark '%s'", bmark)
>> +            continue
>>          bmarks[bmark] = repo[node]
>>
>>      cur = repo.dirstate.branch()
>>
> (Side note: ap/remote-hg-skip-null-bookmarks)
>
> When I run the test-suite like this:
> ~/projects/git/git.pu/contrib/remote-helpers$ debug=t verbose=t make test-hg-hg-git.sh
>
> All 11 test cases fail on my systems (Debian Wheezy and Mac OS X):
> [snip]
> WARNING: Ignoring invalid bookmark 'master'
> To hg::../hgrepo-git
>  ! [remote rejected] master -> master
> error: failed to push some refs to 'hg::../hgrepo-git'
> not ok 1 - executable bit
> #
> [snip]
>
>
--
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




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]