Yes please. Will appreciate it!!!
... Cast your burdens upon the Lord for He cares for you ...
Enough to die for you!!!
Date: Fri, 4 Jul 2008 14:25:10 +0200From: m.vhoof_at_scheepens.nlTo: kejike80_at_hotmail.com; users_at_subversion.tigris.orgSubject: RE: Precommit hook script for Windows. PLS HELP
Hi,
as far as i know you can write such a script in bat, or vbs. i made myslef a post-commit hook as follows:
post-commit.bat in the hook dir, which call's a VBS script. works like a charm. if you want i can try to write this script in VBS
Met vriendelijke groet, Mike van Hoof
Scheepens reclame adviseursPost Postbus 954, 5000 AZ, TilburgBezoek Sportweg 14, 5037 AC, TilburgTelefoon 013 5950 900Fax 013 5950 901e-mail m.vhoof_at_scheepens.nlinternet www.scheepens.nl
Opvallend veelzijdig
Van: Uzo okoye [mailto:kejike80_at_hotmail.com] Verzonden: vrijdag 4 juli 2008 14:04Aan: users_at_subversion.tigris.orgOnderwerp: Precommit hook script for Windows. PLS HELP
Hi,
I am a newbie to Subversion and have no clue to writing scripts!!!
I am trying to write a script for windows so that it forces users to add a bug reference id during a commit.
Now for starters
I want to know if its possible to write the hook script directly as a bat file and get it to work or must I to use sth else like Python?
Sb helped me write the script in python and in trying to execute it,
I realised that the I dont have the utility SVNLOOK installed , so to resolve this I manually copied the file across the bin directory.
I still get errors. I dont know why.
This is the python script written for the hook and the corresponding error message
---------------------------------------------------------------------------
#!/usr/bin/python
# commit acceptance python client for SVN
import os
import re
import sys
import urlparse
# configure svnlook path
svnlookPath = '\"C:\\Program Files\\VisualSVN Server\\bin\\svnlook.exe\"'
# get committer
try:
f = os.popen(svnlookPath + ' author -t ' + sys.argv[2] + ' ' + sys.argv[1])
committer = f.read()
if f.close():
raise 1
committer = committer.rstrip("\n\r")
except:
print >> sys.stderr, 'Unable to get committer with svnlook.'
print >> sys.stderr, svnlookPath
print >> sys.stderr, sys.argv[1]
print >> sys.stderr, sys.argv[2]
sys.exit(1)
# get commit message
try:
f = os.popen(svnlookPath + ' log -t ' + sys.argv[2] + ' ' + sys.argv[1])
commitMessage = f.read()
if f.close():
raise 1
commitMessage = commitMessage.rstrip('\n\r')
except:
print >> sys.stderr, 'Unable to get commit message with svnlook.'
print >> sys.stderr, svnlookPath
print >> sys.stderr, sys.argv[1]
print >> sys.stderr, sys.argv[2]
sys.exit(1)
# print arguments
# print >> sys.stderr, 'Committer: ' + committer
print >> sys.stderr, 'Commit message: "' + commitMessage + '"'
if (re.match('^[a-zA-Z]+-[0-9]+([\s]+|$)',commitMessage)):
print >> sys.stderr, 'Commit accepted.'
sys.exit(0)
else:
print >> sys.stderr, 'Commit rejected: This repository requires a commit message to begin with a REF issue number.\n\reg REFPRJ-1'
sys.exit(1)
Commit Error Msg
Command: Commit
Modified: data\TEST\added2.sql
Sending content: data\TEST\added2.sql
Error: Commit failed (details follow):
Error: Commit blocked by pre-commit hook (exit code 1) with output:
Error: Unable to get committer with svnlook.
Error: "C:\Program Files\TortoiseSVN\bin\svnlook.exe"
Error: C:\data2
Error: 80-1
Finished!:
Any help will be appreciated to resolving this.
Thanks
... Cast your burdens upon the Lord for He cares for you ...
Enough to die for you!!!
Get fish-slapping on Messenger! Play Now
_________________________________________________________________
Invite your Facebook friends to chat on Messenger
http://clk.atdmt.com/UKM/go/101719649/direct/01/
Received on 2008-07-04 15:06:32 CEST