--- a/contrib/hgk.py
+++ b/contrib/hgk.py
@@ -134,10 +134,10 @@ def catcommit(repo, n, prefix, changes=N
if lines[-1].startswith('committer:'):
committer = lines[-1].split(': ')[1].rstrip()
else:
- committer = "%s %s %s" % (changes[1], date, date_ar[1])
+ committer = changes[1]
print "author %s %s %s" % (changes[1], date, date_ar[1])
- print "committer %s" % (committer)
+ print "committer %s %s %s" % (committer, date, date_ar[1])
print ""
if prefix != "":
print "%s%s" % (prefix, changes[4].replace('\n', nlprefix).strip())
--- a/doc/hg.1.txt
+++ b/doc/hg.1.txt
@@ -146,6 +146,16 @@ HGMERGE::
(deprecated, use .hgrc)
+HGRCPATH::
+ A list of files or directories to search for hgrc files. Item
+ separator is ":" on Unix, ";" on Windows. If HGRCPATH is not set,
+ platform default search path is used. If empty, only .hg/hgrc of
+ current repository is read.
+
+ For each element in path, if a directory, all entries in directory
+ ending with ".rc" are added to path. Else, element itself is
+ added to path.
+
HGUSER::
This is the string used for the author of a commit.
new file mode 100644
--- /dev/null
+++ b/mercurial/bundlerepo.py
@@ -0,0 +1,208 @@
+"""
+bundlerepo.py - repository class for viewing uncompressed bundles
+
+This provides a read-only repository interface to bundles as if
+they were part of the actual repository.
+
+Copyright 2006 Benoit Boissinot <benoit.boissinot@ens-lyon.org>
+
+This software may be used and distributed according to the terms
+of the GNU General Public License, incorporated herein by reference.
+"""
+
+from node import *
+from i18n import gettext as _
+from demandload import demandload
+demandload(globals(), "util os struct")
+
+import localrepo, changelog, manifest, filelog, revlog
+
+def getchunk(source):
+ """get a chunk from a group"""
+ d = source.read(4)
+ if not d:
+ return ""
+ l = struct.unpack(">l", d)[0]
+ if l <= 4:
+ return ""
+ d = source.read(l - 4)
+ if len(d) < l - 4:
+ raise util.Abort(_("premature EOF reading chunk"
+ " (got %d bytes, expected %d)")
+ % (len(d), l - 4))
+ return d
+
+class bundlerevlog(revlog.revlog):
+ def __init__(self, opener, indexfile, datafile, bundlefile,
+ linkmapper=None):
+ # How it works:
+ # to retrieve a revision, we need to know the offset of
+ # the revision in the bundlefile (an opened file).
+ #
+ # We store this offset in the index (start), to differentiate a
+ # rev in the bundle and from a rev in the revlog, we check
+ # len(index[r]). If the tuple is bigger than 7, it is a bundle
+ # (it is bigger since we store the node to which the delta is)
+ #
+ revlog.revlog.__init__(self, opener, indexfile, datafile)
+ self.bundlefile = bundlefile
+ def genchunk():
+ while 1:
+ pos = bundlefile.tell()
+ chunk = getchunk(bundlefile)
+ if not chunk:
+ break
+ yield chunk, pos + 4 # XXX struct.calcsize(">l") == 4
+ n = self.count()
+ prev = None
+ for chunk, start in genchunk():
+ size = len(chunk)
+ if size < 80:
+ raise util.Abort("invalid changegroup")
+ start += 80
+ size -= 80
+ node, p1, p2, cs = struct.unpack("20s20s20s20s", chunk[:80])
+ if node in self.nodemap:
+ prev = node
+ continue
+ for p in (p1, p2):
+ if not p in self.nodemap:
+ raise RevlogError(_("unknown parent %s") % short(p1))
+ if linkmapper is None:
+ link = n
+ else:
+ link = linkmapper(cs)
+
+ if not prev:
+ prev = p1
+ # start, size, base is not used, link, p1, p2, delta ref
+ e = (start, size, None, link, p1, p2, node, prev)
+ self.index.append(e)
+ self.nodemap[node] = n
+ prev = node
+ n += 1
+
+ def bundle(self, rev):
+ """is rev from the bundle"""
+ if rev < 0:
+ return False
+ return len(self.index[rev]) > 7
+ def bundlebase(self, rev): return self.index[rev][7]
+ def chunk(self, rev):
+ # Warning: in case of bundle, the diff is against bundlebase,
+ # not against rev - 1
+ # XXX: could use some caching
+ if not self.bundle(rev):
+ return revlog.revlog.chunk(self, rev)
+ self.bundlefile.seek(self.start(rev))
+ return self.bundlefile.read(self.length(rev))
+
+ def revdiff(self, rev1, rev2):
+ """return or calculate a delta between two revisions"""
+ if self.bundle(rev1) and self.bundle(rev2):
+ # hot path for bundle
+ revb = self.rev(self.bundlebase(rev2))
+ if revb == rev1:
+ return self.chunk(rev2)
+ elif not self.bundle(rev1) and not self.bundle(rev2):
+ return revlog.revlog.chunk(self, rev1, rev2)
+
+ return self.diff(self.revision(self.node(rev1)),
+ self.revision(self.node(rev2)))
+
+ def revision(self, node):
+ """return an uncompressed revision of a given"""
+ if node == nullid: return ""
+
+ text = None
+ chain = []
+ iter_node = node
+ rev = self.rev(iter_node)
+ # reconstruct the revision if it is from a changegroup
+ while self.bundle(rev):
+ if self.cache and self.cache[0] == iter_node:
+ text = self.cache[2]
+ break
+ chain.append(rev)
+ iter_node = self.bundlebase(rev)
+ rev = self.rev(iter_node)
+ if text is None:
+ text = revlog.revlog.revision(self, iter_node)
+
+ while chain:
+ delta = self.chunk(chain.pop())
+ text = self.patches(text, [delta])
+
+ p1, p2 = self.parents(node)
+ if node != revlog.hash(text, p1, p2):
+ raise RevlogError(_("integrity check failed on %s:%d")
+ % (self.datafile, self.rev(node)))
+
+ self.cache = (node, rev, text)
+ return text
+
+ def addrevision(self, text, transaction, link, p1=None, p2=None, d=None):
+ raise NotImplementedError
+ def addgroup(self, revs, linkmapper, transaction, unique=0):
+ raise NotImplementedError
+ def strip(self, rev, minlink):
+ raise NotImplementedError
+ def checksize(self):
+ raise NotImplementedError
+
+class bundlechangelog(bundlerevlog, changelog.changelog):
+ def __init__(self, opener, bundlefile):
+ changelog.changelog.__init__(self, opener)
+ bundlerevlog.__init__(self, opener, "00changelog.i", "00changelog.d",
+ bundlefile)
+
+class bundlemanifest(bundlerevlog, manifest.manifest):
+ def __init__(self, opener, bundlefile, linkmapper):
+ manifest.manifest.__init__(self, opener)
+ bundlerevlog.__init__(self, opener, self.indexfile, self.datafile,
+ bundlefile, linkmapper)
+
+class bundlefilelog(bundlerevlog, filelog.filelog):
+ def __init__(self, opener, path, bundlefile, linkmapper):
+ filelog.filelog.__init__(self, opener, path)
+ bundlerevlog.__init__(self, opener, self.indexfile, self.datafile,
+ bundlefile, linkmapper)
+
+class bundlerepository(localrepo.localrepository):
+ def __init__(self, ui, path, bundlename):
+ localrepo.localrepository.__init__(self, ui, path)
+ f = open(bundlename, "rb")
+ s = os.fstat(f.fileno())
+ self.bundlefile = f
+ header = self.bundlefile.read(4)
+ if header == "HG10":
+ raise util.Abort(_("%s: compressed bundle not supported")
+ % bundlename)
+ elif header != "HG11":
+ raise util.Abort(_("%s: not a Mercurial bundle file") % bundlename)
+ self.changelog = bundlechangelog(self.opener, self.bundlefile)
+ self.manifest = bundlemanifest(self.opener, self.bundlefile,
+ self.changelog.rev)
+ # dict with the mapping 'filename' -> position in the bundle
+ self.bundlefilespos = {}
+ while 1:
+ f = getchunk(self.bundlefile)
+ if not f:
+ break
+ self.bundlefilespos[f] = self.bundlefile.tell()
+ while getchunk(self.bundlefile):
+ pass
+
+ def dev(self):
+ return -1
+
+ def file(self, f):
+ if f[0] == '/':
+ f = f[1:]
+ if f in self.bundlefilespos:
+ self.bundlefile.seek(self.bundlefilespos[f])
+ return bundlefilelog(self.opener, f, self.bundlefile,
+ self.changelog.rev)
+ else:
+ return filelog.filelog(self.opener, f)
+
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -9,9 +9,9 @@ from demandload import demandload
from node import *
from i18n import gettext as _
demandload(globals(), "os re sys signal shutil imp urllib pdb")
-demandload(globals(), "fancyopts ui hg util lock revlog templater")
-demandload(globals(), "fnmatch hgweb mdiff random signal time traceback")
-demandload(globals(), "errno socket version struct atexit sets bz2")
+demandload(globals(), "fancyopts ui hg util lock revlog templater bundlerepo")
+demandload(globals(), "fnmatch hgweb mdiff random signal tempfile time")
+demandload(globals(), "traceback errno socket version struct atexit sets bz2")
class UnknownCommand(Exception):
"""Exception raised if command is not in the command table."""
@@ -274,6 +274,32 @@ def make_file(repo, r, pat, node=None,
pathname),
mode)
+def write_bundle(cg, filename, compress=True, fh=None):
+ if fh is None:
+ fh = open(filename, "wb")
+
+ class nocompress(object):
+ def compress(self, x):
+ return x
+ def flush(self):
+ return ""
+ try:
+ if compress:
+ fh.write("HG10")
+ z = bz2.BZ2Compressor(9)
+ else:
+ fh.write("HG11")
+ z = nocompress()
+ while 1:
+ chunk = cg.read(4096)
+ if not chunk:
+ break
+ fh.write(z.compress(chunk))
+ fh.write(z.flush())
+ except:
+ os.unlink(filename)
+ raise
+
def dodiff(fp, ui, repo, node1, node2, files=None, match=util.always,
changes=None, text=False, opts={}):
if not node1:
@@ -413,8 +439,12 @@ class changeset_templater(object):
def one(v, tag=name):
try:
vargs.update(v)
- except ValueError:
- vargs.update([(name, v)])
+ except (AttributeError, ValueError):
+ try:
+ for a, b in v:
+ vargs[a] = b
+ except ValueError:
+ vargs[name] = v
return self.t(tag, **vargs)
lastname = 'last_' + name
if lastname in self.t:
@@ -441,8 +471,8 @@ class changeset_templater(object):
if self.ui.debugflag:
def showmanifest(**args):
args = args.copy()
- args.update(rev=self.repo.manifest.rev(changes[0]),
- node=hex(changes[0]))
+ args.update(dict(rev=self.repo.manifest.rev(changes[0]),
+ node=hex(changes[0])))
yield self.t('manifest', **args)
else:
showmanifest = ''
@@ -830,24 +860,11 @@ def bundle(ui, repo, fname, dest="defaul
Unlike import/export, this exactly preserves all changeset
contents including permissions, rename data, and revision history.
"""
- f = open(fname, "wb")
dest = ui.expandpath(dest)
other = hg.repository(ui, dest)
o = repo.findoutgoing(other)
cg = repo.changegroup(o, 'bundle')
-
- try:
- f.write("HG10")
- z = bz2.BZ2Compressor(9)
- while 1:
- chunk = cg.read(4096)
- if not chunk:
- break
- f.write(z.compress(chunk))
- f.write(z.flush())
- except:
- os.unlink(fname)
- raise
+ write_bundle(cg, fname)
def cat(ui, repo, file1, *pats, **opts):
"""output the latest or given revisions of files
@@ -1744,16 +1761,36 @@ def incoming(ui, repo, source="default",
pull repo. These are the changesets that would be pulled if a pull
was requested.
- Currently only local repositories are supported.
+ For remote repository, using --bundle avoids downloading the changesets
+ twice if the incoming is followed by a pull.
"""
source = ui.expandpath(source)
other = hg.repository(ui, source)
- if not other.local():
- raise util.Abort(_("incoming doesn't work for remote repositories yet"))
- o = repo.findincoming(other)
- if not o:
+ incoming = repo.findincoming(other)
+ if not incoming:
return
- o = other.changelog.nodesbetween(o)[0]
+
+ cleanup = None
+ if not other.local() or opts["bundle"]:
+ # create an uncompressed bundle
+ if not opts["bundle"]:
+ # create a temporary bundle
+ fd, fname = tempfile.mkstemp(suffix=".hg",
+ prefix="tmp-hg-incoming")
+ f = os.fdopen(fd, "wb")
+ cleanup = fname
+ else:
+ fname = opts["bundle"]
+ f = open(fname, "wb")
+
+ cg = other.changegroup(incoming, "incoming")
+ write_bundle(cg, fname, compress=other.local(), fh=f)
+ f.close()
+ if not other.local():
+ # use a bundlerepo
+ other = bundlerepo.bundlerepository(ui, repo.root, fname)
+
+ o = other.changelog.nodesbetween(incoming)[0]
if opts['newest_first']:
o.reverse()
displayer = show_changeset(ui, other, opts)
@@ -1767,6 +1804,9 @@ def incoming(ui, repo, source="default",
dodiff(ui, ui, other, prev, n)
ui.write("\n")
+ if cleanup:
+ os.unlink(cleanup)
+
def init(ui, dest="."):
"""create a new repository in the given directory
@@ -2492,16 +2532,20 @@ def unbundle(ui, repo, fname, **opts):
"""
f = urllib.urlopen(fname)
- if f.read(4) != "HG10":
+ header = f.read(4)
+ if header == "HG10":
+ def generator(f):
+ zd = bz2.BZ2Decompressor()
+ for chunk in f:
+ yield zd.decompress(chunk)
+ elif header == "HG11":
+ def generator(f):
+ for chunk in f:
+ yield chunk
+ else:
raise util.Abort(_("%s: not a Mercurial bundle file") % fname)
-
- def bzgenerator(f):
- zd = bz2.BZ2Decompressor()
- for chunk in f:
- yield zd.decompress(chunk)
-
- bzgen = bzgenerator(util.filechunkiter(f, 4096))
- if repo.addchangegroup(util.chunkbuffer(bzgen)):
+ gen = generator(util.filechunkiter(f, 4096))
+ if repo.addchangegroup(util.chunkbuffer(gen)):
return 1
if opts['update']:
@@ -2715,9 +2759,10 @@ table = {
[('M', 'no-merges', None, _('do not show merges')),
('', 'style', '', _('display using template map file')),
('n', 'newest-first', None, _('show newest record first')),
+ ('', 'bundle', '', _('file to store the bundles into')),
('p', 'patch', None, _('show patch')),
('', 'template', '', _('display with template'))],
- _('hg incoming [-p] [-n] [-M] [SOURCE]')),
+ _('hg incoming [-p] [-n] [-M] [--bundle FILENAME] [SOURCE]')),
"^init": (init, [], _('hg init [DEST]')),
"locate":
(locate,
--- a/mercurial/hg.py
+++ b/mercurial/hg.py
@@ -8,7 +8,7 @@
from node import *
from repo import *
from demandload import *
-demandload(globals(), "localrepo httprepo sshrepo statichttprepo")
+demandload(globals(), "localrepo bundlerepo httprepo sshrepo statichttprepo")
def repository(ui, path=None, create=0):
if path:
@@ -24,5 +24,13 @@ def repository(ui, path=None, create=0):
ui, path.replace("old-http://", "http://"))
if path.startswith("ssh://"):
return sshrepo.sshrepository(ui, path)
+ if path.startswith("bundle://"):
+ path = path[9:]
+ s = path.split("+", 1)
+ if len(s) == 1:
+ repopath, bundlename = "", s[0]
+ else:
+ repopath, bundlename = s
+ return bundlerepo.bundlerepository(ui, repopath, bundlename)
return localrepo.localrepository(ui, path, create)
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -166,7 +166,7 @@ class localrepository(object):
if self.encodepats == None:
l = []
for pat, cmd in self.ui.configitems("encode"):
- mf = util.matcher("", "/", [pat], [], [])[1]
+ mf = util.matcher(self.root, "", [pat], [], [])[1]
l.append((mf, cmd))
self.encodepats = l
@@ -184,7 +184,7 @@ class localrepository(object):
if self.decodepats == None:
l = []
for pat, cmd in self.ui.configitems("decode"):
- mf = util.matcher("", "/", [pat], [], [])[1]
+ mf = util.matcher(self.root, "", [pat], [], [])[1]
l.append((mf, cmd))
self.decodepats = l
@@ -1634,6 +1634,7 @@ class localrepository(object):
self.dirstate.update([f], 'n')
# merge the tricky bits
+ failedmerge = []
files = merge.keys()
files.sort()
xp1 = hex(p1)
@@ -1644,6 +1645,7 @@ class localrepository(object):
ret = self.merge3(f, my, other, xp1, xp2)
if ret:
err = True
+ failedmerge.append(f)
util.set_exec(self.wjoin(f), flag)
if moddirstate:
if branch_merge:
@@ -1677,6 +1679,16 @@ class localrepository(object):
if moddirstate:
self.dirstate.setparents(p1, p2)
+
+ stat = ((len(get), _("updated")),
+ (len(merge) - len(failedmerge), _("merged")),
+ (len(remove), _("removed")),
+ (len(failedmerge), _("unresolved")))
+ note = ", ".join([_("%d files %s") % s for s in stat])
+ self.ui.note("%s\n" % note)
+ if moddirstate and branch_merge:
+ self.ui.note(_("(branch merge, don't forget to commit)\n"))
+
return err
def merge3(self, fn, my, other, p1, p2):
--- a/mercurial/revlog.py
+++ b/mercurial/revlog.py
@@ -254,10 +254,14 @@ class revlog(object):
if node == nullid: return (nullid, nullid)
return self.index[self.rev(node)][4:6]
- def start(self, rev): return self.index[rev][0]
- def length(self, rev): return self.index[rev][1]
+ def start(self, rev): return (rev < 0) and -1 or self.index[rev][0]
+ def length(self, rev):
+ if rev < 0:
+ return 0
+ else:
+ return self.index[rev][1]
def end(self, rev): return self.start(rev) + self.length(rev)
- def base(self, rev): return self.index[rev][2]
+ def base(self, rev): return (rev < 0) and rev or self.index[rev][2]
def reachable(self, rev, stop=None):
reachable = {}
@@ -528,12 +532,17 @@ class revlog(object):
def delta(self, node):
"""return or calculate a delta between a node and its predecessor"""
r = self.rev(node)
- b = self.base(r)
- if r == b:
- return self.diff(self.revision(self.node(r - 1)),
- self.revision(node))
+ return self.revdiff(r - 1, r)
+
+ def revdiff(self, rev1, rev2):
+ """return or calculate a delta between two revisions"""
+ b1 = self.base(rev1)
+ b2 = self.base(rev2)
+ if b1 == b2 and rev1 + 1 == rev2:
+ return self.chunk(rev2)
else:
- return self.chunk(r)
+ return self.diff(self.revision(self.node(rev1)),
+ self.revision(self.node(rev2)))
def revision(self, node):
"""return an uncompressed revision of a given"""
@@ -556,7 +565,7 @@ class revlog(object):
for r in xrange(base + 1, rev + 1):
bins.append(self.chunk(r))
- text = mdiff.patches(text, bins)
+ text = self.patches(text, bins)
p1, p2 = self.parents(node)
if node != hash(text, p1, p2):
@@ -709,20 +718,12 @@ class revlog(object):
# build deltas
for d in xrange(0, len(revs) - 1):
a, b = revs[d], revs[d + 1]
- na = self.node(a)
nb = self.node(b)
if infocollect is not None:
infocollect(nb)
- # do we need to construct a new delta?
- if a + 1 != b or self.base(b) == b:
- ta = self.revision(na)
- tb = self.revision(nb)
- d = self.diff(ta, tb)
- else:
- d = self.chunk(b)
-
+ d = self.revdiff(a, b)
p = self.parents(nb)
meta = nb + p[0] + p[1] + lookup(nb)
l = struct.pack(">l", len(meta) + len(d) + 4)
--- a/mercurial/ui.py
+++ b/mercurial/ui.py
@@ -18,7 +18,7 @@ class ui(object):
# this is the parent of all ui children
self.parentui = None
self.cdata = ConfigParser.SafeConfigParser()
- self.readconfig(util.rcpath)
+ self.readconfig(util.rcpath())
self.quiet = self.configbool("ui", "quiet")
self.verbose = self.configbool("ui", "verbose")
@@ -60,7 +60,7 @@ class ui(object):
if root is None:
root = os.path.expanduser('~')
for name, path in self.configitems("paths"):
- if path.find("://") == -1 and not os.path.isabs(path):
+ if path and path.find("://") == -1 and not os.path.isabs(path):
self.cdata.set("paths", name, os.path.join(root, path))
def setconfig(self, section, name, val):
--- a/mercurial/util.py
+++ b/mercurial/util.py
@@ -506,17 +506,18 @@ if os.name == 'nt':
sys.stdout = winstdout(sys.stdout)
- try:
- import win32api, win32process
- filename = win32process.GetModuleFileNameEx(win32api.GetCurrentProcess(), 0)
- systemrc = os.path.join(os.path.dirname(filename), 'mercurial.ini')
+ def os_rcpath():
+ '''return default os-specific hgrc search path'''
+ try:
+ import win32api, win32process
+ proc = win32api.GetCurrentProcess()
+ filename = win32process.GetModuleFileNameEx(proc, 0)
+ systemrc = os.path.join(os.path.dirname(filename), 'mercurial.ini')
+ except ImportError:
+ systemrc = r'c:\mercurial\mercurial.ini'
- except ImportError:
- systemrc = r'c:\mercurial\mercurial.ini'
- pass
-
- rcpath = (systemrc,
- os.path.join(os.path.expanduser('~'), 'mercurial.ini'))
+ return [systemrc,
+ os.path.join(os.path.expanduser('~'), 'mercurial.ini')]
def parse_patch_output(output_line):
"""parses the output produced by patch and returns the file name"""
@@ -591,12 +592,17 @@ else:
if f.endswith(".rc")])
except OSError, inst: pass
return rcs
- rcpath = []
- if len(sys.argv) > 0:
- rcpath.extend(rcfiles(os.path.dirname(sys.argv[0]) + '/../etc/mercurial'))
- rcpath.extend(rcfiles('/etc/mercurial'))
- rcpath.append(os.path.expanduser('~/.hgrc'))
- rcpath = [os.path.normpath(f) for f in rcpath]
+
+ def os_rcpath():
+ '''return default os-specific hgrc search path'''
+ path = []
+ if len(sys.argv) > 0:
+ path.extend(rcfiles(os.path.dirname(sys.argv[0]) +
+ '/../etc/mercurial'))
+ path.extend(rcfiles('/etc/mercurial'))
+ path.append(os.path.expanduser('~/.hgrc'))
+ path = [os.path.normpath(f) for f in path]
+ return path
def parse_patch_output(output_line):
"""parses the output produced by patch and returns the file name"""
@@ -768,3 +774,27 @@ def walkrepos(path):
yield root
dirs[:] = []
break
+
+_rcpath = None
+
+def rcpath():
+ '''return hgrc search path. if env var HGRCPATH is set, use it.
+ for each item in path, if directory, use files ending in .rc,
+ else use item.
+ make HGRCPATH empty to only look in .hg/hgrc of current repo.
+ if no HGRCPATH, use default os-specific path.'''
+ global _rcpath
+ if _rcpath is None:
+ if 'HGRCPATH' in os.environ:
+ _rcpath = []
+ for p in os.environ['HGRCPATH'].split(os.pathsep):
+ if not p: continue
+ if os.path.isdir(p):
+ for f in os.listdir(p):
+ if f.endswith('.rc'):
+ _rcpath.append(os.path.join(p, f))
+ else:
+ _rcpath.append(p)
+ else:
+ _rcpath = os_rcpath()
+ return _rcpath
--- a/tests/README
+++ b/tests/README
@@ -24,7 +24,7 @@ writing tests:
- changeset hashes will change based on user and date which make
things like hg history output change
- use commit -m "test" -u test -d "0 0"
+ use commit -m "test" -u test -d "1000000 0"
- diff will show the current time
new file mode 100755
--- /dev/null
+++ b/tests/md5sum.py
@@ -0,0 +1,32 @@
+#! /usr/bin/env python
+#
+# Based on python's Tools/scripts/md5sum.py
+#
+# This software may be used and distributed according to the terms
+# of the PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2, which is
+# GPL-compatible.
+
+import sys
+import os
+import md5
+
+for filename in sys.argv[1:]:
+ try:
+ fp = open(filename, 'rb')
+ except IOError, msg:
+ sys.stderr.write('%s: Can\'t open: %s\n' % (filename, msg))
+ sys.exit(1)
+
+ m = md5.new()
+ try:
+ while 1:
+ data = fp.read(8192)
+ if not data:
+ break
+ m.update(data)
+ except IOError, msg:
+ sys.stderr.write('%s: I/O error: %s\n' % (filename, msg))
+ sys.exit(1)
+ sys.stdout.write('%s %s\n' % (m.hexdigest(), filename))
+
+sys.exit(0)
--- a/tests/run-tests
+++ b/tests/run-tests
@@ -18,6 +18,16 @@ TZ=GMT; export TZ
HGEDITOR=true; export HGEDITOR
HGMERGE=true; export HGMERGE
HGUSER="test"; export HGUSER
+HGRCPATH=""; export HGRCPATH
+
+if [ `echo -n HG` == "-n HG" ]
+then
+ ECHO_N=echo
+ NNL="\c"
+else
+ ECHO_N="echo -n"
+ NNL=
+fi
umask 022
@@ -40,6 +50,7 @@ HGTMP="${TMPDIR-/tmp}/hgtests.$RANDOM.$R
}
TESTDIR="$PWD"
+export TESTDIR
INST="$HGTMP/install"
PYTHONDIR="$INST/lib/python"
cd ..
@@ -109,7 +120,7 @@ run_one() {
# list of prerequisite programs
# stuff from coreutils (cat, rm, etc) are not tested
-prereqs="python merge diff grep unzip md5sum gunzip sed"
+prereqs="python merge diff grep unzip gunzip bunzip2 sed"
missing=''
for pre in $prereqs ; do
if type $pre > /dev/null 2>&1 ; then
@@ -134,7 +145,7 @@ if [ -z "$TESTS" ] ; then
fi
for f in $TESTS ; do
- echo -n "."
+ $ECHO_N ".${NNL}"
run_one $f || failed=`expr $failed + 1`
tests=`expr $tests + 1`
done
--- a/tests/test-addremove
+++ b/tests/test-addremove
@@ -5,8 +5,8 @@ cd rep
mkdir dir
touch foo dir/bar
hg -v addremove
-hg -v commit -m "add 1" -d "0 0"
+hg -v commit -m "add 1" -d "1000000 0"
cd dir/
touch ../foo_2 bar_2
hg -v addremove
-hg -v commit -m "add 2" -d "0 0"
+hg -v commit -m "add 2" -d "1000000 0"
--- a/tests/test-archive
+++ b/tests/test-archive
@@ -29,9 +29,10 @@ f = urllib2.urlopen('http://127.0.0.1:20
% (node, archive))
sys.stdout.write(f.read())
EOF
-http_proxy= python getarchive.py "$TIP" gz | tar tzf - | sed "s/$QTIP/TIP/"
-http_proxy= python getarchive.py "$TIP" bz2 | tar tjf - | sed "s/$QTIP/TIP/"
+http_proxy= python getarchive.py "$TIP" gz | gunzip -dc - | tar tf - | sed "s/$QTIP/TIP/"
+http_proxy= python getarchive.py "$TIP" bz2 | bunzip2 -dc - | tar tf - | sed "s/$QTIP/TIP/"
http_proxy= python getarchive.py "$TIP" zip > archive.zip
unzip -t archive.zip | sed "s/$QTIP/TIP/"
kill `cat hg.pid`
+sleep 1 # wait for server to scream and die
--- a/tests/test-backwards-remove
+++ b/tests/test-backwards-remove
@@ -2,11 +2,11 @@
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
ls
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
hg co 0
# B should disappear
ls
--- a/tests/test-bad-pull
+++ b/tests/test-bad-pull
@@ -19,7 +19,7 @@ EOF
python dumb.py 2>/dev/null &
-hg clone http://localhost:20059/foo copy2
+http_proxy= hg clone http://localhost:20059/foo copy2
echo $?
kill $!
--- a/tests/test-basic
+++ b/tests/test-basic
@@ -5,7 +5,7 @@ cd t
hg init
echo a > a
hg add a
-hg commit -m test -d "0 0"
+hg commit -m test -d "1000000 0"
hg history
hg manifest
hg cat a
--- a/tests/test-basic.out
+++ b/tests/test-basic.out
@@ -1,7 +1,7 @@
-changeset: 0:acb14030fe0a
+changeset: 0:0acdaf898367
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: test
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 a
--- a/tests/test-cat
+++ b/tests/test-cat
@@ -5,12 +5,12 @@ cd t
hg init
echo 0 > a
echo 0 > b
-hg ci -A -m m -d "0 0"
+hg ci -A -m m -d "1000000 0"
hg rm a
hg cat a
sleep 1 # make sure mtime is changed
echo 1 > b
-hg ci -m m -d "0 0"
+hg ci -m m -d "1000000 0"
echo 2 > b
hg cat -r 0 a
hg cat -r 0 b
--- a/tests/test-cat.out
+++ b/tests/test-cat.out
@@ -3,5 +3,5 @@ adding b
0
0
0
-a: No such file in rev 7040230c159c
+a: No such file in rev 03f6b0774996
1
--- a/tests/test-clone
+++ b/tests/test-clone
@@ -16,7 +16,7 @@ hg verify
# No update
hg clone -U . ../c
cd ../c
-cat a
+cat a 2>/dev/null || echo "a not present"
hg verify
# Default destination
--- a/tests/test-clone.out
+++ b/tests/test-clone.out
@@ -4,7 +4,7 @@ checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 1 changesets, 1 total revisions
-cat: a: No such file or directory
+a not present
checking changesets
checking manifests
crosschecking files in changesets and manifests
--- a/tests/test-command-template
+++ b/tests/test-command-template
@@ -6,17 +6,17 @@ echo a > a
hg add a
echo line 1 > b
echo line 2 >> b
-hg commit -l b -d '1111111111 0' -u 'User Name <user@hostname>'
+hg commit -l b -d '1000000 0' -u 'User Name <user@hostname>'
hg add b
echo other 1 > c
echo other 2 >> c
echo >> c
echo other 3 >> c
-hg commit -l c -d '1123456789 0' -u 'A. N. Other <other@place>'
+hg commit -l c -d '1100000 0' -u 'A. N. Other <other@place>'
hg add c
-hg commit -m 'no person' -d '1134567890 0' -u 'other@place'
+hg commit -m 'no person' -d '1200000 0' -u 'other@place'
echo c >> c
-hg commit -m 'no user, no domain' -d '1144567890 0' -u 'person'
+hg commit -m 'no user, no domain' -d '1300000 0' -u 'person'
# make sure user/global hgrc does not affect tests
echo '[ui]' > .hg/hgrc
--- a/tests/test-command-template.out
+++ b/tests/test-command-template.out
@@ -6,40 +6,40 @@ 29a31
43a46
> files:
# compact style works
-3[tip] 2bacb094274c 2006-04-09 07:31 +0000 person
+3[tip] 8c7f028fbabf 1970-01-16 01:06 +0000 person
no user, no domain
-2 cdc488b3baa4 2005-12-14 13:44 +0000 other
+2 259081bc29d1 1970-01-14 21:20 +0000 other
no person
-1 55b647117689 2005-08-07 23:19 +0000 other
+1 1c37ba774509 1970-01-13 17:33 +0000 other
other 1
-0 debcd367d974 2005-03-18 01:58 +0000 user
+0 6eb5362d59ec 1970-01-12 13:46 +0000 user
line 1
-3[tip] 2bacb094274c 2006-04-09 07:31 +0000 person
+3[tip] 8c7f028fbabf 1970-01-16 01:06 +0000 person
no user, no domain
-2 cdc488b3baa4 2005-12-14 13:44 +0000 other
+2 259081bc29d1 1970-01-14 21:20 +0000 other
no person
-1 55b647117689 2005-08-07 23:19 +0000 other
+1 1c37ba774509 1970-01-13 17:33 +0000 other
other 1
-0 debcd367d974 2005-03-18 01:58 +0000 user
+0 6eb5362d59ec 1970-01-12 13:46 +0000 user
line 1
-3[tip]:2,-1 2bacb094274c 2006-04-09 07:31 +0000 person
+3[tip]:2,-1 8c7f028fbabf 1970-01-16 01:06 +0000 person
no user, no domain
-2:1,-1 cdc488b3baa4 2005-12-14 13:44 +0000 other
+2:1,-1 259081bc29d1 1970-01-14 21:20 +0000 other
no person
-1:0,-1 55b647117689 2005-08-07 23:19 +0000 other
+1:0,-1 1c37ba774509 1970-01-13 17:33 +0000 other
other 1
-0:-1,-1 debcd367d974 2005-03-18 01:58 +0000 user
+0:-1,-1 6eb5362d59ec 1970-01-12 13:46 +0000 user
line 1
# error if style not readable
@@ -85,18 +85,18 @@ branches--debug:
branches--debug:
branches--debug:
branches--debug:
-date: 1144567890.00
-date: 1134567890.00
-date: 1123456789.00
-date: 1111111111.00
-date--verbose: 1144567890.00
-date--verbose: 1134567890.00
-date--verbose: 1123456789.00
-date--verbose: 1111111111.00
-date--debug: 1144567890.00
-date--debug: 1134567890.00
-date--debug: 1123456789.00
-date--debug: 1111111111.00
+date: 1300000.00
+date: 1200000.00
+date: 1100000.00
+date: 1000000.00
+date--verbose: 1300000.00
+date--verbose: 1200000.00
+date--verbose: 1100000.00
+date--verbose: 1000000.00
+date--debug: 1300000.00
+date--debug: 1200000.00
+date--debug: 1100000.00
+date--debug: 1000000.00
desc: no user, no domain
desc: no person
desc: other 1
@@ -175,18 +175,18 @@ manifest--debug: 3:cb5a1327723b
manifest--debug: 2:6e0e82995c35
manifest--debug: 1:4e8d705b1e53
manifest--debug: 0:a0c8bcbbb45c
-node: 2bacb094274c6ad120b419cab77a39e51b69cbaa
-node: cdc488b3baa4a2cf316d4d85a3a1f17c5e1695d8
-node: 55b64711768911f37c6d244b12785623aa64e7c3
-node: debcd367d97455db85bba7b583b14b166172de25
-node--verbose: 2bacb094274c6ad120b419cab77a39e51b69cbaa
-node--verbose: cdc488b3baa4a2cf316d4d85a3a1f17c5e1695d8
-node--verbose: 55b64711768911f37c6d244b12785623aa64e7c3
-node--verbose: debcd367d97455db85bba7b583b14b166172de25
-node--debug: 2bacb094274c6ad120b419cab77a39e51b69cbaa
-node--debug: cdc488b3baa4a2cf316d4d85a3a1f17c5e1695d8
-node--debug: 55b64711768911f37c6d244b12785623aa64e7c3
-node--debug: debcd367d97455db85bba7b583b14b166172de25
+node: 8c7f028fbabf93fde80ef788885370b36abeff33
+node: 259081bc29d176c6ae17af5dd01a3440b3288c97
+node: 1c37ba7745099d0f206b3a663abcfe127b037433
+node: 6eb5362d59ec784e4431d3e140c8cc6e1b77ce82
+node--verbose: 8c7f028fbabf93fde80ef788885370b36abeff33
+node--verbose: 259081bc29d176c6ae17af5dd01a3440b3288c97
+node--verbose: 1c37ba7745099d0f206b3a663abcfe127b037433
+node--verbose: 6eb5362d59ec784e4431d3e140c8cc6e1b77ce82
+node--debug: 8c7f028fbabf93fde80ef788885370b36abeff33
+node--debug: 259081bc29d176c6ae17af5dd01a3440b3288c97
+node--debug: 1c37ba7745099d0f206b3a663abcfe127b037433
+node--debug: 6eb5362d59ec784e4431d3e140c8cc6e1b77ce82
parents:
parents:
parents:
@@ -195,9 +195,9 @@ parents--verbose:
parents--verbose:
parents--verbose:
parents--verbose:
-parents--debug: 2:cdc488b3baa4 -1:000000000000
-parents--debug: 1:55b647117689 -1:000000000000
-parents--debug: 0:debcd367d974 -1:000000000000
+parents--debug: 2:259081bc29d1 -1:000000000000
+parents--debug: 1:1c37ba774509 -1:000000000000
+parents--debug: 0:6eb5362d59ec -1:000000000000
parents--debug: -1:000000000000 -1:000000000000
rev: 3
rev: 2
@@ -236,26 +236,26 @@ person
other
other
user
-Sun Apr 9 07:31:30 2006 +0000
-Wed Dec 14 13:44:50 2005 +0000
-Sun Aug 7 23:19:49 2005 +0000
-Fri Mar 18 01:58:31 2005 +0000
-2006-04-09 07:31 +0000
-2005-12-14 13:44 +0000
-2005-08-07 23:19 +0000
-2005-03-18 01:58 +0000
-Sun, 09 Apr 2006 07:31:30 +0000
-Wed, 14 Dec 2005 13:44:50 +0000
-Sun, 07 Aug 2005 23:19:49 +0000
-Fri, 18 Mar 2005 01:58:31 +0000
+Fri Jan 16 01:06:40 1970 +0000
+Wed Jan 14 21:20:00 1970 +0000
+Tue Jan 13 17:33:20 1970 +0000
+Mon Jan 12 13:46:40 1970 +0000
+1970-01-16 01:06 +0000
+1970-01-14 21:20 +0000
+1970-01-13 17:33 +0000
+1970-01-12 13:46 +0000
+Fri, 16 Jan 1970 01:06:40 +0000
+Wed, 14 Jan 1970 21:20:00 +0000
+Tue, 13 Jan 1970 17:33:20 +0000
+Mon, 12 Jan 1970 13:46:40 +0000
no user, no domain
no person
other 1
line 1
-2bacb094274c
-cdc488b3baa4
-55b647117689
-debcd367d974
+8c7f028fbabf
+259081bc29d1
+1c37ba774509
+6eb5362d59ec
# error on syntax
abort: t:3: unmatched quotes
# done
--- a/tests/test-commit
+++ b/tests/test-commit
@@ -15,5 +15,5 @@ hg commit -d '111111111111 0' -m commit-
echo bar > bar
hg add bar
rm bar
-hg commit -d "0 0" -m commit-8 2>&1 | sed -e "s:/.*\(/test/.*\):...\1:"
+hg commit -d "1000000 0" -m commit-8 2>&1 | sed -e "s:/.*\(/test/.*\):...\1:"
exit 0
--- a/tests/test-conflict
+++ b/tests/test-conflict
@@ -3,14 +3,14 @@
hg init
echo "nothing" > a
hg add a
-hg commit -m ancestor -d "0 0"
+hg commit -m ancestor -d "1000000 0"
echo "something" > a
-hg commit -m branch1 -d "0 0"
+hg commit -m branch1 -d "1000000 0"
hg co 0
echo "something else" > a
-hg commit -m branch2 -d "0 0"
+hg commit -m branch2 -d "1000000 0"
HGMERGE=merge; export HGMERGE
hg up -m 1
hg id
-grep -Ev ">>>|<<<" a
+egrep -v ">>>|<<<" a
hg status
--- a/tests/test-conflict.out
+++ b/tests/test-conflict.out
@@ -1,7 +1,7 @@
merge: warning: conflicts during merge
merging a
merging a failed!
-32e80765d7fe+75234512624c+ tip
+e7fe8eb3e180+0d24b7662d3e+ tip
something else
=======
something
--- a/tests/test-confused-revert
+++ b/tests/test-confused-revert
@@ -3,7 +3,7 @@
hg init
echo foo > a
hg add a
-hg commit -m "1" -d "0 0"
+hg commit -m "1" -d "1000000 0"
echo bar > b
hg add b
@@ -22,11 +22,11 @@ rm b
hg co -C 0
echo foo-a > a
-hg commit -m "2a" -d "0 0"
+hg commit -m "2a" -d "1000000 0"
hg co -C 0
echo foo-b > a
-hg commit -m "2b" -d "0 0"
+hg commit -m "2b" -d "1000000 0"
HGMERGE=true hg update -m 1
--- a/tests/test-copy
+++ b/tests/test-copy
@@ -3,11 +3,11 @@
hg init
echo a > a
hg add a
-hg commit -m "1" -d "0 0"
+hg commit -m "1" -d "1000000 0"
hg status
hg copy a b
hg status
-hg --debug commit -m "2" -d "0 0"
+hg --debug commit -m "2" -d "1000000 0"
echo "we should see two history entries"
hg history -v
echo "we should see one log entry for a"
@@ -20,11 +20,11 @@ echo "this should show a revision linked
hg debugindex .hg/data/b.i
echo "this should show the rename information in the metadata"
-hg debugdata .hg/data/b.d 0 | head -n 3 | tail -n 2
+hg debugdata .hg/data/b.d 0 | head -3 | tail -2
-md5sum .hg/data/b.d
+$TESTDIR/md5sum.py .hg/data/b.d
hg cat b > bsum
-md5sum bsum
+$TESTDIR/md5sum.py bsum
hg cat a > asum
-md5sum asum
+$TESTDIR/md5sum.py asum
hg verify
--- a/tests/test-copy.out
+++ b/tests/test-copy.out
@@ -2,37 +2,37 @@ A b
b
b: copy a:b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3
we should see two history entries
-changeset: 1:3b5b84850bbed12e8ff8c1b87b32dc93c59ae6d8
+changeset: 1:386a3cc01532710ca78aed9a54fa2f459c04f29c
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
files: b
description:
2
-changeset: 0:c19d34741b0a4ced8e4ba74bb834597d5193851e
+changeset: 0:33aaa84a386bd609094aeb21a97c09436c482ef1
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
files: a
description:
1
we should see one log entry for a
-changeset: 0:c19d34741b0a
+changeset: 0:33aaa84a386b
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 1
this should show a revision linked to changeset 0
rev offset length base linkrev nodeid p1 p2
0 0 3 0 0 b789fdd96dc2 000000000000 000000000000
we should see one log entry for b
-changeset: 1:3b5b84850bbe
+changeset: 1:386a3cc01532
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2
this should show a revision linked to changeset 1
--- a/tests/test-diffdir
+++ b/tests/test-diffdir
@@ -3,7 +3,7 @@
hg init
touch a
hg add a
-hg ci -m "a" -d "0 0"
+hg ci -m "a" -d "1000000 0"
echo 123 > b
hg add b
--- a/tests/test-diffdir.out
+++ b/tests/test-diffdir.out
@@ -1,19 +1,19 @@
-diff -r 3903775176ed b
+diff -r acd8075edac9 b
--- /dev/null
+++ b/b
@@ -0,0 +1,1 @@
+123
-diff -r 3903775176ed b
+diff -r acd8075edac9 b
--- /dev/null
+++ b/b
@@ -0,0 +1,1 @@
+123
-diff -r 3903775176ed a
+diff -r acd8075edac9 a
--- a/a
+++ b/a
@@ -0,0 +1,1 @@
+foo
-diff -r 3903775176ed b
+diff -r acd8075edac9 b
--- /dev/null
+++ b/b
@@ -0,0 +1,1 @@
--- a/tests/test-empty-dir
+++ b/tests/test-empty-dir
@@ -3,14 +3,14 @@
hg init
echo 123 > a
hg add a
-hg commit -m "first" -d "0 0" a
+hg commit -m "first" -d "1000000 0" a
mkdir sub
echo 321 > sub/b
hg add sub/b
-hg commit -m "second" -d "0 0" sub/b
+hg commit -m "second" -d "1000000 0" sub/b
cat sub/b
hg co 0
-cat sub/b
-ls sub
+cat sub/b 2>/dev/null || echo "sub/b not present"
+ls sub 2>/dev/null || echo "sub not present"
true
--- a/tests/test-empty-dir.out
+++ b/tests/test-empty-dir.out
@@ -1,3 +1,3 @@
321
-cat: sub/b: No such file or directory
-ls: sub: No such file or directory
+sub/b not present
+sub not present
--- a/tests/test-encode
+++ b/tests/test-encode
@@ -13,7 +13,7 @@ EOF
echo "this is a test" | gzip > a.gz
hg add a.gz
-hg ci -m "test" -d "0 0"
+hg ci -m "test" -d "1000000 0"
echo %% no changes
hg status
touch a.gz
--- a/tests/test-excessive-merge
+++ b/tests/test-excessive-merge
@@ -6,24 +6,24 @@ echo foo > a
echo foo > b
hg add a b
-hg ci -m "test" -d "0 0"
+hg ci -m "test" -d "1000000 0"
echo blah > a
-hg ci -m "branch a" -d "0 0"
+hg ci -m "branch a" -d "1000000 0"
hg co 0
echo blah > b
-hg ci -m "branch b" -d "0 0"
+hg ci -m "branch b" -d "1000000 0"
HGMERGE=true hg up -m 1
-hg ci -m "merge b/a -> blah" -d "0 0"
+hg ci -m "merge b/a -> blah" -d "1000000 0"
hg co 1
HGMERGE=true hg up -m 2
-hg ci -m "merge a/b -> blah" -d "0 0"
+hg ci -m "merge a/b -> blah" -d "1000000 0"
hg log
hg debugindex .hg/00changelog.i
--- a/tests/test-excessive-merge.out
+++ b/tests/test-excessive-merge.out
@@ -1,40 +1,40 @@
-changeset: 4:2ee31f665a86
+changeset: 4:f6c172c6198c
tag: tip
-parent: 1:96155394af80
-parent: 2:92cc4c306b19
+parent: 1:448a8c5e42f1
+parent: 2:7c5dc2e857f2
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: merge a/b -> blah
-changeset: 3:e16a66a37edd
-parent: 2:92cc4c306b19
-parent: 1:96155394af80
+changeset: 3:13d875a22764
+parent: 2:7c5dc2e857f2
+parent: 1:448a8c5e42f1
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: merge b/a -> blah
-changeset: 2:92cc4c306b19
-parent: 0:5e0375449e74
+changeset: 2:7c5dc2e857f2
+parent: 0:dc1751ec2e9d
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: branch b
-changeset: 1:96155394af80
+changeset: 1:448a8c5e42f1
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: branch a
-changeset: 0:5e0375449e74
+changeset: 0:dc1751ec2e9d
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: test
rev offset length base linkrev nodeid p1 p2
- 0 0 60 0 0 5e0375449e74 000000000000 000000000000
- 1 60 62 1 1 96155394af80 5e0375449e74 000000000000
- 2 122 62 2 2 92cc4c306b19 5e0375449e74 000000000000
- 3 184 69 3 3 e16a66a37edd 92cc4c306b19 96155394af80
- 4 253 29 3 4 2ee31f665a86 96155394af80 92cc4c306b19
+ 0 0 64 0 0 dc1751ec2e9d 000000000000 000000000000
+ 1 64 68 1 1 448a8c5e42f1 dc1751ec2e9d 000000000000
+ 2 132 68 2 2 7c5dc2e857f2 dc1751ec2e9d 000000000000
+ 3 200 75 3 3 13d875a22764 7c5dc2e857f2 448a8c5e42f1
+ 4 275 29 3 4 f6c172c6198c 448a8c5e42f1 7c5dc2e857f2
1
79d7492df40aa0fa093ec4209be78043c181f094 644 a
--- a/tests/test-filebranch
+++ b/tests/test-filebranch
@@ -17,7 +17,7 @@ echo 1 > bar
echo 1 > baz
echo 1 > quux
hg add foo bar baz quux
-hg commit -m "base" -d "0 0"
+hg commit -m "base" -d "1000000 0"
cd ..
hg clone a b
@@ -26,7 +26,7 @@ echo creating branch a
cd a
echo 2a > foo
echo 2a > bar
-hg commit -m "branch a" -d "0 0"
+hg commit -m "branch a" -d "1000000 0"
echo creating branch b
@@ -34,7 +34,7 @@ cd ..
cd b
echo 2b > foo
echo 2b > baz
-hg commit -m "branch b" -d "0 0"
+hg commit -m "branch b" -d "1000000 0"
echo "we shouldn't have anything but n state here"
hg debugstate | cut -b 1-16,35-
@@ -50,7 +50,7 @@ echo new > quux
echo "we shouldn't have anything but foo in merge state here"
hg debugstate | cut -b 1-16,35- | grep "^m"
-hg ci -m "merge" -d "0 0"
+hg ci -m "merge" -d "1000000 0"
echo "main: we should have a merge here"
hg debugindex .hg/00changelog.i
--- a/tests/test-filebranch.out
+++ b/tests/test-filebranch.out
@@ -19,21 +19,23 @@ resolving manifests
getting bar
merging foo
resolving foo
+1 files updated, 1 files merged, 0 files removed, 0 files unresolved
+(branch merge, don't forget to commit)
we shouldn't have anything but foo in merge state here
m 644 3 foo
main: we should have a merge here
rev offset length base linkrev nodeid p1 p2
- 0 0 73 0 0 cdca01651b96 000000000000 000000000000
- 1 73 68 1 1 f6718a9cb7f3 cdca01651b96 000000000000
- 2 141 68 2 2 bdd988058d16 cdca01651b96 000000000000
- 3 209 66 3 3 d8a521142a3c f6718a9cb7f3 bdd988058d16
+ 0 0 77 0 0 c36078bec30d 000000000000 000000000000
+ 1 77 73 1 1 182b283965f1 c36078bec30d 000000000000
+ 2 150 71 2 2 a6aef98656b7 c36078bec30d 000000000000
+ 3 221 72 3 3 0c2cc6fc80e2 182b283965f1 a6aef98656b7
log should show foo and quux changed
-changeset: 3:d8a521142a3c02186ee6c7254738a7e6427ed4c8
+changeset: 3:0c2cc6fc80e2d4ee289bb658dbbe9ad932380fe9
tag: tip
-parent: 1:f6718a9cb7f31f1a92d27bd6544c71617d6d4e4f
-parent: 2:bdd988058d16e2d7392958eace7b64817e44a54e
+parent: 1:182b283965f1069c0112784e30e7755ad1c0dd52
+parent: 2:a6aef98656b71154cae9d87408abe6d0218c8045
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
files: foo quux
description:
merge
--- a/tests/test-flags
+++ b/tests/test-flags
@@ -7,7 +7,7 @@ cd test1
hg init
touch a b
hg add a b
-hg ci -m "added a b" -d "0 0"
+hg ci -m "added a b" -d "1000000 0"
cd ..
mkdir test2
@@ -17,11 +17,11 @@ hg init
hg pull ../test1
hg co
chmod +x a
-hg ci -m "chmod +x a" -d "0 0"
+hg ci -m "chmod +x a" -d "1000000 0"
cd ../test1
echo 123 >>a
-hg ci -m "a updated" -d "0 0"
+hg ci -m "a updated" -d "1000000 0"
hg pull ../test2
hg heads
@@ -30,5 +30,5 @@ hg history
hg -v co -m
ls -l ../test[12]/a > foo
-cut -b 0-10 < foo
+cut -b 1-10 < foo
--- a/tests/test-flags.out
+++ b/tests/test-flags.out
@@ -12,37 +12,39 @@ adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
(run 'hg update' to get a working copy)
-changeset: 2:3ef543305655
+changeset: 2:b833d578451e
tag: tip
-parent: 0:22a449e20da5
+parent: 0:4536b1c2ca69
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: chmod +x a
-changeset: 1:c6ecefc45368
+changeset: 1:a187cb361a5a
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: a updated
-changeset: 2:3ef543305655
+changeset: 2:b833d578451e
tag: tip
-parent: 0:22a449e20da5
+parent: 0:4536b1c2ca69
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: chmod +x a
-changeset: 1:c6ecefc45368
+changeset: 1:a187cb361a5a
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: a updated
-changeset: 0:22a449e20da5
+changeset: 0:4536b1c2ca69
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: added a b
resolving manifests
merging a
resolving a
+0 files updated, 1 files merged, 0 files removed, 0 files unresolved
+(branch merge, don't forget to commit)
-rwxr-x---
-rwxr-x---
--- a/tests/test-hook
+++ b/tests/test-hook
@@ -10,7 +10,7 @@ echo 'precommit = echo precommit hook: p
echo 'pretxncommit = echo pretxncommit hook: n=$HG_NODE p1=$HG_PARENT1 p2=$HG_PARENT2; hg -q tip' >> .hg/hgrc
echo a > a
hg add a
-hg commit -m a -d "0 0"
+hg commit -m a -d "1000000 0"
hg clone . ../b
cd ../b
--- a/tests/test-hook.out
+++ b/tests/test-hook.out
@@ -1,28 +1,28 @@
precommit hook: p1=0000000000000000000000000000000000000000 p2=
-pretxncommit hook: n=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p1=0000000000000000000000000000000000000000 p2=
-0:cb9a9f314b8b
-commit hook: n=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p1=0000000000000000000000000000000000000000 p2=
+pretxncommit hook: n=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p1=0000000000000000000000000000000000000000 p2=
+0:29b62aeb769f
+commit hook: n=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p1=0000000000000000000000000000000000000000 p2=
commit hook b
-precommit hook: p1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p2=
-pretxncommit hook: n=ab228980c14deea8b9555d91c9581127383e40fd p1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p2=
-1:ab228980c14d
-commit hook: n=ab228980c14deea8b9555d91c9581127383e40fd p1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p2=
+precommit hook: p1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p2=
+pretxncommit hook: n=b702efe9688826e3a91283852b328b84dbf37bc2 p1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p2=
+1:b702efe96888
+commit hook: n=b702efe9688826e3a91283852b328b84dbf37bc2 p1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p2=
commit hook b
-precommit hook: p1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p2=
-pretxncommit hook: n=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 p1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p2=
-2:ee9deb46ab31
-commit hook: n=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 p1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b p2=
+precommit hook: p1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p2=
+pretxncommit hook: n=1324a5531bac09b329c3845d35ae6a7526874edb p1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p2=
+2:1324a5531bac
+commit hook: n=1324a5531bac09b329c3845d35ae6a7526874edb p1=29b62aeb769fdf78d8d9c5f28b017f76d7ef824b p2=
commit hook b
-precommit hook: p1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 p2=ab228980c14deea8b9555d91c9581127383e40fd
-pretxncommit hook: n=07f3376c1e655977439df2a814e3cc14b27abac2 p1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 p2=ab228980c14deea8b9555d91c9581127383e40fd
-3:07f3376c1e65
-commit hook: n=07f3376c1e655977439df2a814e3cc14b27abac2 p1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 p2=ab228980c14deea8b9555d91c9581127383e40fd
+precommit hook: p1=1324a5531bac09b329c3845d35ae6a7526874edb p2=b702efe9688826e3a91283852b328b84dbf37bc2
+pretxncommit hook: n=4c52fb2e402287dd5dc052090682536c8406c321 p1=1324a5531bac09b329c3845d35ae6a7526874edb p2=b702efe9688826e3a91283852b328b84dbf37bc2
+3:4c52fb2e4022
+commit hook: n=4c52fb2e402287dd5dc052090682536c8406c321 p1=1324a5531bac09b329c3845d35ae6a7526874edb p2=b702efe9688826e3a91283852b328b84dbf37bc2
commit hook b
prechangegroup hook
-changegroup hook: n=ab228980c14deea8b9555d91c9581127383e40fd
-incoming hook: n=ab228980c14deea8b9555d91c9581127383e40fd
-incoming hook: n=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2
-incoming hook: n=07f3376c1e655977439df2a814e3cc14b27abac2
+changegroup hook: n=b702efe9688826e3a91283852b328b84dbf37bc2
+incoming hook: n=b702efe9688826e3a91283852b328b84dbf37bc2
+incoming hook: n=1324a5531bac09b329c3845d35ae6a7526874edb
+incoming hook: n=4c52fb2e402287dd5dc052090682536c8406c321
pulling from ../a
searching for changes
adding changesets
@@ -30,40 +30,40 @@ adding manifests
adding file changes
added 3 changesets with 2 changes to 2 files
(run 'hg update' to get a working copy)
-pretag hook: t=a n=07f3376c1e655977439df2a814e3cc14b27abac2 l=0
-precommit hook: p1=07f3376c1e655977439df2a814e3cc14b27abac2 p2=
-pretxncommit hook: n=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 p1=07f3376c1e655977439df2a814e3cc14b27abac2 p2=
-4:3cd2c6a5a36c
-commit hook: n=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 p1=07f3376c1e655977439df2a814e3cc14b27abac2 p2=
+pretag hook: t=a n=4c52fb2e402287dd5dc052090682536c8406c321 l=0
+precommit hook: p1=4c52fb2e402287dd5dc052090682536c8406c321 p2=
+pretxncommit hook: n=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 p1=4c52fb2e402287dd5dc052090682536c8406c321 p2=
+4:4f92e785b90a
+commit hook: n=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 p1=4c52fb2e402287dd5dc052090682536c8406c321 p2=
commit hook b
-tag hook: t=a n=07f3376c1e655977439df2a814e3cc14b27abac2 l=0
-pretag hook: t=la n=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 l=1
-tag hook: t=la n=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 l=1
-pretag hook: t=fa n=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 l=0
+tag hook: t=a n=4c52fb2e402287dd5dc052090682536c8406c321 l=0
+pretag hook: t=la n=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 l=1
+tag hook: t=la n=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 l=1
+pretag hook: t=fa n=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 l=0
pretag.forbid hook
abort: pretag.forbid hook exited with status 1
-pretag hook: t=fla n=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 l=1
+pretag hook: t=fla n=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 l=1
pretag.forbid hook
abort: pretag.forbid hook exited with status 1
-4:3cd2c6a5a36c
-precommit hook: p1=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 p2=
-pretxncommit hook: n=469a61fe67d64df9a5023e4c2b8a0b85c61e9b69 p1=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 p2=
-5:469a61fe67d6
-pretxncommit.forbid hook: tip=5:469a61fe67d6
+4:4f92e785b90a
+precommit hook: p1=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 p2=
+pretxncommit hook: n=7792358308a2026661cea44f9d47c072813004cb p1=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 p2=
+5:7792358308a2
+pretxncommit.forbid hook: tip=5:7792358308a2
abort: pretxncommit.forbid hook exited with status 1
transaction abort!
rollback completed
-4:3cd2c6a5a36c
-precommit hook: p1=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 p2=
+4:4f92e785b90a
+precommit hook: p1=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 p2=
precommit.forbid hook
abort: precommit.forbid hook exited with status 1
-4:3cd2c6a5a36c
-3:07f3376c1e65
+4:4f92e785b90a
+3:4c52fb2e4022
prechangegroup.forbid hook
pulling from ../a
searching for changes
abort: prechangegroup.forbid hook exited with status 1
-pretxnchangegroup.forbid hook: tip=4:3cd2c6a5a36c
+pretxnchangegroup.forbid hook: tip=4:4f92e785b90a
pulling from ../a
searching for changes
adding changesets
@@ -73,9 +73,9 @@ added 1 changesets with 1 changes to 1 f
abort: pretxnchangegroup.forbid hook exited with status 1
transaction abort!
rollback completed
-3:07f3376c1e65
+3:4c52fb2e4022
preoutgoing hook: s=pull
-outgoing hook: n=3cd2c6a5a36c5908aad3bc0d717c29873a05dfc2 s=pull
+outgoing hook: n=4f92e785b90ae8995dfe156e39dd4fbc3b346a24 s=pull
pulling from ../a
searching for changes
adding changesets
--- a/tests/test-locate
+++ b/tests/test-locate
@@ -5,13 +5,13 @@ cd t
hg init
echo 0 > a
echo 0 > b
-hg ci -A -m m -d "0 0"
+hg ci -A -m m -d "1000000 0"
touch nottracked
hg locate a
hg locate NONEXISTENT
hg locate
hg rm a
-hg ci -m m -d "0 0"
+hg ci -m m -d "1000000 0"
hg locate a
hg locate NONEXISTENT
hg locate
--- a/tests/test-locate.out
+++ b/tests/test-locate.out
@@ -8,6 +8,6 @@ a: No such file or directory
NONEXISTENT: No such file or directory
b
a
-NONEXISTENT: No such file in rev 9e1684505872
+NONEXISTENT: No such file in rev 14467d15ef43
a
b
--- a/tests/test-merge-revert
+++ b/tests/test-merge-revert
@@ -6,9 +6,9 @@ hg init
echo "added file1" > file1
echo "added file2" > file2
hg add file1 file2
-hg commit -m "added file1 and file2" -d "0 0" -u user
+hg commit -m "added file1 and file2" -d "1000000 0" -u user
echo "changed file1" >> file1
-hg commit -m "changed file1" -d "0 0" -u user
+hg commit -m "changed file1" -d "1000000 0" -u user
hg -q log
hg id
hg update -C 0
--- a/tests/test-merge-revert.out
+++ b/tests/test-merge-revert.out
@@ -1,12 +1,12 @@
-1:3aa14bbc23d9
-0:8633637036c1
-3aa14bbc23d9 tip
-8633637036c1
-8633637036c1+
-8633637036c1
-3aa14bbc23d9 tip
+1:016807e6fdaf
+0:eb43f19ff115
+016807e6fdaf tip
+eb43f19ff115
+eb43f19ff115+
+eb43f19ff115
+016807e6fdaf tip
merging file1
-3aa14bbc23d9 tip
-3aa14bbc23d9 tip
-3aa14bbc23d9 tip
-3aa14bbc23d9 tip
+016807e6fdaf tip
+016807e6fdaf tip
+016807e6fdaf tip
+016807e6fdaf tip
--- a/tests/test-merge-revert2
+++ b/tests/test-merge-revert2
@@ -7,9 +7,9 @@ echo "added file1" > file1
echo "another line of text" >> file1
echo "added file2" > file2
hg add file1 file2
-hg commit -m "added file1 and file2" -d "0 0" -u user
+hg commit -m "added file1 and file2" -d "1000000 0" -u user
echo "changed file1" >> file1
-hg commit -m "changed file1" -d "0 0" -u user
+hg commit -m "changed file1" -d "1000000 0" -u user
hg -q log
hg id
hg update -C 0
--- a/tests/test-merge-revert2.out
+++ b/tests/test-merge-revert2.out
@@ -1,14 +1,14 @@
-1:f4d7a8c73d23
-0:232e179b3f29
-f4d7a8c73d23 tip
-232e179b3f29
-232e179b3f29+
-232e179b3f29
-f4d7a8c73d23 tip
+1:f248da0d4c3e
+0:9eca13a34789
+f248da0d4c3e tip
+9eca13a34789
+9eca13a34789+
+9eca13a34789
+f248da0d4c3e tip
merge: warning: conflicts during merge
merging file1
merging file1 failed!
-diff -r f4d7a8c73d23 file1
+diff -r f248da0d4c3e file1
--- a/file1
+++ b/file1
@@ -1,3 +1,7 @@ added file1
@@ -20,7 +20,7 @@ diff -r f4d7a8c73d23 file1
changed file1
+>>>>>>>
M file1
-f4d7a8c73d23+ tip
-f4d7a8c73d23 tip
-f4d7a8c73d23 tip
-f4d7a8c73d23 tip
+f248da0d4c3e+ tip
+f248da0d4c3e tip
+f248da0d4c3e tip
+f248da0d4c3e tip
--- a/tests/test-merge1
+++ b/tests/test-merge1
@@ -11,15 +11,15 @@ cd t
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
hg update 0
echo This is file c1 > c
hg add c
-hg commit -m "commit #2" -d "0 0"
+hg commit -m "commit #2" -d "1000000 0"
echo This is file b1 > b
echo %% no merges expected
env HGMERGE=../merge hg update -m 1
@@ -30,15 +30,15 @@ cd t
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
hg update 0
echo This is file c1 > c
hg add c
-hg commit -m "commit #2" -d "0 0"
+hg commit -m "commit #2" -d "1000000 0"
echo This is file b2 > b
echo %% merge should fail
env HGMERGE=../merge hg update -m 1
@@ -52,16 +52,16 @@ cd t
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
echo This is file b22 > b
-hg commit -m "commit #2" -d "0 0"
+hg commit -m "commit #2" -d "1000000 0"
hg update 1
echo This is file c1 > c
hg add c
-hg commit -m "commit #3" -d "0 0"
+hg commit -m "commit #3" -d "1000000 0"
echo 'Contents of b should be "this is file b1"'
cat b
@@ -78,16 +78,16 @@ cd t
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
echo This is file b22 > b
-hg commit -m "commit #2" -d "0 0"
+hg commit -m "commit #2" -d "1000000 0"
hg update 1
echo This is file c1 > c
hg add c
-hg commit -m "commit #3" -d "0 0"
+hg commit -m "commit #3" -d "1000000 0"
echo This is file b33 > b
echo %% merge of b should fail
env HGMERGE=../merge hg update -m 2
--- a/tests/test-merge2
+++ b/tests/test-merge2
@@ -5,15 +5,15 @@ cd t
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
rm b
hg update 0
echo This is file b2 > b
hg add b
-hg commit -m "commit #2" -d "0 0"
+hg commit -m "commit #2" -d "1000000 0"
cd ..; /bin/rm -rf t
mkdir t
@@ -21,14 +21,14 @@ cd t
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
rm b
hg update 0
echo This is file b2 > b
-hg commit -A -m "commit #2" -d "0 0"
+hg commit -A -m "commit #2" -d "1000000 0"
cd ..; /bin/rm -rf t
mkdir t
@@ -36,13 +36,13 @@ cd t
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
rm b
hg remove b
hg update 0
echo This is file b2 > b
-hg commit -A -m "commit #2" -d "0 0"
+hg commit -A -m "commit #2" -d "1000000 0"
cd ..; /bin/rm -rf t
--- a/tests/test-merge3
+++ b/tests/test-merge3
@@ -3,8 +3,8 @@
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
touch b
hg add b
rm b
-hg commit -A -m"comment #1" -d "0 0"
+hg commit -A -m"comment #1" -d "1000000 0"
--- a/tests/test-merge4
+++ b/tests/test-merge4
@@ -3,15 +3,15 @@
hg init
echo This is file a1 > a
hg add a
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
-hg commit -m "commit #1" -d "0 0"
+hg commit -m "commit #1" -d "1000000 0"
hg update 0
echo This is file c1 > c
hg add c
-hg commit -m "commit #2" -d "0 0"
+hg commit -m "commit #2" -d "1000000 0"
hg update -m 1
rm b
echo This is file c22 > c
-hg commit -m "commit #3" -d "0 0"
+hg commit -m "commit #3" -d "1000000 0"
--- a/tests/test-merge5
+++ b/tests/test-merge5
@@ -6,12 +6,12 @@ hg init
echo This is file a1 > a
echo This is file b1 > b
hg add a b
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
echo This is file b22 > b
-hg commit -m"comment #1" -d "0 0"
+hg commit -m"comment #1" -d "1000000 0"
hg update 0
rm b
-hg commit -A -m"comment #2" -d "0 0"
+hg commit -A -m"comment #2" -d "1000000 0"
# in theory, we shouldn't need the "yes k" below, but it prevents
# this test from hanging when "hg update" erroneously prompts the
# user for "keep or delete"
--- a/tests/test-merge6
+++ b/tests/test-merge6
@@ -13,7 +13,7 @@ hg init
echo This is file foo1 > foo
echo This is file bar1 > bar
hg add foo bar
-hg commit -m "commit text" -d "0 0"
+hg commit -m "commit text" -d "1000000 0"
cd ..
hg clone A1 B1
@@ -21,11 +21,11 @@ hg clone A1 B1
cd A1
rm bar
hg remove bar
-hg commit -m "commit test" -d "0 0"
+hg commit -m "commit test" -d "1000000 0"
cd ../B1
echo This is file foo22 > foo
-hg commit -m "commit test" -d "0 0"
+hg commit -m "commit test" -d "1000000 0"
cd ..
hg clone A1 A2
@@ -34,13 +34,13 @@ hg clone B1 B2
cd A1
hg pull ../B1
hg update -m
-hg commit -m "commit test" -d "0 0"
+hg commit -m "commit test" -d "1000000 0"
echo bar should remain deleted.
hg manifest
cd ../B2
hg pull ../A2
hg update -m
-hg commit -m "commit test" -d "0 0"
+hg commit -m "commit test" -d "1000000 0"
echo bar should remain deleted.
hg manifest
--- a/tests/test-merge7
+++ b/tests/test-merge7
@@ -9,7 +9,7 @@ 2
3
EOF
hg add test.txt
-hg commit -m "Initial" -d "0 0"
+hg commit -m "Initial" -d "1000000 0"
# clone
cd ..
@@ -22,7 +22,7 @@ one
two
three
EOF
-hg commit -m "Numbers as words" -d "0 0"
+hg commit -m "Numbers as words" -d "1000000 0"
# change test-b
cd ../test-b
@@ -31,7 +31,7 @@ 1
2.5
3
EOF
-hg commit -m "2 -> 2.5" -d "0 0"
+hg commit -m "2 -> 2.5" -d "1000000 0"
# now pull and merge from test-a
hg pull ../test-a
@@ -43,7 +43,7 @@ two-point-five
three
EOF
rm -f *.orig
-hg commit -m "Merge 1" -d "0 0"
+hg commit -m "Merge 1" -d "1000000 0"
# change test-a again
cd ../test-a
@@ -52,7 +52,7 @@ one
two-point-one
three
EOF
-hg commit -m "two -> two-point-one" -d "0 0"
+hg commit -m "two -> two-point-one" -d "1000000 0"
# pull and merge from test-a again
cd ../test-b
--- a/tests/test-merge7.out
+++ b/tests/test-merge7.out
@@ -24,6 +24,8 @@ merging test.txt
resolving test.txt
file test.txt: my fc3148072371 other d40249267ae3 ancestor 8fe46a3eb557
merging test.txt failed!
+0 files updated, 0 files merged, 0 files removed, 1 files unresolved
+(branch merge, don't forget to commit)
one
<<<<<<<
two-point-five
@@ -37,33 +39,33 @@ three
2 16 15 2 2 8fe46a3eb557 01365c4cca56 000000000000
3 31 27 2 3 fc3148072371 7b013192566a 8fe46a3eb557
4 58 25 4 4 d40249267ae3 8fe46a3eb557 000000000000
-changeset: 4:40d11a4173a8
+changeset: 4:a070d41e8360
tag: tip
-parent: 2:96b70246a118
+parent: 2:faaea63e63a9
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: two -> two-point-one
-changeset: 3:50c3a7e29886
-parent: 1:d1e159716d41
-parent: 2:96b70246a118
+changeset: 3:451c744aabcc
+parent: 1:e409be6afcc0
+parent: 2:faaea63e63a9
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Merge 1
-changeset: 2:96b70246a118
-parent: 0:b1832b9d912a
+changeset: 2:faaea63e63a9
+parent: 0:095c92b91f1a
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Numbers as words
-changeset: 1:d1e159716d41
+changeset: 1:e409be6afcc0
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2 -> 2.5
-changeset: 0:b1832b9d912a
+changeset: 0:095c92b91f1a
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Initial
--- a/tests/test-permissions
+++ b/tests/test-permissions
@@ -3,7 +3,7 @@
hg init
echo foo > a
hg add a
-hg commit -m "1" -d "0 0"
+hg commit -m "1" -d "1000000 0"
hg verify
chmod -r .hg/data/a.d
hg verify 2>/dev/null || echo verify failed
@@ -11,5 +11,5 @@ chmod +r .hg/data/a.d
hg verify 2>/dev/null || echo verify failed
chmod -w .hg/data/a.d
echo barber > a
-hg commit -m "2" -d "0 0" 2>/dev/null || echo commit failed
+hg commit -m "2" -d "1000000 0" 2>/dev/null || echo commit failed
--- a/tests/test-pull
+++ b/tests/test-pull
@@ -10,7 +10,7 @@ hg verify
hg serve -p 20059 -d --pid-file=hg.pid
cd ..
-hg clone http://localhost:20059/ copy
+http_proxy= hg clone http://localhost:20059/ copy
cd copy
hg verify
hg co
--- a/tests/test-pull-permission
+++ b/tests/test-pull-permission
@@ -5,7 +5,7 @@ cd a
hg init
echo foo > b
hg add b
-hg ci -m "b" -d "0 0"
+hg ci -m "b" -d "1000000 0"
chmod -w .hg
--- a/tests/test-push-warn
+++ b/tests/test-push-warn
@@ -5,7 +5,7 @@ cd a
hg init
echo foo > t1
hg add t1
-hg commit -m "1" -d "0 0"
+hg commit -m "1" -d "1000000 0"
cd ..
hg clone a b
@@ -13,16 +13,16 @@ hg clone a b
cd a
echo foo > t2
hg add t2
-hg commit -m "2" -d "0 0"
+hg commit -m "2" -d "1000000 0"
cd ../b
echo foo > t3
hg add t3
-hg commit -m "3" -d "0 0"
+hg commit -m "3" -d "1000000 0"
hg push ../a
hg pull ../a
hg push ../a
hg up -m
-hg commit -m "4" -d "0 0"
+hg commit -m "4" -d "1000000 0"
hg push ../a
--- a/tests/test-rawcommit1
+++ b/tests/test-rawcommit1
@@ -2,32 +2,32 @@
hg --debug init
echo this is a1 > a
hg add a
-hg commit -m0 -d "0 0"
+hg commit -m0 -d "1000000 0"
echo this is b1 > b
hg add b
-hg commit -m1 -d "0 0"
+hg commit -m1 -d "1000000 0"
hg manifest 1
echo this is c1 > c
-hg rawcommit -p 1 -d "0 0" -m2 c
+hg rawcommit -p 1 -d "1000000 0" -m2 c
hg manifest 2
hg parents
rm b
-hg rawcommit -p 2 -d "0 0" -m3 b
+hg rawcommit -p 2 -d "1000000 0" -m3 b
hg manifest 3
hg parents
echo this is a22 > a
-hg rawcommit -p 3 -d "0 0" -m4 a
+hg rawcommit -p 3 -d "1000000 0" -m4 a
hg manifest 4
hg parents
echo this is c22 > c
-hg rawcommit -p 1 -d "0 0" -m5 c
+hg rawcommit -p 1 -d "1000000 0" -m5 c
hg manifest 5
hg parents
# merge, but no files changed
-hg rawcommit -p 4 -p 5 -d "0 0" -m6
+hg rawcommit -p 4 -p 5 -d "1000000 0" -m6
hg manifest 6
hg parents
# no changes what-so-ever
-hg rawcommit -p 6 -d "0 0" -m7
+hg rawcommit -p 6 -d "1000000 0" -m7
hg manifest 7
hg parents
--- a/tests/test-rawcommit1.out
+++ b/tests/test-rawcommit1.out
@@ -4,56 +4,56 @@ 54837d97f2932a8194e69745a280a2c11e61ff9c
05f9e54f4c9b86b09099803d8b49a50edcb4eaab 644 a
54837d97f2932a8194e69745a280a2c11e61ff9c 644 b
76d5e637cbec1bcc04a5a3fa4bcc7d13f6847c00 644 c
-changeset: 2:9f827976dae4
+changeset: 2:e110db3db549
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2
(the rawcommit command is deprecated)
05f9e54f4c9b86b09099803d8b49a50edcb4eaab 644 a
76d5e637cbec1bcc04a5a3fa4bcc7d13f6847c00 644 c
-changeset: 3:142428fbbcc5
+changeset: 3:0f9843914735
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 3
(the rawcommit command is deprecated)
d6e3c4976c13feb1728cd3ac851abaf7256a5c23 644 a
76d5e637cbec1bcc04a5a3fa4bcc7d13f6847c00 644 c
-changeset: 4:4d450f9aa680
+changeset: 4:909a3d1d3ee1
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 4
(the rawcommit command is deprecated)
05f9e54f4c9b86b09099803d8b49a50edcb4eaab 644 a
54837d97f2932a8194e69745a280a2c11e61ff9c 644 b
3570202ceac2b52517df64ebd0a062cb0d8fe33a 644 c
-changeset: 4:4d450f9aa680
+changeset: 4:909a3d1d3ee1
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 4
(the rawcommit command is deprecated)
d6e3c4976c13feb1728cd3ac851abaf7256a5c23 644 a
76d5e637cbec1bcc04a5a3fa4bcc7d13f6847c00 644 c
-changeset: 6:b4b8b9afa8cc
+changeset: 6:725fdd0728db
tag: tip
-parent: 4:4d450f9aa680
-parent: 5:a7925a42d0df
+parent: 4:909a3d1d3ee1
+parent: 5:f56d4c64ab98
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 6
(the rawcommit command is deprecated)
d6e3c4976c13feb1728cd3ac851abaf7256a5c23 644 a
76d5e637cbec1bcc04a5a3fa4bcc7d13f6847c00 644 c
-changeset: 7:f84d0b1b024e
+changeset: 7:2c11b55105cb
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 7
--- a/tests/test-remove
+++ b/tests/test-remove
@@ -4,14 +4,14 @@ hg init a
cd a
echo a > foo
hg add foo
-hg commit -m 1 -d "0 0"
+hg commit -m 1 -d "1000000 0"
rm foo
hg remove foo
-hg commit -m 2 -d "0 0"
-hg export 0
-hg export 1
-hg log -p -r 0
-hg log -p -r 1
+hg commit -m 2 -d "1000000 0"
+hg export 0 | sed -e "s/Thu Jan 01/Thu Jan 1/"
+hg export 1 | sed -e "s/Thu Jan 01/Thu Jan 1/"
+hg log -p -r 0 | sed -e "s/Thu Jan 01/Thu Jan 1/"
+hg log -p -r 1 | sed -e "s/Thu Jan 01/Thu Jan 1/"
cd ..
hg clone a b
--- a/tests/test-remove.out
+++ b/tests/test-remove.out
@@ -1,45 +1,45 @@
# HG changeset patch
# User test
-# Node ID b51ca55c20354097ca299529d18b5cd356976ba2
+# Node ID 8ba83d44753d6259db5ce6524974dd1174e90f47
# Parent 0000000000000000000000000000000000000000
1
-diff -r 000000000000 -r b51ca55c2035 foo
+diff -r 000000000000 -r 8ba83d44753d foo
--- /dev/null Thu Jan 1 00:00:00 1970 +0000
-+++ b/foo Thu Jan 1 00:00:00 1970 +0000
++++ b/foo Mon Jan 12 13:46:40 1970 +0000
@@ -0,0 +1,1 @@
+a
# HG changeset patch
# User test
-# Node ID 451c12a24e5a7336921b8d93e280837d7c2b4fc1
-# Parent b51ca55c20354097ca299529d18b5cd356976ba2
+# Node ID a1fce69c50d97881c5c014ab23f580f720c78678
+# Parent 8ba83d44753d6259db5ce6524974dd1174e90f47
2
-diff -r b51ca55c2035 -r 451c12a24e5a foo
---- a/foo Thu Jan 1 00:00:00 1970 +0000
+diff -r 8ba83d44753d -r a1fce69c50d9 foo
+--- a/foo Mon Jan 12 13:46:40 1970 +0000
+++ /dev/null Thu Jan 1 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-a
-changeset: 0:b51ca55c2035
+changeset: 0:8ba83d44753d
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 1
-diff -r 000000000000 -r b51ca55c2035 foo
+diff -r 000000000000 -r 8ba83d44753d foo
--- /dev/null Thu Jan 1 00:00:00 1970 +0000
-+++ b/foo Thu Jan 1 00:00:00 1970 +0000
++++ b/foo Mon Jan 12 13:46:40 1970 +0000
@@ -0,0 +1,1 @@
+a
-changeset: 1:451c12a24e5a
+changeset: 1:a1fce69c50d9
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2
-diff -r b51ca55c2035 -r 451c12a24e5a foo
---- a/foo Thu Jan 1 00:00:00 1970 +0000
+diff -r 8ba83d44753d -r a1fce69c50d9 foo
+--- a/foo Mon Jan 12 13:46:40 1970 +0000
+++ /dev/null Thu Jan 1 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-a
--- a/tests/test-rename
+++ b/tests/test-rename
@@ -8,7 +8,7 @@ echo d1/a1 > d1/d11/a1
echo d1/b > d1/b
echo d2/b > d2/b
hg add d1/a d1/b d1/ba d1/d11/a1 d2/b
-hg commit -m "1" -d "0 0"
+hg commit -m "1" -d "1000000 0"
echo "# rename a single file"
hg rename d1/d11/a1 d2/c
--- a/tests/test-revert
+++ b/tests/test-revert
@@ -4,7 +4,7 @@ hg init
echo 123 > a
echo 123 > c
hg add a c
-hg commit -m "first" -d "0 0" a c
+hg commit -m "first" -d "1000000 0" a c
echo 123 > b
echo %% should show b unknown
hg status
--- a/tests/test-revert-unknown
+++ b/tests/test-revert-unknown
@@ -5,11 +5,11 @@ touch unknown
touch a
hg add a
-hg ci -m "1" -d "0 0"
+hg ci -m "1" -d "1000000 0"
touch b
hg add b
-hg ci -m "2" -d "0 0"
+hg ci -m "2" -d "1000000 0"
echo %% Should show unknown
hg status
--- a/tests/test-ssh
+++ b/tests/test-ssh
@@ -26,7 +26,7 @@ echo "# creating 'remote'"
hg init remote
cd remote
echo this > foo
-hg ci -A -m "init" -d "0 0" foo
+hg ci -A -m "init" -d "1000000 0" foo
cd ..
@@ -43,7 +43,7 @@ hg pull -e ../dummyssh
echo "# local change"
echo bleah > foo
-hg ci -m "add" -d "0 0"
+hg ci -m "add" -d "1000000 0"
echo "# updating rc"
echo "default-push = ssh://user@dummy/remote" >> .hg/hgrc
--- a/tests/test-ssh.out
+++ b/tests/test-ssh.out
@@ -20,10 +20,10 @@ no changes found
# updating rc
# find outgoing
searching for changes
-changeset: 1:536411b157b4
+changeset: 1:c54836a570be
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: add
# push
@@ -34,10 +34,10 @@ remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 1 changes to 1 files
# check remote tip
-changeset: 1:536411b157b4
+changeset: 1:c54836a570be
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: add
checking changesets
--- a/tests/test-static-http
+++ b/tests/test-static-http
@@ -26,7 +26,7 @@ cd remote
hg init
echo foo > bar
hg add bar
-hg commit -m"test" -d"0 0"
+hg commit -m"test" -d "1000000 0"
hg tip
cd ..
--- a/tests/test-static-http.out
+++ b/tests/test-static-http.out
@@ -1,10 +1,10 @@
abort: Connection refused
255
ls: copy: No such file or directory
-changeset: 0:61c9426e69fe
+changeset: 0:53e17d176ae6
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: test
requesting all changes
--- a/tests/test-status
+++ b/tests/test-status
@@ -22,7 +22,7 @@ hg init repo2
cd repo2
touch modified removed deleted ignored
echo "ignored" > .hgignore
-hg ci -A -m 'initial checkin' -d "0 0"
+hg ci -A -m 'initial checkin' -d "1000000 0"
sleep 1 # make sure mtime is changed
touch modified added unknown ignored
hg add added
--- a/tests/test-tag
+++ b/tests/test-tag
@@ -3,18 +3,18 @@
hg init
echo a > a
hg add a
-hg commit -m "test" -d "0 0"
+hg commit -m "test" -d "1000000 0"
hg history
-hg tag -d "0 0" "bleah"
+hg tag -d "1000000 0" "bleah"
hg history
echo foo >> .hgtags
-hg tag -d "0 0" "bleah2" || echo "failed"
-hg tag -d "0 0" -r 0 "bleah2" 1 || echo "failed"
+hg tag -d "1000000 0" "bleah2" || echo "failed"
+hg tag -d "1000000 0" -r 0 "bleah2" 1 || echo "failed"
hg revert .hgtags
-hg tag -d "0 0" -r 0 "bleah0"
-hg tag -l -d "0 0" "bleah1" 1
+hg tag -d "1000000 0" -r 0 "bleah0"
+hg tag -l -d "1000000 0" "bleah1" 1
cat .hgtags
cat .hg/localtags
--- a/tests/test-tag.out
+++ b/tests/test-tag.out
@@ -1,19 +1,19 @@
-changeset: 0:acb14030fe0a
+changeset: 0:0acdaf898367
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: test
-changeset: 1:863197ef0378
+changeset: 1:c5c60883086f
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
-summary: Added tag bleah for changeset acb14030fe0a21b60322c440ad2d20cf7685a376
+date: Mon Jan 12 13:46:40 1970 +0000
+summary: Added tag bleah for changeset 0acdaf8983679e0aac16e811534eb49d7ee1f2b4
-changeset: 0:acb14030fe0a
+changeset: 0:0acdaf898367
tag: bleah
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: test
abort: working copy of .hgtags is changed (please commit .hgtags manually)
@@ -22,8 +22,8 @@ use of 'hg tag NAME [REV]' is deprecated
abort: use only one form to specify the revision
failed
use of 'hg tag NAME [REV]' is deprecated, please use 'hg tag [-r REV] NAME' instead
-acb14030fe0a21b60322c440ad2d20cf7685a376 bleah
-acb14030fe0a21b60322c440ad2d20cf7685a376 bleah0
-863197ef03781c4fc00276d83eb66c4cb9cd91df bleah1
+0acdaf8983679e0aac16e811534eb49d7ee1f2b4 bleah
+0acdaf8983679e0aac16e811534eb49d7ee1f2b4 bleah0
+c5c60883086f5526bd3e36814b94a73a4e75e172 bleah1
abort: '\n' cannot be used in a tag name
abort: ':' cannot be used in a tag name
--- a/tests/test-tags
+++ b/tests/test-tags
@@ -6,14 +6,14 @@ hg init
hg id
echo a > a
hg add a
-hg commit -m "test" -d "0 0"
+hg commit -m "test" -d "1000000 0"
hg co
hg identify
T=`hg tip -v | head -n 1 | cut -d : -f 3`
echo "$T first" > .hgtags
cat .hgtags
hg add .hgtags
-hg commit -m "add tags" -d "0 0"
+hg commit -m "add tags" -d "1000000 0"
hg tags
hg identify
echo bb > a
@@ -25,7 +25,7 @@ hg -v id
hg status
echo 1 > b
hg add b
-hg commit -m "branch" -d "0 0"
+hg commit -m "branch" -d "1000000 0"
hg id
hg co -m 1
hg id
--- a/tests/test-tags.out
+++ b/tests/test-tags.out
@@ -1,14 +1,14 @@
unknown
-acb14030fe0a tip
-acb14030fe0a21b60322c440ad2d20cf7685a376 first
-tip 1:b9154636be938d3d431e75a7c906504a079bfe07
-first 0:acb14030fe0a21b60322c440ad2d20cf7685a376
-b9154636be93 tip
+0acdaf898367 tip
+0acdaf8983679e0aac16e811534eb49d7ee1f2b4 first
+tip 1:8a3ca90d111dc784e6575d373105be12570e8776
+first 0:0acdaf8983679e0aac16e811534eb49d7ee1f2b4
+8a3ca90d111d tip
M a
-b9154636be93+ tip
-acb14030fe0a+ first
-acb14030fe0a21b60322c440ad2d20cf7685a376+ first
+8a3ca90d111d+ tip
+0acdaf898367+ first
+0acdaf8983679e0aac16e811534eb49d7ee1f2b4+ first
M a
-c8edf04160c7 tip
-c8edf04160c7+b9154636be93+ tip
+8216907a933d tip
+8216907a933d+8a3ca90d111d+ tip
M .hgtags
--- a/tests/test-undo
+++ b/tests/test-undo
@@ -5,7 +5,7 @@ cd t
hg init
echo a > a
hg add a
-hg commit -m "test" -d "0 0"
+hg commit -m "test" -d "1000000 0"
hg verify
hg parents
hg status
--- a/tests/test-undo.out
+++ b/tests/test-undo.out
@@ -3,10 +3,10 @@ checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 1 changesets, 1 total revisions
-changeset: 0:acb14030fe0a
+changeset: 0:0acdaf898367
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: test
rolling back last transaction
--- a/tests/test-unrelated-pull
+++ b/tests/test-unrelated-pull
@@ -5,7 +5,7 @@ cd a
hg init
echo 123 > a
hg add a
-hg commit -m "a" -u a -d "0 0"
+hg commit -m "a" -u a -d "1000000 0"
cd ..
mkdir b
@@ -13,7 +13,7 @@ cd b
hg init
echo 321 > b
hg add b
-hg commit -m "b" -u b -d "0 0"
+hg commit -m "b" -u b -d "1000000 0"
hg pull ../a
hg heads
--- a/tests/test-unrelated-pull.out
+++ b/tests/test-unrelated-pull.out
@@ -6,14 +6,14 @@ adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
(run 'hg update' to get a working copy)
-changeset: 1:9a79c33a9db3
+changeset: 1:bdcee5d51fa6
tag: tip
user: a
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: a
-changeset: 0:01f8062b2de5
+changeset: 0:f155ba1aa5ba
user: b
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: b
--- a/tests/test-up-local-change
+++ b/tests/test-up-local-change
@@ -6,7 +6,7 @@ cd r1
hg init
echo a > a
hg addremove
-hg commit -m "1" -d "0 0"
+hg commit -m "1" -d "1000000 0"
hg clone . ../r2
cd ../r2
@@ -19,7 +19,7 @@ cd ../r1
echo b > b
echo a2 > a
hg addremove
-hg commit -m "2" -d "0 0"
+hg commit -m "2" -d "1000000 0"
cd ../r2
hg -q pull ../r1
@@ -43,7 +43,7 @@ hg up 0
echo b2 > b
echo a3 > a
hg addremove
-hg commit -m "3" -d "0 0"
+hg commit -m "3" -d "1000000 0"
cd ../r2
hg -q pull ../r1
--- a/tests/test-up-local-change.out
+++ b/tests/test-up-local-change.out
@@ -1,5 +1,5 @@
adding a
-diff -r c19d34741b0a a
+diff -r 33aaa84a386b a
--- a/a
+++ b/a
@@ -1,1 +1,1 @@ a
@@ -7,9 +7,9 @@ diff -r c19d34741b0a a
+abc
adding b
M a
-changeset: 0:c19d34741b0a
+changeset: 0:33aaa84a386b
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 1
resolving manifests
@@ -21,10 +21,11 @@ getting b
merging a
resolving a
file a: my b789fdd96dc2 other d730145abbf9 ancestor b789fdd96dc2
-changeset: 1:1e71731e6fbb
+1 files updated, 1 files merged, 0 files removed, 0 files unresolved
+changeset: 1:802f095af299
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2
resolving manifests
@@ -32,16 +33,17 @@ resolving manifests
ancestor a0c8bcbbb45c local 1165e8bd193e remote a0c8bcbbb45c
remote deleted b
removing b
-changeset: 0:c19d34741b0a
+0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+changeset: 0:33aaa84a386b
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 1
abort: there is nothing to merge, just use 'hg update'
failed
-changeset: 0:c19d34741b0a
+changeset: 0:33aaa84a386b
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 1
resolving manifests
@@ -53,30 +55,31 @@ getting b
merging a
resolving a
file a: my b789fdd96dc2 other d730145abbf9 ancestor b789fdd96dc2
-changeset: 1:1e71731e6fbb
+1 files updated, 1 files merged, 0 files removed, 0 files unresolved
+changeset: 1:802f095af299
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2
-changeset: 1:1e71731e6fbb5b35fae293120dea6964371c13c6
+changeset: 1:802f095af299cde27a85b2f056aef3829870956c
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
files: a b
description:
2
-changeset: 0:c19d34741b0a4ced8e4ba74bb834597d5193851e
+changeset: 0:33aaa84a386bd609094aeb21a97c09436c482ef1
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
files: a
description:
1
-diff -r 1e71731e6fbb a
+diff -r 802f095af299 a
--- a/a
+++ b/a
@@ -1,1 +1,1 @@ a2
@@ -84,9 +87,9 @@ diff -r 1e71731e6fbb a
+abc
adding b
M a
-changeset: 1:1e71731e6fbb
+changeset: 1:802f095af299
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2
resolving manifests
@@ -113,19 +116,21 @@ file a: my d730145abbf9 other 13e0d5f949
merging b
resolving b
file b: my 1e88685f5dde other 61de8c7723ca ancestor 000000000000
-changeset: 1:1e71731e6fbb
+0 files updated, 2 files merged, 0 files removed, 0 files unresolved
+(branch merge, don't forget to commit)
+changeset: 1:802f095af299
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 2
-changeset: 2:83c51d0caff4
+changeset: 2:030602aee63d
tag: tip
-parent: 0:c19d34741b0a
+parent: 0:33aaa84a386b
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: 3
-diff -r 1e71731e6fbb a
+diff -r 802f095af299 a
--- a/a
+++ b/a
@@ -1,1 +1,1 @@ a2
--- a/tests/test-update-reverse
+++ b/tests/test-update-reverse
@@ -3,11 +3,11 @@
hg init
touch a
hg add a
-hg commit -m "Added a" -d "0 0"
+hg commit -m "Added a" -d "1000000 0"
touch main
hg add main
-hg commit -m "Added main" -d "0 0"
+hg commit -m "Added main" -d "1000000 0"
hg checkout 0
echo Main should be gone
@@ -15,10 +15,10 @@ ls
touch side1
hg add side1
-hg commit -m "Added side1" -d "0 0"
+hg commit -m "Added side1" -d "1000000 0"
touch side2
hg add side2
-hg commit -m "Added side2" -d "0 0"
+hg commit -m "Added side2" -d "1000000 0"
hg log
--- a/tests/test-update-reverse.out
+++ b/tests/test-update-reverse.out
@@ -1,37 +1,37 @@
Main should be gone
a
-changeset: 3:91ebc10ed028
+changeset: 3:ded32b0db104
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Added side2
-changeset: 2:b932d7dbb1e1
-parent: 0:c2eda428b523
+changeset: 2:92a816cea698
+parent: 0:537353581d3d
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Added side1
-changeset: 1:71a760306caf
+changeset: 1:221226fb2bd8
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Added main
-changeset: 0:c2eda428b523
+changeset: 0:537353581d3d
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Added a
Should have two heads, side2 and main
-changeset: 3:91ebc10ed028
+changeset: 3:ded32b0db104
tag: tip
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Added side2
-changeset: 1:71a760306caf
+changeset: 1:221226fb2bd8
user: test
-date: Thu Jan 1 00:00:00 1970 +0000
+date: Mon Jan 12 13:46:40 1970 +0000
summary: Added main
Should show a side1 side2
@@ -47,6 +47,7 @@ remote created main
getting main
removing side1
removing side2
+1 files updated, 0 files merged, 2 files removed, 0 files unresolved
Should only show a main
a
main
--- a/tests/test-walk
+++ b/tests/test-walk
@@ -17,7 +17,7 @@ echo fenugreek > fenugreek
echo fiddlehead > fiddlehead
echo glob:glob > glob:glob
hg addremove
-hg commit -m "commit #0" -d "0 0"
+hg commit -m "commit #0" -d "1000000 0"
hg debugwalk
cd mammals
hg debugwalk .