コード例 #1
0
        private void VerifyChangelog(IDictionary<HgNodeID, IList<UInt32>> manifestLinkrevs, IDictionary<string, IList<uint>> fileLinkrevs)
        {
            VerifyRevlog(repository.Changelog.Revlog);
            var hgChangelogReader = new HgChangelogReader(repository.Encoder);

            foreach(var hgChangelogEntry in repository.Changelog.Revlog.Entries)
            {
                //VerifyRevlogEntry(hgChangelogEntry);

                var hgEntry = new HgRevlogReader(repository.Changelog.Revlog, fileSystem).ReadRevlogEntry(hgChangelogEntry.Revision);
                var hgChangeset = hgChangelogReader.ReadChangeset(hgEntry);

                manifestLinkrevs[hgChangeset.ManifestNodeID].Add(hgChangelogEntry.Revision);

                foreach(var file in hgChangeset.Files)
                    fileLinkrevs[file].Add(hgChangelogEntry.Revision);
            } // foreach
        }
コード例 #2
0
 private IEnumerable<HgChunk> BuildChangesetBundleGroup(HgRepository hgRepository, HgRevset hgRevset, Action<HgChangeset> callback)
 {
     var hgChangelogReader = new HgChangelogReader(hgEncoder);
     return BuildBundleGroup(hgRepository, hgRepository.Changelog.Revlog, hgRevset, hred => callback(hgChangelogReader.ReadChangeset(hred)));
 }