Go into the hooks directory and you will see a bunch of files ending in. These are template scripts that are prebaked for you. Within each hook file are calls to scripts you want to be executed. To get one to execute you need to remove the. In post-commit there is a call to commit-email. Be sure that this calls to the absolute path of the script. Save that file to your hooks directory.
Check that the required programs exist, and the email sending method. Each value in this array holds a hash reference which contains the. Start with an. Process the command line arguments till there are none left. In commit mode: The first two arguments that are not used by a command line. In revprop-change mode: The first four arguments that are not used by a. This script has no support for the fifth. Use the reference to the first project to populate. This hash matches the command line option to the hash key in the.
If a key exists but has a false value '' , then the. Check the validity of the command line arguments. Check that the. Check that all of the regular expressions can be compiled and.
To help users that automatically write regular expressions. Harvest common data needed for both commit or revprop-change. Figure out what directories have changed using svnlook. Lose the trailing slash in the directory names if one exists, except. Figure out what files have changed using svnlook. Parse the changed nodes. Split the line up into the modification code and path, ignoring. Declare variables which carry information out of the inner scope of.
In commit mode, gets filled in below. Harvest data using svnlook. Get the author, date, and log from svnlook. Modified directory name collapsing. Collapse the list of changed directories only if the root directory. Assembly of log message.
Put together the body of the log message. Therefore, to use the script for a single- project repository, just use the other command line options and a list of email addresses on the command line.
If you do not want a rule that matches the entire repository, then use -m with a regular expression before any other command line options or email addresses. It sends email to a hypothetical mailing list "foo-commits example. Diffs are not included in the mail. In addition, an email is sent to tom example. The subject line of the email is prefixed with the string "[tdh]".
Diffs are sent with this mail because that's the default. Finally, an email with diffs is sent to "all- commits example.
0コメント