diff options
Diffstat (limited to 'makesrc.sh')
-rwxr-xr-x | makesrc.sh | 15 |
1 files changed, 12 insertions, 3 deletions
@@ -3,8 +3,9 @@ NAME=$(basename $PWD) OWNER=$(sed -n '/^%global gh_owner/{s/.* //;p}' $NAME.spec) PROJECT=$(sed -n '/^%global gh_project/{s/.* //;p}' $NAME.spec) +COMMIT=$(sed -n '/^%global gh_commit/{s/.* //;p}' $NAME.spec) +TAG=$(sed -n '/^%global gh_tag/{s/.* //;p}' $NAME.spec) VERSION=$(sed -n '/^Version:/{s/.* //;p}' $NAME.spec) -SHORT=${COMMIT:0:7} if [ -f $NAME-$VERSION.tgz ]; then echo Skip $NAME-$VERSION.tgz @@ -12,8 +13,16 @@ else echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION\n" echo "Cloning..." - rm -rf $PROJECT-$COMMIT - git clone --recursive --branch v$VERSION https://github.com/$OWNER/$PROJECT.git $PROJECT-$VERSION + rm -rf $PROJECT-$VERSION + + if [ -z "$TAG" ]; then + git clone --recursive https://github.com/$OWNER/$PROJECT.git $PROJECT-$VERSION + pushd $PROJECT-$VERSION + git checkout $COMMIT || exit 1 + popd + else + git clone --recursive --branch $TAG https://github.com/$OWNER/$PROJECT.git $PROJECT-$VERSION + fi echo "Archiving..." tar czf $NAME-$VERSION.tgz --exclude .git $PROJECT-$VERSION |