How to install SVN server under Linux

How to install SVN server under Linux

1. Yum installation

yum install subversion

2. Configuration

1. Create a warehouse

We create a repository named svn under /home, and all the codes will be placed under it in the future. After the creation is successful, several more folders will be added under svn.

[root@localhost /]# cd /home
[root@localhost home]# mkdir svn
[root@localhost home]# svnadmin create /home/svn
[root@localhost home]# ls svn
conf db format hooks locks README.txt

conf folder, which stores configuration files

[root@localhost home]# cd svn/conf
[root@localhost conf]# ls
authz passwd svnserve.conf
  • authz is the permission control file
  • passwd is the account password file
  • svnserve.conf is the SVN service configuration file

2. Configure the passwd file

[root@localhost conf]# vim passwd 

### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harryssecret
# sally = sallyssecret

user1=123456
user2=123456

3. Configure authz

[root@localhost conf]# vim authz 

### This file is an example authorization file for svnserve.
### Its format is identical to that of mod_authz_svn authorization
### files.
### As shown below each section defines authorizations for the path and
### (optional) repository specified by the section name.
### The authorizations follow. An authorization line can refer to:
### - a single user,
### - a group of users defined in a special [groups] section,
### - an alias defined in a special [aliases] section,
### - all authenticated users, using the '$authenticated' token,
### - only anonymous users, using the '$anonymous' token,
### - anyone, using the '*' wildcard.
###
### A match can be inverted by prefixing the rule with '~'. Rules can
### grant read ('r') access, read-write ('rw') access, or no access
### ('').

[aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe

# [/foo/bar]
# harry = rw
# &joe = r
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

[/]
user1=rw
user2=r
*=
~ 

4. Configure svnserve.conf

[root@localhost conf]# vim svnserve.conf 

### 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.apache.org/ for more information.

[general]
### The anon-access and auth-access options control access to the
### repository for unauthenticated (aka anonymous) users and
### authenticated users, respectively.
### Valid values ​​are "write", "read", and "none".
### Setting the value to "none" prohibits both reading and writing;
### "read" allows read-only access, and "write" allows complete 
### read/write access to the repository.
### The sample settings below are the defaults and specify that anonymous
### users have read-only access to the repository, while authenticated
### users have read and write access to the repository.
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
### 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
realm = /home/svn
### The force-username-case option causes svnserve to case-normalize
### usernames before comparing them against the authorization rules in the
### authz-db file configured above. Valid values ​​are "upper" (to upper-
### case the usernames), "lower" (to lowercase the usernames), and
### "none" (to compare usernames as-is without case conversion, which
### is the default behavior).
# force-username-case = none

[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
                

Remember to change the realm in the last line to your SVN directory. When opening comments, remember not to leave a space in front.

3. Start and stop

[root@localhost conf]# svnserve -d -r /home/svn (start)
[root@localhost conf]#kill all svnserve (stop)

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • How to configure SVN under Linux to achieve automatic update of project directory and source code installation
  • Sharing the steps of compiling, installing and configuring SVN server under Linux
  • How to install and configure SVN standalone server under Linux

<<:  How to quickly use mysqlreplicate to build MySQL master-slave

>>:  Summary of seven sorting algorithms implemented in JavaScript (recommended!)

Recommend

MySQL index failure principle

Table of contents 1. Reasons for index failure 2....

js to write the carousel effect

This article shares the specific code of js to ac...

Web Design: Script Materials Reconstruct User Experience

<br />Original text: http://blog.rexsong.com...

Solution to the MySQL error "Every derived table must have its own alias"

MySQL reports an error when executing multi-table...

How to run .sh files in Linux system

There are two ways to run .sh files in Linux syst...

Solution to input cursor misalignment in Chrome, Firefox, and IE

Detailed explanation of the misplacement of the in...

Do you know how to use vue-cropper to crop pictures in vue?

Table of contents 1. Installation: 2. Use: 3. Bui...

How to build YUM in Centos7 environment

1. Enter the configuration file of the yum source...

In-depth explanation of MySQL user account management and permission management

Preface The MySQL permission table is loaded into...

Teach you how to achieve vertical centering elegantly (recommended)

Preface There are many ways to center horizontall...

How to implement animation transition effect on the front end

Table of contents Introduction Traditional transi...

One minute to experience the smoothness of html+vue+element-ui

Technology Fan html web page, you must know vue f...

Optimized implementation of count() for large MySQL tables

The following is my judgment based on the data st...

Summary of MySQL's commonly used concatenation statements

Preface: In MySQL, the CONCAT() function is used ...