Re: Hooks
From: Brendan Farr-Gaynor <brendan_at_resolutionim.com>
Date: Mon, 14 Dec 2009 21:10:28 -0500
So I think I'm a little bit closer, I had to checkout the repository
#!/bin/sh
# POST-COMMIT HOOK
#REPOS="$1"
#mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
echo `date +"%Y%m%d-%H:%M:%S"` >> /var/log/svn_commit
-- Brendan Farr-Gaynor On 2009-12-14, at 8:57 PM, Ryan Schmidt wrote: > > On Dec 14, 2009, at 18:33, Brendan Farr-Gaynor wrote: > >> SVN newbie here. I'm wondering if there is anyone out there running >> running Subversion on OS X Server (10.6)? > > Most assuredly. > > >> I'm trying to use Subversion as a team web development solution and >> need to have committed files moved to our central apache web root >> for web browsing. I see this is a popular thing that people are >> looking for, but I'm having trouble getting my hook scripts to run >> and I'm sure it's got to be a permissions issue or something. >> >> Based on some tutorials I've found in different places I've done >> the following: >> >> I created a C program in XCode similar to this (update_svn): >> >> #include <stddef.h> >> #include <stdlib.h> >> #include <unistd.h> >> int main(void) >> { >> execl("/usr/bin/svn", "svn", "update", "--username", >> "YOURSVNUSER", "--password", "YOURSVNPASSWD", >> "/Library/WebServer/", (const char *) NULL); >> return(EXIT_FAILURE); >> } > > I have no reason to believe it won't work, but why a C program, out > of curiosity? Wouldn't a 1-line shell script have done the trick? > That's what I've used in the past. > > >> Created a post-commit script in my /hooks directory that has this: >> >> #/bin/sh >> /Library/WebServer/update_svn >> >> Then modified the permissions as such: >> >> $ chown www /Library/WebServer/update_svn >> $ chmod +s /Library/WebServer/update_svn >> >> $ chmod +s /myrepo/project/hooks/post-commit > > Why +s? I wouldn't expect you to need that. What you do need is +x. > Have you added that already? > > >> However, it doesn't seem to run (files aren't moved) and I'm >> perplexed as to how to debug this, is there a log file somewhere? >> I'm not seeing anything in /var/log/ for svn? > > There is no log. Write one yourself if you want one, e.g. > > $ cat post-commit > #/bin/sh > /Library/WebServer/update_svn 2>>/var/log/update_svn.log > > >> Does the above look right? Am I missing something? Has anyone out >> there had to do this on an OS X server that could provide some >> guidance? > > There should be nothing particularly unique about Mac OS X in this > regard; it should function just like any other UNIX-like OS. > > >> I tried running the file from the shell as root (update_svn binary) >> and it reports that it 'Skipped: /Library/WebServer/' what does >> that mean? > > It means it doesn't think /Library/WebServer is a working copy. Is it? > >Received on 2009-12-15 03:11:14 CET |
This is an archived mail posted to the Subversion Users mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.