anchor.diff:  unhex(<<"\n">>) -> <<>>;
   unhex(<<H1,H2,Hex/binary>>) -> <<(list_to_integer([H1,H2], 16)), (unhex(Hex))/binary>>.
   
  -hex(<<>>) -> <<>>;
  -hex(<<H, Raw/binary>>) ->
  -  [H1,H2] = string:to_lower(lists:flatten(io_lib:format("~2.16.0B", [H]))),
  -  <<H1, H2, (hex(Raw))/binary>>.
  +hex(Binary) when is_binary(Binary) ->
  +  iolist_to_binary([string:to_lower(lists:flatten(io_lib:format("~2.16.0B", [H]))) || <<H>> <= Binary]).
   
   
   
  
positive.code: 
  unpack_size(Bin) -> list_to_integer(binary_to_list(Bin)).
  
  unzip(Zip) ->
    % Z = zlib:open(),
    % Raw = zlib:inflate(Z, Zip),
  
negative.code:   ?assertMatch({ok, _, [{<<"master">>, <<"6a65f190f18b3e8b5e64daab193a944ba7897a62">>}]}, refs(fixture("v2_git"))).
  
  
  put_raw_object_test() ->
    TempDir = gitty:fixture("temp_git"),
    ?assertMatch({ok, _, <<"e7a891c5b186c734bc98fd2af8946417b80d4f0c">>}, put_raw_object(TempDir, blob, "simple blob")),
    ?assertMatch({ok, _}, file:read_file_info(TempDir++"/objects/e7/a891c5b186c734bc98fd2af8946417b80d4f0c")),
    os:cmd("rm -rf "++ TempDir),
    ok.
  
  
  
  
  
  
  