Skip to contentSkip to conversation

Hook after pull ?

DISCUSSION Claudio Scordino 3 participants 5 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

Hi all.

Does any hook being called after the pull (that means, after fetch or merge) ?

If no, does exist any easy way of creating such hook ?

Many thanks in advance,

Claudio

#1 lore raw
Quoted 4 lines · Claudio Scordino

Hi all.

Does any hook being called after the pull (that means, after fetch or merge) ?

There are some

Quoted 2 lines

If no, does exist any easy way of creating such hook ?

What for? What do you want to do?

#2 lore raw
Quoted 7 lines · Alex Riesen
Quoted 4 lines · Claudio Scordino

Hi all.

Does any hook being called after the pull (that means, after fetch or merge) ?

There are some

Which one of those inside the .git/hooks directory is called afret a pull?

Quoted 6 lines
Quoted 3 lines

If no, does exist any easy way of creating such hook ?

What for? What do you want to do?

I just need my script to be called after a pull. My script just sends an email saying that the repository has been pulled (I already did it for the push).

Thanks,

Claudio

#3 lore raw

Claudio Scordino, Wed, Jul 11, 2007 17:29:19 +0200:

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

If no, does exist any easy way of creating such hook ?

What for? What do you want to do?

I just need my script to be called after a pull. My script just sends an email saying that the repository has been pulled (I already did it for the push).

Ach, on _remote_ repo. Where it is _pulled_from_.
There are none. You can catch log output of git-daemon, but... Isn't it a bit extreme? A fetch (part of a pull) is *very* common operation, sometime you'll get a *real* lot of mail.

P.S. BTW, there is no hooks for pull in local (where it is pulled into): it is not needed, you already control everything what happens. But it is not your situation, as far I understand.

#4 lore raw
Quoted 9 lines · Alex Riesen

Claudio Scordino, Wed, Jul 11, 2007 17:29:19 +0200:

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

If no, does exist any easy way of creating such hook ?

What for? What do you want to do?

I just need my script to be called after a pull. My script just sends an email saying that the repository has been pulled (I already did it for the push).

Quoted 7 lines

Ach, on _remote_ repo. Where it is _pulled_from_.
There are none. You can catch log output of git-daemon, but... Isn't it a bit extreme? A fetch (part of a pull) is *very* common operation, sometime you'll get a *real* lot of mail.

P.S. BTW, there is no hooks for pull in local (where it is pulled into): it is not needed, you already control everything what happens.

I am not sure I am reading this exchange correctly, but I think Claudio wants to say

	$ git pull repo.or.cz:somebody/project.git/ the-branch 

and have it automatically send e-mail to the somebody (obviously the hook script needs to have a mapping from the repository to whom to notify). As the daemon side cannot tell if the local is only fetching (and possibly discarding the result) or pulling (resulting in a merge), I do not think it is reasonable to do the hooking on the remote side. It has to be done on the local if ever.

As you said, the local side has all the control, so in the strictest sense there is no need for post-* hook, but we do support a few hooks for local operations, such as post-commit.

(Sam Vilain CC'ed as he wanted to have hooks during and after a merge).

I suspect that a post merge hook (that also is called in fast-forward case) would be a good thing to have if people would want to do this kind of thing often. The hook most likely wants to get the ORIG_HEAD and the updated HEAD as parameters, and can act differently based on the nature of the merge (e.g. was it fast-forward, was it a merge between the commits made by the same committer as myself, etc.)