Mercurial > hg
view contrib/dumprevlog @ 31769:594dd384803c
test-serve: make the 'listening at *' lines optional
The daemonized serve process doesn't print these lines out (see 448d0c452140).
I was able to get it to with the following hack:
diff --git a/mercurial/win32.py b/mercurial/win32.py
--- a/mercurial/win32.py
+++ b/mercurial/win32.py
@@ -418,6 +418,11 @@
return str(ppid)
def spawndetached(args):
+
+ import subprocess
+ return subprocess.Popen(args, cwd=pycompat.getcwd(), env=encoding.environ,
+ creationflags=subprocess.CREATE_NEW_PROCESS_GROUP).pid
+
# No standard library function really spawns a fully detached
# process under win32 because they allocate pipes or other objects
# to handle standard streams communications. Passing these objects
However, MSYS translates --prefixes starting with '/' to 'C:/MinGW/msys/1.0',
which changes the output. The output isn't so important that I want to spend a
bunch of time on this, and risk breaking some subtle behavior of `hg serve -d`
with the more complicated code.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sun, 02 Apr 2017 00:56:52 -0400 |
parents | 6359b80f15fb |
children | a915465a731e |
line wrap: on
line source
#!/usr/bin/env python # Dump revlogs as raw data stream # $ find .hg/store/ -name "*.i" | xargs dumprevlog > repo.dump from __future__ import absolute_import, print_function import sys from mercurial import ( node, revlog, util, ) for fp in (sys.stdin, sys.stdout, sys.stderr): util.setbinary(fp) for f in sys.argv[1:]: binopen = lambda fn: open(fn, 'rb') r = revlog.revlog(binopen, f) print("file:", f) for i in r: n = r.node(i) p = r.parents(n) d = r.revision(n) print("node:", node.hex(n)) print("linkrev:", r.linkrev(i)) print("parents:", node.hex(p[0]), node.hex(p[1])) print("length:", len(d)) print("-start-") print(d) print("-end-")