changeset 16:254078595653

Print manifest nodeid
author Artem Tikhomirov <tikhomirov.artem@gmail.com>
date Mon, 27 Dec 2010 01:00:53 +0100
parents 865bf07f381f
children 571e1b2cc3f7
files design.txt src/com/tmate/hgkit/ll/HgManifest.java
diffstat 2 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/design.txt	Mon Dec 27 00:50:02 2010 +0100
+++ b/design.txt	Mon Dec 27 01:00:53 2010 +0100
@@ -35,6 +35,8 @@
 
 
 ??? encodings of fncache, .hgignore, dirstate
+??? http://mercurial.selenic.com/wiki/Manifest says "Multiple changesets may refer to the same manifest revision". To me, each changeset 
+changes repository, hence manifest should update nodeids of the files it lists, effectively creating new manifest revision.
 
 >>>> Effective file read/data access
 ReadOperation, Revlog does: repo.getFileSystem().run(this.file, new ReadOperation(), long start=0, long end = -1)
--- a/src/com/tmate/hgkit/ll/HgManifest.java	Mon Dec 27 00:50:02 2010 +0100
+++ b/src/com/tmate/hgkit/ll/HgManifest.java	Mon Dec 27 01:00:53 2010 +0100
@@ -19,7 +19,7 @@
 	public void dump() {
 		Revlog.Inspector insp = new Revlog.Inspector() {
 			public void next(int revisionNumber, int actualLen, int baseRevision, int linkRevision, int parent1Revision, int parent2Revision, byte[] nodeid, byte[] data) {
-				System.out.println(revisionNumber);
+				System.out.printf("%d : %s\n", revisionNumber, new Nodeid(nodeid));
 				int i;
 				String fname = null;
 				String flags = null;