Compare commits

..
1 Commits
Author SHA1 Message Date
BlubbFish c6d02a0a71 Update update.sh 2020-06-15 16:52:11 +02:00
2 changed files with 33 additions and 14 deletions
+32 -13
View File
@@ -1,19 +1,38 @@
#!/bin/bash
function look_for_update() { function look_for_update() {
if [[ $1 == ./.* ]] || [[ $1 == "." ]]; then if [[ $1 == ./.git ]] || [[ $1 == "." ]]; then
return echo "Ignore $1"
fi return
printf -v quotedFile '%q' "$1" fi
if [[ -f $quotedFile/update.sh ]]; then WithoutPrefix=$(echo -n $1 | cut -c 2-)
echo "Switch to subdir $1 and run update.sh" if grep -qx "$WithoutPrefix" .gitignore; then
cd "$1" echo "Ignore $1, because it's in .gitignore"
bash -c ./update.sh return
else fi
echo "Pull $quotedFile" printf -v FolderNameEscaped '%q' "$1"
cd "$1" if [[ -f $1/update.sh ]]; then
git pull echo "Switch to subdir $1 and run update.sh"
cd "$1"
bash -c "./update.sh nobreak"
else
if [[ -f $1/.git ]]
then
echo "Pull $1"
cd "$1"
git pull
else
echo "Checkout master for $1"
git submodule update --init -- "$1"
cd "$1"
git checkout master
fi
fi fi
} }
export -f look_for_update export -f look_for_update
find . -maxdepth 1 -type d -exec bash -c 'look_for_update "$0"' {} \; find . -maxdepth 1 -type d -exec bash -c 'look_for_update "$0"' {} \;
read -p "Press return"
if [ -z $1 ]; then
read -p "Press return"
fi