source: trunk/scripts/git-migration/git-migrate-fast.sh @ 2015

Last change on this file since 2015 was 2015, checked in by broder, 15 years ago

In the git import, deal with r316, r318 and the corresponding tag by
hand instead of through s-a-f-e.

  • Property svn:executable set to *
File size: 2.2 KB
Line 
1#!/bin/bash
2set -e
3
4SVN=${1:-/mit/xvm/svn}
5
6mako-render rules.mako > rules
7
8rm git -rf
9mkdir git
10cd git
11
12sed -n 's/^create repository // p' ../rules | while read repo; do
13    mkdir -p "$repo" && GIT_DIR="$repo" git init --bare
14done
15
16svn-all-fast-export --identity-map ../authors ../rules "$SVN"
17
18sed -n 's/^create repository // p' ../rules | while read repo; do
19    if [ -e "$repo/refs/heads/tags" ]; then
20        cp -a "$repo/refs/heads/tags/." "$repo/refs/tags"
21        rm -rf "$repo/refs/heads/tags"
22    fi
23done
24
25pushd packages/invirt-dev.git
26git tag sipb-xen-dev/13 sipb-xen-dev/14~2
27popd
28
29pushd packages/invirt-remote.git
30echo $(git rev-parse 0.2.0 invirt-remote-server invirt-remote-host) >> info/grafts
31git filter-branch --tag-name-filter cat -- ^invirt-remote-server ^invirt-remote-host --all
32rm -rf info/grafts refs/original refs/heads/invirt-remote-server refs/heads/invirt-remote-host
33popd
34
35pushd packages/invirt-console.git
36echo $(git rev-parse 0.2.0 0.2.0^ invirt-console-host) >> info/grafts
37git filter-branch --tag-name-filter cat -- ^0.2.0^ ^invirt-console-host --all
38rm -rf info/grafts refs/original refs/heads/invirt-console-host
39popd
40
41pushd packages/invirt-dns.git
42echo $(git rev-parse sipb-xen-dns/1~10 sipb-xen-dns/1~11 dns) >> info/grafts
43git filter-branch --tag-name-filter cat -- ^sipb-xen-dns/1~11 ^dns --all
44rm -rf info/grafts refs/original refs/heads/dns
45popd
46
47pushd packages/invirt-database-server.git
48git fetch ../invirt-database.git refs/tags/0.0.1:refs/heads/tmp
49echo $(git rev-parse 0.0.1 refs/heads/tmp^) >> info/grafts
50git filter-branch --tag-name-filter cat -- ^refs/heads/tmp --all
51rm -rf info/grafts refs/original refs/heads/tmp
52popd
53
54pushd packages/libyaml.git
55git fetch git://andersk.mit.edu/libyaml.git refs/tags/upstream/0.1.1:refs/tags/upstream/0.1.1 refs/tags/debian/0.1.1-1:refs/tags/debian/0.1.1-1
56git branch upstream upstream/0.1.1
57echo $(git rev-parse 0.1.1-1_andersk1 debian/0.1.1-1^0) >> info/grafts
58git filter-branch --tag-name-filter cat -- ^debian/0.1.1-1 --all
59rm -rf info/grafts refs/original
60popd
61
62pushd packages/python-routefs.git
63git fetch -t git://github.com/ebroder/python-routefs.git
64git branch -f upstream 1.0.1
65git branch -f master 1.0.1-1
66popd
67
68echo
69echo 'The Git migration was successful.'
Note: See TracBrowser for help on using the repository browser.