rewrite-log
author mpm@selenic.com
Wed, 29 Jun 2005 14:10:17 -0800
changeset 525 337163e4d4b9
parent 141 5f471a75d607
permissions -rw-r--r--
[PATCH] Perform clone in place -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 [PATCH] Perform clone in place From: Bryan O'Sullivan <bos@serpentine.com> This is a rewrite of one of my earlier clone cleanup patches. This patch only does one thing - make clone operate in place. It depends on safe-clone.patch. Don't have clone use os.chdir. Instead, do everything in place. manifest hash: cf7cf24f8fa1120b609b0beee4281bc236e484c0 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCwxxJywK+sNU5EO8RAjnlAJ44B1jhFvuYF3uNDH6qWDKaqgURuwCdFeFo Y9tjLx6TLCBWT146h21YEGA= =E1n/ -----END PGP SIGNATURE-----
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
141
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     1
#!/usr/bin/env python
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     2
import sys, os
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     3
from mercurial import hg
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     4
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     5
f = sys.argv[1]
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     6
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     7
r1 = hg.revlog(open, f + ".i", f + ".d")
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     8
r2 = hg.revlog(open, f + ".i2", f + ".d2")
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
     9
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    10
tr = hg.transaction(open, "journal")
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    11
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    12
for i in xrange(r1.count()):
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    13
    n = r1.node(i)
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    14
    p1, p2 = r1.parents(n)
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    15
    l = r1.linkrev(n)
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    16
    t = r1.revision(n)
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    17
    n2 = r2.addrevision(t, tr, l, p1, p2)
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    18
tr.close()
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    19
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    20
os.rename(f + ".i", f + ".i.old")
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    21
os.rename(f + ".d", f + ".d.old")
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    22
os.rename(f + ".i2", f + ".i")
5f471a75d607 Simple script to recompress a log file
mpm@selenic.com
parents:
diff changeset
    23
os.rename(f + ".d2", f + ".d")