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