git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Implement a --dry-run option to git-quiltimport

From
Eric W. Biederman <ebiederm@xmission.com>
Date
May 17, 2006, 20:10 UTC
Message-ID
<m1r72s2z0u.fsf_-_@ebiederm.dsl.xmission.com>
In-Reply-To
<7vsln8cwn6.fsf@assigned-by-dhcp.cox.net>

Since large quilt trees like -mm can easily have patches without clear authorship information, add a --dry-run option to make the problem patches easy to find.

---

This patch should make it easy to communicate to Andrew and others exactly which patches there are problems with, and should make it possible to easily edit those patches before they are imported.

 Documentation/git-quiltimport.txt |    8 +++++++-
 git-quiltimport.sh                |   24 ++++++++++++++++++------
 2 files changed, 25 insertions(+), 7 deletions(-)
cb0ff8090e1492f177a521b01cf987c16b125d81
diff --git a/Documentation/git-quiltimport.txt b/Documentation/git-quiltimport.txt
index e694537..97f4071 100644
--- a/Documentation/git-quiltimport.txt
+++ b/Documentation/git-quiltimport.txt
@@ -9,7 +9,7 @@ git-quiltimport - Applies a quilt patchs
 SYNOPSIS
 --------
 [verse]
-'git-quiltimport' [--author <author>] [--patches <dir>]
+'git-quiltimport' [--dry-run] [--author <author>] [--patches <dir>]
 
 
 DESCRIPTION
@@ -29,6 +29,12 @@ preserved as the 1 line subject in the g
 
 OPTIONS
 -------
+--dry-run::
+	Walk through the patches in the series and warn
+	if we cannot find all of the necessary information to commit
+	a patch.  At the time of this writing only missing author
+	information is warned about.
+
 --author Author Name <Author Email>::
 	The author name and email address to use when no author
 	information can be found in the patch description.
diff --git a/git-quiltimport.sh b/git-quiltimport.sh
index be43f9d..476e078 100644
--- a/git-quiltimport.sh
+++ b/git-quiltimport.sh
@@ -1,8 +1,9 @@
 #!/bin/sh
-USAGE='--author <author> --patches </path/to/quilt/patch/directory>'
+USAGE='--dry-run --author <author> --patches </path/to/quilt/patch/directory>'
 SUBDIRECTORY_ON=Yes
 . git-sh-setup
 
+dry_run=""
 quilt_author=""
 while case "$#" in 0) break;; esac
 do
@@ -19,6 +20,11 @@ do
 		shift
 		;;
 
+	--dry-run)
+		shift
+		dry_run=1
+		;;
+
 	--pa=*|--pat=*|--patc=*|--patch=*|--patche=*|--patches=*)
 		QUILT_PATCHES=$(expr "$1" : '-[^=]*\(.*\)')
 		shift
@@ -75,8 +81,12 @@ for patch_name in $(cat "$QUILT_PATCHES/
 		if [ -n "$quilt_author" ] ; then
 			GIT_AUTHOR_NAME="$quilt_author_name";
 			GIT_AUTHOR_EMAIL="$quilt_author_email";
+	    	elif [ -n "$dry_run" ]; then
+			echo "No author found in $patch_name" >&2;
+			GIT_AUTHOR_NAME="dry-run-not-found";
+			GIT_AUTHOR_EMAIL="dry-run-not-found";
 		else
-			echo "No author found in $patch_name";
+			echo "No author found in $patch_name" >&2;
 			echo "---"
 			cat $tmp_msg
 			echo -n "Author: ";
@@ -98,9 +108,11 @@ for patch_name in $(cat "$QUILT_PATCHES/
 		SUBJECT=$(echo $patch_name | sed -e 's/.patch$//')
 	fi
 
-	git-apply --index -C1 "$tmp_patch" &&
-	tree=$(git-write-tree) &&
-	commit=$((echo "$SUBJECT"; echo; cat "$tmp_msg") | git-commit-tree $tree -p $commit) &&
-	git-update-ref HEAD $commit || exit 4
+	if [ -z "$dry_run" ] ; then
+		git-apply --index -C1 "$tmp_patch" &&
+		tree=$(git-write-tree) &&
+		commit=$((echo "$SUBJECT"; echo; cat "$tmp_msg") | git-commit-tree $tree -p $commit) &&
+		git-update-ref HEAD $commit || exit 4
+	fi	
 done
 rm -rf $tmp_dir || exit 5
-- 
1.3.2.g5041c-dirty
Previous: Eric W. BiedermanNext: Linus Torvalds
Message 23 of 24 in “Implement git-quiltimport”
  1. Implement git-quiltimportEric W. Biederman, May 16, 2006
  2. Linus TorvaldsMay 16, 2006
  3. Eric W. BiedermanMay 16, 2006
  4. Junio C HamanoMay 16, 2006
  5. Eric W. BiedermanMay 17, 2006
  6. Junio C HamanoMay 17, 2006
  7. Implement git-quiltimport (take 2)Eric W. Biederman, May 17, 2006
  8. Junio C HamanoMay 17, 2006
  9. Eric W. BiedermanMay 17, 2006
  10. Junio C HamanoMay 17, 2006
  11. Eric W. BiedermanMay 18, 2006
  12. Greg KHMay 19, 2006
  13. Eric W. BiedermanMay 20, 2006
  14. Greg KHMay 20, 2006
  15. Eric W. BiedermanMay 21, 2006
  16. Junio C HamanoMay 21, 2006
  17. Eric W. BiedermanMay 21, 2006
  18. Junio C HamanoMay 21, 2006
  19. Eric W. BiedermanMay 21, 2006
  20. Greg KHJun 1, 2006
  21. Eric W. BiedermanJun 2, 2006
  22. Eric W. BiedermanMay 19, 2006
  23. Implement a --dry-run option to git-quiltimportEric W. Biederman, May 17, 2006
  24. Linus TorvaldsMay 17, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.