# HG changeset patch # User Benoit Boissinot # Date 1142403004 -3600 # Node ID 295010327271f7925e46505379110544bb7f2dd2 # Parent 16750010813d23a67daa41d408a3518ccdcbb46d# Parent 2f500a4b6e994419e3de6966ab2d37003167f167 merge with crew diff --git a/contrib/hgk.py b/contrib/hgk.py --- 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()) diff --git a/doc/hg.1.txt b/doc/hg.1.txt --- 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. diff --git a/mercurial/bundlerepo.py b/mercurial/bundlerepo.py 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 + +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) + diff --git a/mercurial/commands.py b/mercurial/commands.py --- 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, diff --git a/mercurial/hg.py b/mercurial/hg.py --- 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) diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py --- 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): diff --git a/mercurial/revlog.py b/mercurial/revlog.py --- 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) diff --git a/mercurial/ui.py b/mercurial/ui.py --- 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): diff --git a/mercurial/util.py b/mercurial/util.py --- 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 diff --git a/tests/README b/tests/README --- 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 diff --git a/tests/md5sum.py b/tests/md5sum.py 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) diff --git a/tests/run-tests b/tests/run-tests --- 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 diff --git a/tests/test-addremove b/tests/test-addremove --- 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" diff --git a/tests/test-archive b/tests/test-archive --- 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 diff --git a/tests/test-backwards-remove b/tests/test-backwards-remove --- 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 diff --git a/tests/test-bad-pull b/tests/test-bad-pull --- 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 $! diff --git a/tests/test-basic b/tests/test-basic --- 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 diff --git a/tests/test-basic.out b/tests/test-basic.out --- 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 diff --git a/tests/test-cat b/tests/test-cat --- 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 diff --git a/tests/test-cat.out b/tests/test-cat.out --- 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 diff --git a/tests/test-clone b/tests/test-clone --- 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 diff --git a/tests/test-clone.out b/tests/test-clone.out --- 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 diff --git a/tests/test-command-template b/tests/test-command-template --- 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 ' +hg commit -l b -d '1000000 0' -u 'User Name ' 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 ' +hg commit -l c -d '1100000 0' -u 'A. N. Other ' 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 diff --git a/tests/test-command-template.out b/tests/test-command-template.out --- 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 diff --git a/tests/test-commit b/tests/test-commit --- 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 diff --git a/tests/test-conflict b/tests/test-conflict --- 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 diff --git a/tests/test-conflict.out b/tests/test-conflict.out --- 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 diff --git a/tests/test-confused-revert b/tests/test-confused-revert --- 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 diff --git a/tests/test-copy b/tests/test-copy --- 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 diff --git a/tests/test-copy.out b/tests/test-copy.out --- 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 diff --git a/tests/test-diffdir b/tests/test-diffdir --- 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 diff --git a/tests/test-diffdir.out b/tests/test-diffdir.out --- 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 @@ diff --git a/tests/test-empty-dir b/tests/test-empty-dir --- 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 diff --git a/tests/test-empty-dir.out b/tests/test-empty-dir.out --- 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 diff --git a/tests/test-encode b/tests/test-encode --- 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 diff --git a/tests/test-excessive-merge b/tests/test-excessive-merge --- 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 diff --git a/tests/test-excessive-merge.out b/tests/test-excessive-merge.out --- 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 diff --git a/tests/test-filebranch b/tests/test-filebranch --- 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 diff --git a/tests/test-filebranch.out b/tests/test-filebranch.out --- 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 diff --git a/tests/test-flags b/tests/test-flags --- 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 diff --git a/tests/test-flags.out b/tests/test-flags.out --- 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--- diff --git a/tests/test-hook b/tests/test-hook --- 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 diff --git a/tests/test-hook.out b/tests/test-hook.out --- 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 diff --git a/tests/test-locate b/tests/test-locate --- 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 diff --git a/tests/test-locate.out b/tests/test-locate.out --- 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 diff --git a/tests/test-merge-revert b/tests/test-merge-revert --- 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 diff --git a/tests/test-merge-revert.out b/tests/test-merge-revert.out --- 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 diff --git a/tests/test-merge-revert2 b/tests/test-merge-revert2 --- 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 diff --git a/tests/test-merge-revert2.out b/tests/test-merge-revert2.out --- 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 diff --git a/tests/test-merge1 b/tests/test-merge1 --- 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 diff --git a/tests/test-merge2 b/tests/test-merge2 --- 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 diff --git a/tests/test-merge3 b/tests/test-merge3 --- 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" diff --git a/tests/test-merge4 b/tests/test-merge4 --- 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" diff --git a/tests/test-merge5 b/tests/test-merge5 --- 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" diff --git a/tests/test-merge6 b/tests/test-merge6 --- 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 diff --git a/tests/test-merge7 b/tests/test-merge7 --- 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 diff --git a/tests/test-merge7.out b/tests/test-merge7.out --- 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 diff --git a/tests/test-permissions b/tests/test-permissions --- 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 diff --git a/tests/test-pull b/tests/test-pull --- 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 diff --git a/tests/test-pull-permission b/tests/test-pull-permission --- 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 diff --git a/tests/test-push-warn b/tests/test-push-warn --- 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 diff --git a/tests/test-rawcommit1 b/tests/test-rawcommit1 --- 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 diff --git a/tests/test-rawcommit1.out b/tests/test-rawcommit1.out --- 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 diff --git a/tests/test-remove b/tests/test-remove --- 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 diff --git a/tests/test-remove.out b/tests/test-remove.out --- 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 diff --git a/tests/test-rename b/tests/test-rename --- 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 diff --git a/tests/test-revert b/tests/test-revert --- 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 diff --git a/tests/test-revert-unknown b/tests/test-revert-unknown --- 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 diff --git a/tests/test-ssh b/tests/test-ssh --- 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 diff --git a/tests/test-ssh.out b/tests/test-ssh.out --- 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 diff --git a/tests/test-static-http b/tests/test-static-http --- 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 .. diff --git a/tests/test-static-http.out b/tests/test-static-http.out --- 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 diff --git a/tests/test-status b/tests/test-status --- 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 diff --git a/tests/test-tag b/tests/test-tag --- 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 diff --git a/tests/test-tag.out b/tests/test-tag.out --- 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 diff --git a/tests/test-tags b/tests/test-tags --- 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 diff --git a/tests/test-tags.out b/tests/test-tags.out --- 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 diff --git a/tests/test-undo b/tests/test-undo --- 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 diff --git a/tests/test-undo.out b/tests/test-undo.out --- 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 diff --git a/tests/test-unrelated-pull b/tests/test-unrelated-pull --- 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 diff --git a/tests/test-unrelated-pull.out b/tests/test-unrelated-pull.out --- 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 diff --git a/tests/test-up-local-change b/tests/test-up-local-change --- 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 diff --git a/tests/test-up-local-change.out b/tests/test-up-local-change.out --- 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 diff --git a/tests/test-update-reverse b/tests/test-update-reverse --- 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 diff --git a/tests/test-update-reverse.out b/tests/test-update-reverse.out --- 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 diff --git a/tests/test-walk b/tests/test-walk --- 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 .