diff --git a/git-quiltimport.sh b/git-quiltimport.sh
index 84c8b8ef4fbfa55d503a10006f7f3cecee57391c..9a6ba2b9874e12d31adeba354d8d44436ceadaf3 100755 (executable)
--- a/git-quiltimport.sh
+++ b/git-quiltimport.sh
#!/bin/sh
OPTIONS_KEEPDASHDASH=
OPTIONS_SPEC="\
#!/bin/sh
OPTIONS_KEEPDASHDASH=
OPTIONS_SPEC="\
-git-quiltimport [options]
+git quiltimport [options]
--
n,dry-run dry run
author= author name and email address for patches without any
--
n,dry-run dry run
author= author name and email address for patches without any
fi
# Temporary directories
fi
# Temporary directories
-tmp_dir=.dotest
+tmp_dir="$GIT_DIR"/rebase-apply
tmp_msg="$tmp_dir/msg"
tmp_patch="$tmp_dir/patch"
tmp_info="$tmp_dir/info"
tmp_msg="$tmp_dir/msg"
tmp_patch="$tmp_dir/patch"
tmp_info="$tmp_dir/info"
commit=$(git rev-parse HEAD)
mkdir $tmp_dir || exit 2
commit=$(git rev-parse HEAD)
mkdir $tmp_dir || exit 2
-while read patch_name level garbage
+while read patch_name level garbage <&3
do
case "$patch_name" in ''|'#'*) continue;; esac
case "$level" in
do
case "$patch_name" in ''|'#'*) continue;; esac
case "$level" in
- -p*);;
+ -p*) ;;
''|'#'*)
level=;;
*)
''|'#'*)
level=;;
*)
fi
if [ -z "$dry_run" ] ; then
fi
if [ -z "$dry_run" ] ; then
- git apply --index -C1 $level "$tmp_patch" &&
+ git apply --index -C1 ${level:+"$level"} "$tmp_patch" &&
tree=$(git write-tree) &&
commit=$( (echo "$SUBJECT"; echo; cat "$tmp_msg") | git commit-tree $tree -p $commit) &&
git update-ref -m "quiltimport: $patch_name" HEAD $commit || exit 4
fi
tree=$(git write-tree) &&
commit=$( (echo "$SUBJECT"; echo; cat "$tmp_msg") | git commit-tree $tree -p $commit) &&
git update-ref -m "quiltimport: $patch_name" HEAD $commit || exit 4
fi
-done <"$QUILT_PATCHES/series"
+done 3<"$QUILT_PATCHES/series"
rm -rf $tmp_dir || exit 5
rm -rf $tmp_dir || exit 5