X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=archive.sh;h=5f8a0d2954f6875cefef35f1fdacda95a8eed7a7;hb=b1c443c9ab5b960e08e079863d4c679f226871b6;hp=985cc51ea4d7a2f48957fb1bb7993d1d8912e732;hpb=5b59dfd4b86ca165c34815c45dbed6eb45928038;p=config%2Fdotfiles.git diff --git a/archive.sh b/archive.sh index 985cc51..5f8a0d2 100755 --- a/archive.sh +++ b/archive.sh @@ -21,22 +21,32 @@ # along with this program. If not, see . +set -e + git_clone() { - git clone "$1" "$2" > /dev/null - cwd=`pwd` - cd "$2" && git remote rm origin && git gc && cd "$cwd" + git clone "$1" "$2" >/dev/null + ( cd "$2" && git remote rm origin && git gc ) } + +# Don't overwrite an existing file/directory. +if test -e tmp; then + echo 'tmp/ already exists!' + exit 1 +fi + git_clone . tmp/dotfiles for name in browser shell vcs vim x11; do - echo cloning $name to tmp/ + test -d $name || continue + + echo "cloning $name to tmp/" git_clone $name tmp/dotfiles/$name done archive=dotfiles.tar.gz -echo creating $archive +echo "creating $archive" tar cf tmp/$archive -C tmp -z dotfiles -echo moving $archive to . +echo "moving $archive to ." mv tmp/$archive . rm -rf tmp