git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* rebase -i reword runs pre-commit hook with curious results
@ 2012-02-01 21:50 Neal Kreitzinger
  2012-02-02  5:43 ` Andrew Wong
  0 siblings, 1 reply; 3+ messages in thread
From: Neal Kreitzinger @ 2012-02-01 21:50 UTC (permalink / raw)
  To: git

I'm confused on why and/or how interactive rebase runs the pre-commit hook 
when doing the reword command for commit (a).  My pre-commit hook does 
keyword expansion on the worktree copy of the modified index files and then 
re-adds them to effect a user-date-stamp when committed.  However, the 
user-date-stamps don't get updated when reword runs the pre-commit hook. 
IOW, the pre-commit hook does not get the same results as if I were doing a 
commandline git-commit of a modified index.  I suppose reword is protecting 
the preservation of all the contents of commit (a) except the commit message 
which makes sense, but I don't understand how it goes about doing this while 
still attempting to somehow honor the pre-commit hook.  (git 1.7.1)

v/r,
neal 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: rebase -i reword runs pre-commit hook with curious results
  2012-02-01 21:50 rebase -i reword runs pre-commit hook with curious results Neal Kreitzinger
@ 2012-02-02  5:43 ` Andrew Wong
  2012-02-02 16:39   ` Neal Kreitzinger
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Wong @ 2012-02-02  5:43 UTC (permalink / raw)
  To: Neal Kreitzinger; +Cc: git

On 12-02-01 4:50 PM, Neal Kreitzinger wrote:
> I'm confused on why and/or how interactive rebase runs the pre-commit hook
> when doing the reword command for commit (a).
When you do a "reword" in "rebase -i", it basically does a "cherry-pick" 
of that commit first, then it does a "commit --amend". And your 
pre-commit hook should've been run during the amend.
> IOW, the pre-commit hook does not get the same results as if I were doing a
> commandline git-commit of a modified index.
Does your pre-commit hook work when doing a "commit --amend"? I'm not 
sure if you can actually modify the author (or committer) date from 
inside a pre-commit hook.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: rebase -i reword runs pre-commit hook with curious results
  2012-02-02  5:43 ` Andrew Wong
@ 2012-02-02 16:39   ` Neal Kreitzinger
  0 siblings, 0 replies; 3+ messages in thread
From: Neal Kreitzinger @ 2012-02-02 16:39 UTC (permalink / raw)
  To: Andrew Wong; +Cc: Neal Kreitzinger, git

On 2/1/2012 11:43 PM, Andrew Wong wrote:
> On 12-02-01 4:50 PM, Neal Kreitzinger wrote:
>> I'm confused on why and/or how interactive rebase runs the pre-commit
>> hook
>> when doing the reword command for commit (a).
> When you do a "reword" in "rebase -i", it basically does a "cherry-pick"
> of that commit first, then it does a "commit --amend". And your
> pre-commit hook should've been run during the amend.
>> IOW, the pre-commit hook does not get the same results as if I were
>> doing a
>> commandline git-commit of a modified index.
> Does your pre-commit hook work when doing a "commit --amend"? I'm not
> sure if you can actually modify the author (or committer) date from
> inside a pre-commit hook.
(We have a comment on "line 1" in our source with $User:$ $Date:$ 
keywords that the pre-commit hooks expands to insert "whoami" and "date" 
values to effect a user-datestamp at commit time.  We do this to enforce 
conflicts on same-file edits.)  Now that I understand that the 
cherry-pick takes place first to effect the transfer of the tree content 
and then a subsequent git-commit --amend of "no changes" takes place to 
effect the reword opportunity, the behavior makes sense now.  (We use 
git-commit --amend to reword commit messages also.)  The pre-commit hook 
runs prior to commit message editor just like commandline git-commit 
--amend (and plain git-commit).

thanks!

v/r,
neal

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-02-02 16:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-01 21:50 rebase -i reword runs pre-commit hook with curious results Neal Kreitzinger
2012-02-02  5:43 ` Andrew Wong
2012-02-02 16:39   ` Neal Kreitzinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).