]> ToastFreeware Gitweb - gregoa/movein.git/blobdiff - movein
better error handling (thanks Joseph Liu)
[gregoa/movein.git] / movein
diff --git a/movein b/movein
index d2013da5db48de9b63500ca3b821de9c30707b73..233f8866f6fa5a9653d9f309f57bfca0e55d09f3 100755 (executable)
--- a/movein
+++ b/movein
@@ -151,7 +151,7 @@ login() {
 
 execin() {
     local REPO
-    if [ $# -lt 1 ]; then
+    if [ $# -lt 2 ]; then
        usage
     fi
 
@@ -177,7 +177,7 @@ add() {
             echo $LOCAL_REPO already exists
             exit 1
         else
-            trap "rm -rf $LOCAL_REPO" 0
+            trap "unset GIT_DIR; unset GIT_WORK_TREE; rm -rf $LOCAL_REPO" 0
             mkdir "$LOCAL_REPO"
             export GIT_DIR="$LOCAL_REPO"
             git init --bare
@@ -207,6 +207,9 @@ listremote() {
 
 locate() {
     local REPO
+    if [ $# -ne 1 ]; then
+        usage
+    fi
     for REPO in $($0 list); do
         (cd /; $0 exec "$REPO" git ls-files | sed -nr "/$1/{s/^/$REPO:/p}")
     done
@@ -229,7 +232,7 @@ new() {
         echo $LOCAL_REPO already exists
         exit 1
     else
-        trap "rm -rf $LOCAL_REPO" 0
+        trap "unset GIT_DIR; unset GIT_WORK_TREE; rm -rf $LOCAL_REPO" 0
         mkdir -p "$LOCAL_REPO"
 
         ssh $GIT_HOST "