forked from pool/quilt
23339e0c98
version. This fixes handling of corner cases. - quilt-format-options-pass-through.patch, pop-add-auto-refresh.patch, push-add-auto-refresh.patch: Implement auto-refreshing when applying or unapplying patches, as suggested by Tomas Cech and Takashi Iwai. OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/quilt?expand=0&rev=87
88 lines
2.1 KiB
Diff
88 lines
2.1 KiB
Diff
From: Jean Delvare <jdelvare@suse.de>
|
|
Subject: push: Add --refresh option
|
|
Upstream: Submitted (2014-10-01)
|
|
|
|
Add an option to automatically refresh each patch after is was
|
|
successfully applied.
|
|
---
|
|
quilt/push.in | 11 +++++++++--
|
|
test/auto-refresh.test | 22 ++++++++++++++++++++++
|
|
2 files changed, 31 insertions(+), 2 deletions(-)
|
|
|
|
--- a/quilt/push.in
|
|
+++ b/quilt/push.in
|
|
@@ -21,7 +21,7 @@ setup_colors
|
|
|
|
usage()
|
|
{
|
|
- printf $"Usage: quilt push [-afqv] [--merge[=merge|diff3]] [--leave-rejects] [--color[=always|auto|never]] [num|patch]\n"
|
|
+ printf $"Usage: quilt push [-afqv] [--merge[=merge|diff3]] [--leave-rejects] [--color[=always|auto|never]] [--refresh] [num|patch]\n"
|
|
if [ x$1 = x-h ]
|
|
then
|
|
printf $"
|
|
@@ -53,6 +53,9 @@ be used.
|
|
|
|
--color[=always|auto|never]
|
|
Use syntax coloring (auto activates it only if the output is a tty).
|
|
+
|
|
+--refresh
|
|
+ Automatically refresh every patch after it was successfully applied.
|
|
"
|
|
exit 0
|
|
else
|
|
@@ -294,7 +297,7 @@ check_duplicate_patches()
|
|
return 1
|
|
}
|
|
|
|
-options=`getopt -o fqvam::h --long fuzz:,merge::,leave-rejects,color:: -- "$@"`
|
|
+options=`getopt -o fqvam::h --long fuzz:,merge::,leave-rejects,color::,refresh -- "$@"`
|
|
|
|
if [ $? -ne 0 ]
|
|
then
|
|
@@ -352,6 +355,9 @@ do
|
|
usage ;;
|
|
esac
|
|
shift 2 ;;
|
|
+ --refresh)
|
|
+ opt_refresh=1
|
|
+ shift ;;
|
|
--)
|
|
shift
|
|
break ;;
|
|
@@ -412,6 +418,7 @@ do
|
|
then
|
|
exit 1
|
|
fi
|
|
+ [ -z "$opt_refresh" ] || quilt_command refresh $QUILT_REFRESH_ARGS
|
|
[ -n "$opt_quiet" ] || echo
|
|
done \
|
|
| cleanup_patch_output \
|
|
--- a/test/auto-refresh.test
|
|
+++ b/test/auto-refresh.test
|
|
@@ -25,3 +25,25 @@ $ quilt pop -a --refresh
|
|
> Restoring a
|
|
>
|
|
> No patches applied
|
|
+
|
|
+$ quilt push -a --refresh
|
|
+> Applying patch patches/a.patch
|
|
+> patching file a
|
|
+> Patch patches/a.patch is unchanged
|
|
+>
|
|
+> Applying patch patches/b.patch
|
|
+> patching file b
|
|
+> Patch patches/b.patch is unchanged
|
|
+>
|
|
+> Now at patch patches/b.patch
|
|
+
|
|
+$ quilt pop -a --refresh
|
|
+> Patch patches/b.patch is unchanged
|
|
+> Removing patch patches/b.patch
|
|
+> Restoring b
|
|
+>
|
|
+> Patch patches/a.patch is unchanged
|
|
+> Removing patch patches/a.patch
|
|
+> Restoring a
|
|
+>
|
|
+> No patches applied
|