but i am just passing repository name to perl script. i can not pass
transaction because i dont even know what is the transaction id being used
at the time of commit.
in pre-commit template $2 refers to the transaction but in perl script i can
not write
$txn = "$ARGV[1]"; beacsue i am not passing any transation id which i dont
even know.
please adise
regards
irf
On Wed, May 13, 2009 at 4:29 PM, Ryan Schmidt <
subversion-2009b_at_ryandesign.com> wrote:
> On May 13, 2009, at 04:21, Irfan Sayed wrote:
>
> i tried both the things but still not working. please help
>> here is my small script
>>
>> $svnlook = "/usr/bin/svnlook";
>> $repo = "/usr/local/svn/projects";
>> my @cmd = `$svnlook changed -t $2 $repo`;
>> foreach(@cmd)
>> {
>> if ($_ =~/^A/)
>> {
>> print STDERR "added\n";
>> exit 1;
>> }
>> else{
>> print STDERR "not added\n";
>> exit 1;
>> }
>> }
>>
>> this is just the sample simple script which i want to execute before
>> commit. it is not giving any output when i add or midify any file
>>
>
> The example hook scripts in the template files are written in bash syntax,
> but based on the above you appear to want to write a perl script. That's
> fine, but in perl $2 is not how you refer to the second command line
> argument; $ARGV[1] is. So the corrected script would be:
>
>
> #!/usr/bin/perl
>
> $svnlook = "/usr/bin/svnlook";
> $repo = "$ARGV[0]";
> $txn = "$ARGV[1]";
> my @cmd = `$svnlook changed -t $txn $repo`;
>
> foreach(@cmd) {
> if ($_ =~/^A/) {
> print STDERR "added\n";
> exit 1;
> } else {
> print STDERR "not added\n";
> exit 1;
> }
> }
>
>
>
>
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2235185
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subversion.tigris.org].
Received on 2009-05-13 13:10:37 CEST