Re: [PATCH] Implement git-quiltimport (take 2)
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:26
ebiederm@xmission.com (Eric W. Biederman) writes:
Junio C Hamano [off-list ref] writes:quoted
What's the expected workflow for you to work on a 1300 patch series you get from Andrew in the next installment to deal with 88 unattributed patches? Answer the question 88 times and make sure you get the answers right every time? Or abort and hand-edit them to help mailinfo to notice the correct attribution and re-run?For the internal consumption case it isn't a big deal. I can specify --author with something bogus and it works.
Yes.
quoted
I know I am guilty of suggesting "going interactive", but I have a feeling that having an optional file that maps patch-name to author might be easier to work with. If the old patches are recycled in the updated -mm set, you probably can reuse the mapping for them, adding entries for newly introduced "unnamed" patches as needed.Short of getting the script where it has a sane restart in the middle mode going interactive and asking questions makes a lot of sense. Especially with smaller trees.
Yes perhaps on smaller trees, but that does not mean much. For
smaller trees and/or smaller patch series almost anything would
do.
How about doing something like this, so that the user can record
the fixup information, especially with --dry-run patch? Then
the next round from the updated -mm tree the user would not have
to retype them again ("then..fi" part should be indented in the
final version, but I did not want indentation changes to
distract you):
# Parse the author information
export GIT_AUTHOR_NAME=$(sed -ne 's/Author: //p' "$tmp_info")
export GIT_AUTHOR_EMAIL=$(sed -ne 's/Email: //p' "$tmp_info")
+ already_tried_fixup=
while test -z "$GIT_AUTHOR_EMAIL" && test -z "$GIT_AUTHOR_NAME" ; do
if [ -n "$quilt_author" ] ; then
GIT_AUTHOR_NAME="$quilt_author_name";
GIT_AUTHOR_EMAIL="$quilt_author_email";
else
+ if test -z "$already_tried_fixup"
+ then
+ patch_author=`grep author-fixup "$patch_name"`
+ already_tried_fixup=t
+ fi
+ if test -z "$patch_author"
+ then
echo "No author found in $patch_name";
echo "---"
cat $tmp_msg
echo -n "Author: ";
read patch_author
+ fi
echo "$patch_author"
For Andrews tree before I play anymore with technical solutions I need to talk to Andrew and see if we can improve the situation upstream. Possibly with a quilt-audit script that finds problem patches.
Yes, that sounds very sensible.