revlog-formatv0.py
63 lines
| 1.9 KiB
| text/x-python
|
PythonLexer
/ tests / revlog-formatv0.py
|
r12170 | #!/usr/bin/env python | ||
# Copyright 2010 Intevation GmbH | ||||
# Author(s): | ||||
# Thomas Arendsen Hein <thomas@intevation.de> | ||||
# | ||||
# This software may be used and distributed according to the terms of the | ||||
# GNU General Public License version 2 or any later version. | ||||
"""Create a Mercurial repository in revlog format 0 | ||||
changeset: 0:a1ef0b125355 | ||||
tag: tip | ||||
user: user | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
files: empty | ||||
description: | ||||
empty file | ||||
""" | ||||
|
r28945 | from __future__ import absolute_import | ||
|
r36583 | import binascii | ||
|
r28945 | import os | ||
import sys | ||||
|
r12170 | |||
files = [ | ||||
|
r35588 | (b'formatv0/.hg/00changelog.i', | ||
b'000000000000004400000000000000000000000000000000000000' | ||||
b'000000000000000000000000000000000000000000000000000000' | ||||
b'0000a1ef0b125355d27765928be600cfe85784284ab3'), | ||||
(b'formatv0/.hg/00changelog.d', | ||||
b'756163613935613961356635353036303562366138343738336237' | ||||
b'61623536363738616436356635380a757365720a3020300a656d70' | ||||
b'74790a0a656d7074792066696c65'), | ||||
(b'formatv0/.hg/00manifest.i', | ||||
b'000000000000003000000000000000000000000000000000000000' | ||||
b'000000000000000000000000000000000000000000000000000000' | ||||
b'0000aca95a9a5f550605b6a84783b7ab56678ad65f58'), | ||||
(b'formatv0/.hg/00manifest.d', | ||||
b'75656d707479006238306465356431333837353835343163356630' | ||||
b'35323635616431343461623966613836643164620a'), | ||||
(b'formatv0/.hg/data/empty.i', | ||||
b'000000000000000000000000000000000000000000000000000000' | ||||
b'000000000000000000000000000000000000000000000000000000' | ||||
b'0000b80de5d138758541c5f05265ad144ab9fa86d1db'), | ||||
(b'formatv0/.hg/data/empty.d', | ||||
b''), | ||||
|
r12170 | ] | ||
def makedirs(name): | ||||
"""recursive directory creation""" | ||||
parent = os.path.dirname(name) | ||||
if parent: | ||||
makedirs(parent) | ||||
os.mkdir(name) | ||||
makedirs(os.path.join(*'formatv0/.hg/data'.split('/'))) | ||||
for name, data in files: | ||||
f = open(name, 'wb') | ||||
|
r36583 | f.write(binascii.unhexlify(data)) | ||
|
r12170 | f.close() | ||
sys.exit(0) | ||||