Blame scripts/splitone2

Bernhard M. Wiedemann 4a4d0d
#!/bin/bash -e
Bernhard M. Wiedemann 4a4d0d
set -x
Bernhard M. Wiedemann 4a4d0d
pkg=$1
Bernhard M. Wiedemann 4a4d0d
if [[ -z "$pkg" ]] ; then
Bernhard M. Wiedemann 4a4d0d
    echo "usage: $0 PKG"
Bernhard M. Wiedemann 4a4d0d
fi
Bernhard M. Wiedemann 4a4d0d
first=$(echo $pkg | cut -c1 | tr A-Z a-z)
Bernhard M. Wiedemann 4a4d0d
p=$(echo packages/$first*/$pkg)
Bernhard M. Wiedemann 4a4d0d
b=pkg_$pkg
Bernhard M. Wiedemann 4a4d0d
if [ -e $p/.git ] ; then
Bernhard M. Wiedemann 4a4d0d
    echo "$pkg already has a git repo"
Bernhard M. Wiedemann 4a4d0d
    # FIXME find if bad repo => delete
Bernhard M. Wiedemann 4a4d0d
    commitlines=$(cd $p && git log|grep ^commit\ | wc -l)
Bernhard M. Wiedemann 4a4d0d
    if [ "$FORCE" = 1 -o "$commitlines" -gt 5000 ] ; then
Bernhard M. Wiedemann 4a4d0d
        rm -rf $p/.git
Bernhard M. Wiedemann 4a4d0d
    else
Bernhard M. Wiedemann 4a4d0d
        if ! [ -e ~/openSUSE/$p/.git ] ; then
Bernhard M. Wiedemann 4a4d0d
            rm -rf ~/openSUSE/$p/.git
Bernhard M. Wiedemann 4a4d0d
            cp -al $p/.git ~/openSUSE/$p
Bernhard M. Wiedemann 4a4d0d
        fi
Bernhard M. Wiedemann 4a4d0d
        ( cd $p ; git push -u origin master)
Bernhard M. Wiedemann 4a4d0d
    exit 0
Bernhard M. Wiedemann 4a4d0d
    fi
Bernhard M. Wiedemann 4a4d0d
fi
Bernhard M. Wiedemann 4a4d0d
pushd $p
Bernhard M. Wiedemann 4a4d0d
git init
Bernhard M. Wiedemann 4a4d0d
#git remote add merged "../../.."
Bernhard M. Wiedemann 4a4d0d
git remote add origin https://code.opensuse.org/package/$pkg
Bernhard M. Wiedemann 4a4d0d
cp -al ../../../.git/objects/* .git/objects/
Bernhard M. Wiedemann 4a4d0d
( cd ../../../ ; git fast-export --no-data master -- $p/ ) > /tmp/f
Bernhard M. Wiedemann 274164
cat /tmp/f | perl -pe "s! \\Q$p\\E"'/([^/]*)$! $1!' | git fast-import
Bernhard M. Wiedemann 4a4d0d
git reset --hard master
Bernhard M. Wiedemann 4a4d0d
git gc --prune=now
Bernhard M. Wiedemann 4a4d0d
if ! git fetch origin ; then
Bernhard M. Wiedemann 4a4d0d
    (cd ../../../ && scripts/pagure-new-package $pkg)
Bernhard M. Wiedemann 4a4d0d
fi
Bernhard M. Wiedemann 4a4d0d
for i in 1 ; do git pushf -u origin master ||: ; done
Bernhard M. Wiedemann 4a4d0d
popd
Bernhard M. Wiedemann 4a4d0d
scripts/pagure-set-projectoptions $pkg
Bernhard M. Wiedemann 4a4d0d
rm -rf ~/openSUSE/$p/.git
Bernhard M. Wiedemann 4a4d0d
cp -al $p/.git ~/openSUSE/$p
Bernhard M. Wiedemann 4a4d0d
git pull --rebase prod master