>
Linedata Services (UK) Ltd Registered Office: Bishopsgate Court, 4-12 Norton Folgate, London, E1 6DB Registered in England and Wales No 3027851 VAT Reg No 778499447 -----Original Message----- > From: Bastien Semene [mailto:bsem...@cyanide-studio.com] > Sent: 21 January 2010 14:07 > To: users@subversion.apache.org > Subject: post-commit hook stderr not marshalled back > > Hi list, > > I currently can't get the stderr output of the post-commit > hook script back to the client. > > The goal of this part of this post-commit hook script is to > update a specific working copy when someone commit on a > particular folder, and the commiter to verify the version of > this working copy. > > Everything works fine except that the client (Tortoise) > doesn't display the version of the working copy. > > To display the new version of the working copy, I've done a > nasty hack to redirect the stdout to stderr so svn should > marshalled back the message to the client as described in the > documentation : > "If the post-commit hook returns a nonzero exit status, the > commit will not be aborted since it has already completed. > However, anything that the hook printed to stderr will be > marshalled back to the client, making it easier to diagnose > hook failures." > > This is the interesting part of my script : > " > #!/bin/sh > [...] > /usr/bin/grep revision -f $1/hooks/revision 1>&2 exit 1 " > > When I add 2>test before 1>&2, it works, so stdout is > correctly redirected to stderr. The exit 1 should correctly > send a nonzero exit status. > So, I don't know what's wrong. > > If someone can help this will be great. :) Why don't you just redirect directly to stderr like /usr/bin/grep revision -f $1/hooks/revision > stderr And shouldn't exit 1 be on another line?