* 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).