private void RunCleanup(Status status) { try { status.SetStatusText("Compacting repository."); FileRepositoryBuilder builder = new FileRepositoryBuilder(); FileRepository fr = builder.ReadEnvironment().SetGitDir(Path.Combine(GitRepositoryFolder, ".git")).Build(); GC gc = new GC(fr); var stats = gc.GetStatistics(); LogGitStats(stats); ValueProgressMonitor w = new ValueProgressMonitor(status); gc.SetProgressMonitor(w); gc.Gc(); stats = gc.GetStatistics(); LogGitStats(stats); } catch (Exception e) { Logging.Error(e, "Error running GC on version repository"); } }
public virtual void TestPackAllObjectsInOnePack() { tr.Branch("refs/heads/master").Commit().Add("A", "A").Add("B", "B").Create(); stats = gc.GetStatistics(); NUnit.Framework.Assert.AreEqual(4, stats.numberOfLooseObjects); NUnit.Framework.Assert.AreEqual(0, stats.numberOfPackedObjects); gc.Gc(); stats = gc.GetStatistics(); NUnit.Framework.Assert.AreEqual(0, stats.numberOfLooseObjects); NUnit.Framework.Assert.AreEqual(4, stats.numberOfPackedObjects); NUnit.Framework.Assert.AreEqual(1, stats.numberOfPackFiles); }