summaryrefslogtreecommitdiff
path: root/git/stash.sh
blob: 4a3eb99bfc6367cac01ee58763d05bfba0913c86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#! /bin/sh

# Assume this script never run via PATH.
#
self=`realpath $0`
. `dirname $self`/modules

wd=`pwd`

for i in $modules; do
  echo "stash $i" 1>&2
  cd $i

  if [ "$1" = "pop" -o "$1" = "apply" ]; then
    l=`git stash list`
    if [ -z "$l" ]; then
      cd $wd
      continue
    fi
  fi

  git stash $*

  if [ $? -ne 0 ]; then
    echo "stash FAILED" 1>&2
    exit 1
  fi

  cd $wd
done