diff options
author | Shawn O. Pearce <spearce@spearce.org> | 2007-03-10 03:28:16 -0500 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-03-11 22:56:03 -0700 |
commit | f43cd49fb82b0eee10b88833b58edd711fe8298d (patch) | |
tree | 80310d2aa2fc7480bc25c6223e186cf12385e6b6 /revision.h | |
parent | 1d9e8b56fe3a0360bf61ce633827af8fa9a7013c (diff) | |
download | git-f43cd49fb82b0eee10b88833b58edd711fe8298d.tar.gz git-f43cd49fb82b0eee10b88833b58edd711fe8298d.tar.xz |
Change {pre,post}-receive hooks to use stdin
Sergey Vlasov, Andy Parkins and Alex Riesen all pointed out that it
is possible for a single invocation of receive-pack to be given more
refs than the OS might allow us to pass as command line parameters
to a single hook invocation.
We don't want to break these up into multiple invocations (like
xargs might do) as that makes it impossible for the pre-receive
hook to verify multiple related ref updates occur at the same time,
and it makes it harder for post-receive to send out a single batch
notification.
Instead we pass the reference data on a pipe connected to the
hook's stdin, supplying one ref per line to the hook. This way a
single hook invocation can obtain an infinite amount of ref data,
without bumping into any operating system limits.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'revision.h')
0 files changed, 0 insertions, 0 deletions