#!/bin/bash # mk_git_tar # Generic tool for making tarballs from git # Run this script in SOURCES # $ ./mk_git_tar <projectname> <url> <tar_compression> [-m|-a] # Options: # -m runs "make -f Makefile.cvs" or "make -f Makefile.svn" # -a runs ./autogen.sh # Examples :- # $ ./mk_git_tar LogbookKonni_pi git://github.com/konnibe/LogbookKonni-1.2.git tar.gz name=$1 url=$2 tartype=$3 [[ -d git ]] || mkdir git cd git if [[ -d $name ]]; then cd $name git pull cd .. else git clone $url $name fi cd .. rm -rf $name && cp -rf git/$name/ . cd $name cd .. # Create tarball case $tartype in tar.gz) opt=z ;; tar.bz2) opt=j ;; tar.xz) opt=J ;; tar) opt= ;; *) echo "Unsupported compression type" exit 1 esac echo "Please wait creating tarball..." [[ -f $name.$tartype ]] && rm $name.$tartype tar -c"$opt"f $name.$tartype $name/ --exclude-vcs [[ $? = 0 ]] && chmod 644 $name.$tartype && \ echo "Written $name.$tartype"