Home IT Linux Windows Database Network Programming Server Mobile  
  Home \ Server \ Linux CentOS configuration SVN + SVN hook     - How to Upgrade Ubuntu GNOME 14.10 to GNOME 3.16 Desktop (Linux)

- Use ARChon runtime environment to run Android apps on Ubuntu (Linux)

- Hadoop 1 and 2.x installation notes (Server)

- How to network to share files between Windows, MAC and Linux (Linux)

- To batch create users under Linux (Linux)

- Linux system security norms (Linux)

- Upgrading Oracle to (Database)

- Use $ BASH ENV variable to mention the right way under Linux (Linux)

- iOS persistence of data archiving NSKeyedArchiver (Programming)

- RedHat Linux 6.4 install Oracle 10g error (Database)

- Source MongoDB 3.2.1 installed on CentOS6.5 (Database)

- SQL statement to repair SQL Server database (Database)

- Linux environment variable settings and save places (Linux)

- Dockerfile use to build a mirror-based CentOS 7 (Linux)

- Two network security scanning tools under ubuntu (Linux)

- Mac OS X 10.9 build Nginx + MySQL + php-fpm environment (Server)

- SQL Server 2012 failover looksalive check and is alive check (Database)

- C language files update in real time (Programming)

- You may not know the Linux command-line network monitoring tool (Linux)

- Ubuntu 14.04 forget solution root password (Linux)

  Linux CentOS configuration SVN + SVN hook
  Add Date : 2017-08-31      
  Environment Introduction:
Operating System: CentOS release 6.5 (Final) 64-bit
Network environment: Intranet

1 Configure the SVN
1.1 Install the SVN package
Use yum to install the required packages for svn
# Yum -y install subversion

1.2 Configuring the SVN
1.2.1 Create the svn library path
Create the svn library path, which provides later user file writes and reads.
# Mkdir -p / date / svn /

1.2.2 Create an SVN repository
Use a specific command to create the repository, and after the creation of the directory, the SVN configuration file will appear.
# Svnadmin create / date / svn /

1.2.3 Define the configuration file
#vim /opt/svndata/repos1/conf/svnserve.conf

Anon-access = none
Auth-access = write
Password-db = passwd # Define the configuration file for the user password
Authz-db = authz # Define the user rights profile
Realm = svn

1.2.4 User Rights Configuration
1, the creation of svn visit users
# Vim / data / svn / passwd

Test = test Creates a user named tset with the password test

2, the allocation of user access
#vi / opt / svndata / repos1 / conf / authz

Admin = test
# Harry_and_sally = harry, sally
@admin = rw
[Repos1: / abc / aaa]
@admin = r

Repository directory format:
[< Repository>: / project / directory] # is the project name as the first unit. Imagine the project as a unit
@ < User group name> = < permission>
< User name> = < permission>
Among them, the box can be a number of parts of the wording:
/, Indicates the root directory and the following. The root directory is specified at svnserve startup, and we specify / opt / svndata. In this case, / means to set permissions on all repositories.
Repos1: /, said the authority to set up a repository
Repos2: / abc,, said that the repository 2 abc project set permissions
Repos2: / abc / aaa,, said the abc in the repository 2 projects aaa directory set permissions
The authority principal can be a user group, a user, or a user group, and the user group is preceded by @ and * for all users. Permissions can be w, r, wr and empty, empty means that there is no authority.
1.2.5 Starting the SVN
# Svnserve -d -r / date / svn /

-d means running in daemon mode (running in background)
-r / date / svn Specifies that the root directory is / date / svn
1.3 Configuring the Hook
1.3.1 Configuring the Version Detection Tool
Their use of python to write a document automatically detects the version of the tools inside the library. The code is as follows:
# Vim /date/svn/hooks/gouzi.py
#! / Usr / bin / env python
If __name __ == '__ main__':
  Importsys, string
    Logfile = open ( '/ tmp / python.out', 'a +')
  Logfile.write ( "this is python hook")
  Logfile.close ()
    Exit (1)
  Sys.exit (0)

This tool must be placed in the hooks directory in the library directory.
1.3.2 Configuring the UPDATE Script
1, the first manual checkout on the client
# Svn checkout svn: //

2, edit the automatic synchronization script
# Vim svn_update.sh

The code is as follows
 #! / Bin / bash
/ Usr / bin / svn update / linshi / repos --username test --password test
If [$? == 0]
        Echo "ok" >> /tmp/z.out

Where: / linshi / for the storage directory (depending on the environment may be)
    --username test User name is test
    --password test The password is test
3, modify the permissions
# Chmod + x /root/svn_update.sh

4, configure the scheduled tasks
Because the script can not achieve automatic execution, so configure the scheduled task settings once per minute.
# Crontab -e
* * * * /root/svn_update.sh> / dev / null 2> & 1
- Git Advanced Tutorial (Linux)
- How to find out a Unix system library files are 32-bit or 64-bit (Linux)
- Install Ruby on Rails in Ubuntu 15.04 in (Linux)
- Linux Platform Oracle 11g Single Instance Installation Deployment Configuration Quick Reference (Database)
- Findbugs installation documentation (Linux)
- Through Oracle to help restore MySQL data problems (Database)
- TPCC-MySQL Benchmark (Database)
- NFS installation process under the CentOS (Linux)
- Ubuntu disable graphics card (Linux)
- Ubuntu: To install chat client Chatty 0.6.1 (Linux)
- Binary search -Java achieve (Programming)
- Modify Linux SSH default port 22 in several ways (Linux)
- Let the router be your security barrier against external attack (Linux)
- Sudo and Root Account in Ubuntu related (Linux)
- Redmine Installation (Linux)
- Use mysqldump MySQL database backup - Linux Shell Scripting (Database)
- Android Studio utility plug organize, create sharp artifact (Programming)
- Ten SCP transfer command example (Linux)
- Hunk / Hadoop: Performance Best Practices (Server)
- Why you should choose Python Programming (Programming)
  CopyRight 2002-2016 newfreesoft.com, All Rights Reserved.