]> thyrsus.com Git - src.git/commitdiff
Document how to do branch deletes Regression test passes.
authorEric S. Raymond <esr@thyrsus.com>
Thu, 13 Nov 2014 18:26:37 +0000 (13:26 -0500)
committerEric S. Raymond <esr@thyrsus.com>
Thu, 13 Nov 2014 18:26:37 +0000 (13:26 -0500)
We'll need a bit more infrastructure.

src

diff --git a/src b/src
index 035cd3c016c0edf12d0bcc2af385f4e267edd59b..f78e342b58a225b64e05dd546b6fd5162a6e0b30 100755 (executable)
--- a/src
+++ b/src
@@ -1150,7 +1150,21 @@ class RCS:
         do_or_die("rcs -n{0}:{1} {2}".format(tagname, revision, arg))
     def delete_branch(self, branchname, arg):
         "Delete a specified branch."
+        # From rcs(1): -orange deletes ("outdates") the revisions
+        # given by range.  A range consisting of a single revision
+        # number means that revision. A range consisting of a branch
+        # number means the latest revision on that branch.  A range of
+        # the form rev1:rev2 means revisions rev1 to rev2 on the same
+        # branch, :rev means from the beginning of the branch
+        # containing rev up to and including rev, and rev: means from
+        # revision rev to the end of the branch containing rev.  None
+        # of the outdated revisions can have branches or locks.
+        #
+        # What we need do is find the branch tip, then walk back to
+        # just after the first point where it joins another branch,
+        # then do a delete to end of branch from there.
         croak("branch deletion is not yet supported")
+        #do_or_die("rcs -o{0}: {1}".format(revision, arg)
     def set_branch(self, name, revision, metadata, arg):
         "Set the specified branch to be default, creating it if required."
         if name in metadata.symbols: