Не могу раскодировать деревья git
В университете получил задание по созданию визуализатора коммитов без использования самого гита. Для этого мне нужно получать информацию из файлов объектов гита(коммиты, деревья, блобы), которые лежат в каталоге objects.
В итоге столкнулся с проблемой, что файлы, которые являются деревьями, нормально не раскодируются, при этом с коммитами и блобами всё нормально.
Прошу поделиться возможными решениями проблемы
Мой код:
using ICSharpCode.SharpZipLib.Zip.Compression.Streams;
using System.IO.Compression;
using System.Text;
public class Programm
{
public static void Main()
{
FileStream file = new FileStream("..\\.git\\objects\\da\\4b81b4aae57fcf1e54dcd3f76858e64af601b8", FileMode.Open, FileAccess.Read);
byte[] buffer = new byte[1024];
file.Read(buffer, 0, buffer.Length);
ZLibStream decoder = new ZLibStream(new MemoryStream(buffer), CompressionMode.Decompress);
byte[] buffer1 = new byte[1024];
decoder.Read(buffer1, 0, buffer.Length);
var text = System.Text.Encoding.UTF8.GetString(buffer1);
Console.WriteLine(text);
}
}
Что по идее должен получить:

