aboutsummaryrefslogtreecommitdiff
path: root/home
diff options
context:
space:
mode:
Diffstat (limited to 'home')
-rwxr-xr-xhome/list.sh9
-rwxr-xr-xhome/repack.sh15
-rwxr-xr-xhome/update.sh16
3 files changed, 21 insertions, 19 deletions
diff --git a/home/list.sh b/home/list.sh
new file mode 100755
index 0000000..c1cba62
--- /dev/null
+++ b/home/list.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+#shellcheck disable=SC2038
+find . -type d -name branches \
+ | xargs -n1 dirname \
+ | while read -r repo ; do
+ if ! [ "$(basename "$repo")" = ".git" ] ; then
+ echo "$repo";
+ fi
+ done
diff --git a/home/repack.sh b/home/repack.sh
index 25419ea..e494390 100755
--- a/home/repack.sh
+++ b/home/repack.sh
@@ -2,12 +2,9 @@
set -e
set -x
-repos="$(find "$HOME" -type d -iname '*.git')"
-
-IFS="
-"
-
-for repo in $repos ; do
- cd "$repo"
- git repack
-done
+#shellcheck disable=SC2086
+$HOME/list.sh \
+ | while read -r repo ; do
+ cd "$repo"
+ git repack
+ done
diff --git a/home/update.sh b/home/update.sh
index b6a0412..e494390 100755
--- a/home/update.sh
+++ b/home/update.sh
@@ -2,13 +2,9 @@
set -e
set -x
-repos="$(find $HOME -type d -iname '*.git')"
-
-IFS="
-"
-
-for repo in $repos ; do
- cd $repo
- git update-server-info
-done
-
+#shellcheck disable=SC2086
+$HOME/list.sh \
+ | while read -r repo ; do
+ cd "$repo"
+ git repack
+ done