| 
 
Creation of Project Using SVN (Subversion) 
 
cd /home/subverion 
 
svnadmin create <projectname> for example 
 
svnadmin create test1 
 
 
we can see test1 has been created in /home/subversion 
 
cd test1/ 
 
there we can list list of files and folders 
 
drwxr-xr-x 2 root root 4096 2010-04-06 10:36 conf 
drwxr-xr-x 2 root root 4096 2008-11-08 00:19 dav 
drwxr-xr-x 5 root root 4096 2009-08-13 11:28 db 
-r--r--r-- 1 root root    2 2008-11-08 00:19 format 
drwxr-xr-x 2 root root 4096 2008-11-08 00:19 hooks 
drwxr-xr-x 2 root root 4096 2008-11-08 00:19 locks 
-rw-r--r-- 1 root root  229 2008-11-08 00:19 README.txt 
             
Conf 
 
 
contains the configuratio file's like authz, passwd, svnserv.conf 
 
 
       authz            : user authorization information 
       passwd            : User password 
       snvserv.conf    : main     configuration for the project             
db 
 
Contains the list of verions that has been commetded by user's 
 
 
after creation of project just enter in to conf folder say we have created     test1 as project 
 
 
cd /home/subversion/test1/conf 
 
edit authz 
 
[groups] 
# harry_and_sally = harry,sally 
admin = super.user 
ycoregproject = svn.user1, svn.user2, svn.user3 
 
[/] 
@ycoregproject = rw    (where ycoregproject is an group name     with read and write permission) 
* = 
 
[/] 
@admin =     rw                 (Default admin who have read and write permission) 
* = 
 
[/beta] 
@ycoregproject = r 
* = r 
[/version1.0] 
@ycoregproject = r 
* = r 
 
save and close 
 
edit passwd 
 
super.user = sdfdsfdsf 
svn.user1 = sfsdfsdf 
svn.user2 = sfsdfs3fdef 
svn.user3 = sdffdsf 
 
save and quit 
 
edit svnserve.conf             
Orginal file 
 
### This file controls the configuration of the svnserve daemon, if you 
### use it to allow access to this repository.  (If you only allow 
### access through http: and/or file: URLs, then this file is 
### irrelevant.) 
 
### Visit http://subversion.tigris.org/ for more information. 
 
[general] 
### These options control access to the repository for unauthenticated 
### and authenticated users.  Valid values are "write",     "read", 
### and "none".  The sample settings below are the defaults. 
# anon-access = read 
# auth-access = write 
### The password-db option controls the location of the password 
### database file.  Unless you specify a path starting with a /, 
### the file's location is relative to the directory containing 
### this configuration file. 
### If SASL is enabled (see below), this file will NOT be used. 
### Uncomment the line below to use the default password file. 
# password-db = passwd 
### The authz-db option controls the location of the authorization 
### rules for path-based access control.  Unless you specify a path 
### starting with a /, the file's location is relative to the the 
### directory containing this file.  If you don't specify an 
### authz-db, no path-based access control is done. 
### Uncomment the line below to use the default authorization file. 
# authz-db = authz 
### This option specifies the authentication realm of the repository. 
### If two repositories have the same authentication realm, they should 
### have the same password database, and vice versa.  The default     realm 
### is repository's uuid. 
# realm = My First Repository 
[sasl] 
### This option specifies whether you want to use the Cyrus SASL 
### library for authentication. Default is false. 
### This section will be ignored if svnserve is not built with Cyrus 
### SASL support; to check, run 'svnserve --version' and look for a line 
### reading 'Cyrus SASL authentication is available.' 
# use-sasl = true 
### These options specify the desired strength of the security layer 
### that you want SASL to provide. 0 means no encryption, 1 means 
### integrity-checking only, values larger than 1 are correlated 
### to the effective key length for encryption (e.g. 128 means 128-bit 
### encryption). The values below are the defaults. 
# min-encryption = 0 
# max-encryption = 256             
modified file 
 
 
### This file controls the configuration of the svnserve daemon, if you 
### use it to allow access to this repository.  (If you only allow 
### access through http: and/or file: URLs, then this file is 
### irrelevant.) 
 
### Visit http://subversion.tigris.org/ for more information. 
 
[general] 
### These options control access to the repository for unauthenticated 
### and authenticated users.  Valid values are "write",     "read", 
### and "none".  The sample settings below are the defaults. 
anon-access = none 
auth-access = write 
### The password-db option controls the location of the password 
### database file.  Unless you specify a path starting with a /, 
### the file's location is relative to the conf directory. 
### Uncomment the line below to use the default password file. 
password-db = passwd 
### The authz-db option controls the location of the authorization 
### rules for path-based access control.  Unless you specify a path 
### starting with a /, the file's location is relative to the conf 
### directory.  If you don't specify an authz-db, no path-based access 
### control is done. 
### Uncomment the line below to use the default authorization file. 
authz-db = authz 
### This option specifies the authentication realm of the repository. 
### If two repositories have the same authentication realm, they should 
### have the same password database, and vice versa.  The default     realm 
### is repository's uuid. 
# realm = My First Repository 
 
 
********************************checkout of file     from svn to live project directory********************************* 
 
svn checkout file:///home/subverion/test1 /home/projects/test1.com 
 
This we have to place in cron for every 1 minute. 
 
 
to place in cron first 
 
vi /bin/svnupdate-test1 
 
set -x 
svn checkout file:///home/svnrepository/test1 /home/projects/test1 >     /tmp/cashforsvn.log 
Counttest1=`cat /tmp/test1.log | wc -l`; 
if [ "$Counttest1" -gt "1" ] 
then 
cat /tmp/cashtest1.log  | mail user1@ybrantlocal.com -cc     
user2@ybrantlocal.com user3@ybrantlocal.com  -s "test1 svn update     
details"; 
fi 
echo " svn updated"; 
 
 
save and quit 
 
chmod 700 /bin/svnupdate-test1 
 
Note : make sure that for every svn you have included testing group id 
 
crontab -e 
*/1 * * * *  /bin/svnupdate-test1 >/dev/null 2>&1 
 
save and quit 
 
****************************************************************************************************************** 
 
 
****************************** information to Send mail for      individual users ******************************************** 
 
 
mysql details 
 
db name :  
 
db username :  
 
db password : 
 
svn.username :  
 
svn.password 
 
SVN URL : svn://server ip address/home/svnrepository/projectname 
 
Phpmyadmin URL :"" 
 
****************************************************************************************************************** 
 |      
  |     
No comments:
Post a Comment