git update index question

4 messages, 2 authors, 2016-06-15 · open the first message on its own page

git update index question

From: Gonzalo Garramuno <hidden>
Date: 2016-06-15 22:43:42

Hi.  I'm new to git but have been using it successfully for about three 
months now and love it.

I've run into my first problem (or, more specifically) lack of 
understanding.

I'm currently working on linux.

After some modifications of my source code with a script and doing a 
commit with qgit, it seems some spaces at the end of those changed lines 
got added.

Now, whenever I try to do a commit, the result is that git aborts with
* trailing whitespace (line XXX).
That is, it fails due to git's pre-commit perl hook.

Now, I've modified and changed the offending lines, but redoing the 
commit the problem persists.

After loooking into it, I realized the issue is git's index file.  If 
git-diff-index is called without --cached, the diff matches what's on 
disk and works as I expect.  However, the pre-commit hook calls it with 
--cached which leads to the problem.

Thus, since I don't want to modify the pre-commit hook, the question is 
what's the proper way to rebuild git's index file for all the files that 
were to be committed but weren't due to the abort.

I've tried git-update-index with most of the flags with no success.  I 
only got it to update the index properly when I specifically specified a 
filename with the problem, but I have a lot of files with the issue and 
git already knows about them so I was hoping for a better method.






-- 
Gonzalo Garramuño

Film Aura
A New Dawn in Media Companies

gga@filmaura.com
http://www.filmaura.com

Re: git update index question

From: Lars Hjemli <hidden>
Date: 2016-06-15 22:43:42

On 10/17/07, Gonzalo Garramuno [off-list ref] wrote:
what's the proper way to rebuild git's index file for all the files that
were to be committed but weren't due to the abort.
Have you tried 'git commit -a'? It will run update-index on all
modified files prior to executing the hook.

Btw: If you want to inspect your changes for offending whitespace,
'git diff --color' and  'git diff --cached --color' are your friends.
And if you give up, there is also 'git commit -a --no-verify'.

--
larsh

Re: git update index question

From: Gonzalo Garramuno <hidden>
Date: 2016-06-15 22:43:42

Lars Hjemli wrote:
On 10/17/07, Gonzalo Garramuno [off-list ref] wrote:
quoted
what's the proper way to rebuild git's index file for all the files that
were to be committed but weren't due to the abort.
Have you tried 'git commit -a'? It will run update-index on all
modified files prior to executing the hook.

Btw: If you want to inspect your changes for offending whitespace,
'git diff --color' and  'git diff --cached --color' are your friends.
And if you give up, there is also 'git commit -a --no-verify'.
Thanks.  I found out the root of my problem was actually something else. 
  I had incorrectly done a chmod a+x on the pre-commit hook when all my 
previous commits had not been using it, so I think the pre-commit was 
actually catching not my new fix but what was already in the repository.
git-commit -a had no effect due to that.

But it's good to know about the --no-verify option, thou.

-- 
Gonzalo Garramuño

Film Aura
A New Dawn in Media Companies

gga@filmaura.com
http://www.filmaura.com

Re: git update index question

From: Lars Hjemli <hidden>
Date: 2016-06-15 22:43:42

On 10/17/07, Gonzalo Garramuno [off-list ref] wrote:
I had incorrectly done a chmod a+x on the pre-commit hook when all my
previous commits had not been using it, so I think the pre-commit was
actually catching not my new fix but what was already in the repository.
That sounds wrong: the (default) pre-commit hook only verifies the
_new_ content, not the content in HEAD.  Is there any chance your
.git/hooks/pre-commit script has been tampered with?

--
larsh
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help