* Incrementally updating the former heads did not work right. Sometimes we have
authorHolger Freyther <zecke@selfish.org>
Sun, 13 Jan 2008 17:18:39 +0000 (17:18 +0000)
committerHolger Freyther <zecke@selfish.org>
Sun, 13 Jan 2008 17:18:39 +0000 (17:18 +0000)
  saved bogus data and it could be dangerous.
* Back-out this change and save the heads at the end of the script.

contrib/mtn2git/mtn2git.py

index db29edf..1de3010 100755 (executable)
@@ -430,10 +430,7 @@ def main(mtn_cli, db, rev):
         for head in heads:
             print >> sys.stderr, old_heads, head
             all_revs += ops.ancestry_difference(head, old_heads)
-            for rev in all_revs:
-                if not rev in branch_heads:
-                    branch_heads[rev] = []
-                branch_heads[rev].append(branch)
+        status.former_heads[branch] = heads
 
     
     sorted_revs = [rev for rev in ops.toposort(all_revs)]
@@ -443,10 +440,6 @@ def main(mtn_cli, db, rev):
         else:
             print >> sys.stderr, "Going to import revision ", rev
             fast_import(ops, parse_revision(ops, rev))
-        branches = branch_heads[rev]
-        for branch in branches:
-            status.former_heads[branch] = [rev]
-        
 
 if __name__ == "__main__":
     import optparse
@@ -471,3 +464,4 @@ if __name__ == "__main__":
         print >> sys.stderr, "Failed to open the status file"
     main(options.mtn, options.database, options.rev)
     status.store(options.status)
+