threads / patch / 30365

patchHandle empty patches and patches with only a header.

Subject: [GUILT] [PATCH] Handle empty patches and patches with only a header.

## tl;dr

3 messages between Apr 30, 2012 and May 2, 2012. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Per Cederqvist· Apr 30, 2012, 10:29 UTC · lore

"git apply --numstat" in Git 1.7.10 gives an error message unless the patch contains a diff, so don't attempt to apply it unless we find a

Signed-off-by: Per Cederqvist <cederp@opera.com>
---
 guilt |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Show changes to guilt +1 −1
diff --git a/guilt b/guilt
index 5d619c5..66a671a 100755
--- a/guilt
+++ b/guilt
@@ -622,7 +622,7 @@ push_patch()
 		cd_to_toplevel
 
 		# apply the patch if and only if there is something to apply
-		if [ `git apply --numstat "$p" | wc -l` -gt 0 ]; then
+		if grep -q '^diff ' "$p" && [ `git apply --numstat "$p" | wc -l` -gt 0 ]; then
 			if [ "$bail_action" = abort ]; then
 				reject=""
 			fi
-- 
1.7.10
Jeff Sipek· Apr 30, 2012, 16:48 UTC · re: Per Cederqvist · lore

Re: [GUILT] [PATCH] Handle empty patches and patches with only a header.

On Mon, Apr 30, 2012 at 12:29:55PM +0200, Per Cederqvist wrote:
> "git apply --numstat" in Git 1.7.10 gives an error message unless the
> patch contains a diff, so don't attempt to apply it unless we find a
Find a what?  Such a cliff-hanger! :)
I assume you mean find a '^diff'.
I'll fix up the commit message before applying.
Thanks,
Jeff.
Show 21 quoted lines
> Signed-off-by: Per Cederqvist <cederp@opera.com>
> ---
>  guilt |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/guilt b/guilt
> index 5d619c5..66a671a 100755
> --- a/guilt
> +++ b/guilt
> @@ -622,7 +622,7 @@ push_patch()
>  		cd_to_toplevel
>  
>  		# apply the patch if and only if there is something to apply
> -		if [ `git apply --numstat "$p" | wc -l` -gt 0 ]; then
> +		if grep -q '^diff ' "$p" && [ `git apply --numstat "$p" | wc -l` -gt 0 ]; then
>  			if [ "$bail_action" = abort ]; then
>  				reject=""
>  			fi
> -- 
> 1.7.10
> 
-- 
Keyboard not found!
Press F1 to enter Setup
Per Cederqvist· May 2, 2012, 06:27 UTC · re: Jeff Sipek · lore

Re: [GUILT] [PATCH] Handle empty patches and patches with only a header.

On 04/30/2012 06:48 PM, Jeff Sipek wrote:
Show 7 quoted lines
> On Mon, Apr 30, 2012 at 12:29:55PM +0200, Per Cederqvist wrote:
>> "git apply --numstat" in Git 1.7.10 gives an error message unless the
>> patch contains a diff, so don't attempt to apply it unless we find a
>
> Find a what?  Such a cliff-hanger! :)
>
> I assume you mean find a '^diff'.

Yes. Initially, I searched for "@@" and the commit message said "diff hunk", but that heuristic failed if you had a patch that just changed the mode of a single file. So I changed the patch to search for "^diff" instead, and apparently got distracted while editing the commit message.

     /cederp
Show 28 quoted lines
> I'll fix up the commit message before applying.
>
> Thanks,
>
> Jeff.
>
>> Signed-off-by: Per Cederqvist<cederp@opera.com>
>> ---
>>   guilt |    2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/guilt b/guilt
>> index 5d619c5..66a671a 100755
>> --- a/guilt
>> +++ b/guilt
>> @@ -622,7 +622,7 @@ push_patch()
>>   		cd_to_toplevel
>>
>>   		# apply the patch if and only if there is something to apply
>> -		if [ `git apply --numstat "$p" | wc -l` -gt 0 ]; then
>> +		if grep -q '^diff ' "$p"&&  [ `git apply --numstat "$p" | wc -l` -gt 0 ]; then
>>   			if [ "$bail_action" = abort ]; then
>>   				reject=""
>>   			fi
>> --
>> 1.7.10
>>
>

← back to recent threads