summaryrefslogtreecommitdiffstats
path: root/bin/git/git-svn-abandon-cleanup
blob: 2e2a5475ddf609e2eaafc5b8735e23d7bd7c5fc7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/sh

# strip svk and git-svn noise, retaining tags
git filter-branch --tag-name-filter cat --msg-filter "git svn-abandon-msg-filter" -- --all

# remove the backup refs
git for-each-ref --format='%(refname)' refs/original/ refs/remotes/svn/ | while read ref; do
    git update-ref -d "$ref"
done

# ditch all pre-conversion objects forcefully
git reflog expire --all --expire=now
git gc --aggressive

git prune
git fsck --full