while args and args[0].startswith("-"):
diffopts += " " + args.pop(0)
for arg in args:
- diffspec = ""
+ diffspec1 = diffspec2 = ""
if revspec is not None:
master = History(arg)
revspec = master.resolve(revspec)
- diffspec += "-r" + master.revno_to_rcs(revspec[0])
+ diffspec1 += master.revno_to_rcs(revspec[0])
if len(revspec) > 1:
- diffspec += " -r" + master.revno_to_rcs(revspec[1])
+ diffspec2 += master.revno_to_rcs(revspec[1])
with lifted(arg):
- # The || : suppresses the error return from diff(1)
- do_or_die("rcsdiff -q {0} {1} {2} || :".format(diffspec, diffopts, arg),loud=True)
+ backend.diff(diffspec1, diffspec2, diffopts, arg)
def list_tags(*args):
(revspec, args) = preamble("tag", args)
"Copy a file and its history to a target directory."
# Using cp(1) evades cross-filesystem issues
do_or_die("cp {0} {1} && cp {2} {3]/{4}".format(arg, target, self.master(arg), target, repodir))
+ def diff(diffspec1, diffspec2, diffopts, arg):
+ "Report a diff."
+ # The || : suppresses the error return from diff(1)
+ if diffspec1:
+ diffspec1 = "-r" + diffspec1
+ if diffspec2:
+ diffspec2 = "-r" + diffspec1
+ do_or_die("rcsdiff -q {0} {1} {2} || :".format(diffspec, diffopts, arg),loud=True)
+
if __name__ == "__main__":
command = list(sys.argv[1:])