Index: /trunk/scripts/git-migration/rules.mako
===================================================================
--- /trunk/scripts/git-migration/rules.mako	(revision 1945)
+++ /trunk/scripts/git-migration/rules.mako	(revision 1946)
@@ -3,4 +3,5 @@
     svn = yaml.load(open('svn.yml'))
     packages = svn['packages']
+    trunks = svn['trunks']
     scripts = svn['scripts']
     quashes = svn['quashes']
@@ -118,35 +119,25 @@
 end match
 
-match /trunk/dhcp/
-  repository ${get_repo('sipb-xen-dhcp')}
-  branch ${get_branch('sipb-xen-dhcp')}
-  max revision 281
+% for trunk in trunks:
+%   if 'inclusive' in trunks[trunk]:
+match /trunk/${trunk}(/|$)
+%   else:
+match /trunk/${trunk}/
+%   endif
+  repository ${get_repo(trunks[trunk]['merge'])}
+%   if 'branch' in trunks[trunk]:
+  branch ${trunks[trunk]['branch']}
+%   else:
+  branch ${get_branch(trunks[trunk]['merge'])}
+%   endif
+%   if 'inclusive' in trunks[trunk]:
+  max revision ${trunks[trunk]['punt']}
+%   else:
+  max revision ${trunks[trunk]['punt'] - 1}
+%   endif
 end match
-
-match /trunk/web(/|$)
-  repository ${get_repo('sipb-xen-www')}
-  branch ${get_branch('sipb-xen-www')}
-  max revision 303
-end match
+% endfor
 
 match /trunk/vnc/tightvnc-1.3.9_javasrc.zip
-end match
-
-match /trunk/vnc/vnc_javasrc/
-  repository ${get_repo('sipb-xen-vnc-client')}
-  branch ${get_branch('sipb-xen-vnc-client')}
-  max revision 304
-end match
-
-match /trunk/vnc/vnc_server(/|$)
-  repository ${get_repo('sipb-xen-vnc-server')}
-  branch ${get_branch('sipb-xen-vnc-server')}
-  max revision 286
-end match
-
-match /trunk/dns/
-  repository ${get_repo('sipb-xen-dns')}
-  branch dns
-  max revision 268
 end match
 
Index: /trunk/scripts/git-migration/svn.yml
===================================================================
--- /trunk/scripts/git-migration/svn.yml	(revision 1945)
+++ /trunk/scripts/git-migration/svn.yml	(revision 1946)
@@ -83,4 +83,15 @@
   xvm-munin-config: {}
   xvm-prodconfig: {}
+trunks:
+  dhcp:
+    {punt: 282, merge: sipb-xen-dhcp}
+  dns:
+    {punt: 269, merge: sipb-xen-dns, branch: dns}
+  vnc/vnc_javasrc:
+    {punt: 305, merge: sipb-xen-vnc-client}
+  vnc/vnc_server:
+    {punt: 286, inclusive: yes, merge: sipb-xen-vnc-server}
+  web:
+    {punt: 303, inclusive: yes, merge: sipb-xen-www}
 scripts:
 - git-migration
