threads / discuss / 12661

Whitespace on commit

Subject: Whitespace on commit

## tl;dr

3 messages between Mar 13, 2008 and Mar 13, 2008.

replies: 2people: 3as markdown or json

Kenneth P. Turvey· Mar 13, 2008, 03:38 UTC · lore

I keep getting annoying errors when I try to commit. Git complains that I have whitespace in the wrong places.

This is fine.. I even like it. What I don't like is having to change this stuff manually. Is there anyway to tell git to just fix the stuff and do the commit?

I've tried setting
apply.whitespace = fix 

in my .gitconfig, but that doesn't seem to help when doing commits. Is there another way to handle this?

Thanks!
-- 
Kenneth P. Turvey <kt-usenet@squeakydolphin.com>
Junio C Hamano· Mar 13, 2008, 03:52 UTC · re: Kenneth P. Turvey · lore

Re: Whitespace on commit

"Kenneth P. Turvey" <kt-usenet@squeakydolphin.com> writes:
Show 12 quoted lines
> I keep getting annoying errors when I try to commit.  Git complains that I
> have whitespace in the wrong places.  
>
> This is fine.. I even like it.  What I don't like is having to change this
> stuff manually.  Is there anyway to tell git to just fix the stuff and do
> the commit?  
>
> I've tried setting
>
> apply.whitespace = fix 
>
> in my .gitconfig, but that doesn't seem to help when doing commits.

Yeah, that is to protect yourself from whitespace mess _other people_ threw at you in a patch form.

You can ask git to fix your own stuff up, by pretending that you are that other person who made the mess, by doing:

	git diff HEAD >P.diff
        git reset --hard HEAD
        git apply --index --whitespace=fix P.diff
Andreas Ericsson· Mar 13, 2008, 07:34 UTC · re: Junio C Hamano · lore

Re: Whitespace on commit

Junio C Hamano wrote:
Show 25 quoted lines
> "Kenneth P. Turvey" <kt-usenet@squeakydolphin.com> writes:
> 
>> I keep getting annoying errors when I try to commit.  Git complains that I
>> have whitespace in the wrong places.  
>>
>> This is fine.. I even like it.  What I don't like is having to change this
>> stuff manually.  Is there anyway to tell git to just fix the stuff and do
>> the commit?  
>>
>> I've tried setting
>>
>> apply.whitespace = fix 
>>
>> in my .gitconfig, but that doesn't seem to help when doing commits.
> 
> Yeah, that is to protect yourself from whitespace mess _other people_
> threw at you in a patch form.
> 
> You can ask git to fix your own stuff up, by pretending that you are that
> other person who made the mess, by doing:
> 
> 	git diff HEAD >P.diff
>         git reset --hard HEAD
>         git apply --index --whitespace=fix P.diff
> 

I have exactly that (except my P.diff sits in /tmp under a different name) as an alias named wsfix. Here's how to make one of your own, Kenneth:

git config --global alias wsfix '!git diff HEAD >P.diff && git reset --hard HEAD && git apply --index --whitespace=fix P.diff && rm -f P.diff'

Note that there are no newlines in the above command. When you get the whitespace warnings, just run "git wsfix" and you'll be good to go.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

← back to recent threads