using LibGit; namespace LibGitTest; public class Test4 { public static async Task Run() { Console.WriteLine("Test4 running"); var repo = new GitRepo(new FileRepoSource(@"/home/Rory/git/spacebar/server-master/.git")); var packs = repo.GetPacks().GetAsyncEnumerator(); int count = 0; if (Directory.Exists("out-git")) Directory.Delete("out-git", true); Directory.CreateDirectory("out-git"); Directory.CreateDirectory("out-git/objects"); while (await packs.MoveNextAsync()) { count += packs.Current.ObjectCount; foreach (var gitPackObject in packs.Current.Index.Entries) { var item = packs.Current.Objects.First(x => x.Offset == gitPackObject.Offset); Console.WriteLine($"{item.ObjType}"); } } Console.WriteLine($"Read {count} objects from pack files."); } }