SVN permission configuration in Windows:
1. This document applies to the subvesion built-in service svnserve permission configuration, all completed in the authz file.
2. If you want to manage or allocate a directory or file containing Chinese characters, you need to save the file as UTF-8 format, Microsoft notepad Save As UTF-8 format is invalid, so do not use. Finished with software such as ultraedit or editplus, the format should be UTF-8NOBOM when saved.
3. Permission allocation should follow the principle from the root directory to sub-directories, from setting the widest range of permissions to the finest permissions, from read-only permissions to read/write permission settings, that is, you can set the widest range of access permissions from the root directory, and then gradually set the access permissions for sub-directories. Tip: directory access permissions can be assigned to a group or a specified user. For example, start the service: the service should point to the root directory of all version libraries. In this example, D: \ SVN. The command is as follows:
Sccreatesvnservicebinpath = "D: \ subversion \ bin \ svnserve.exe -- service-rd:/SVN" displayname = "svnservice" depend = tcpipstart = auto
Project: There is a SVN folder under the root directory of drive D. There are two versions of jsyxv3 and svntest in this folder (you can have more ), these version libraries share the same permission configuration file. The directory structure is as follows:
D: \ SVN
| --- Jsyxv3 (Project 1, subdirectory omitted)
| --- Svntest (Project 2, subdirectory omitted)
| --- Conf
| --- Authz (shared permission configuration file)
| --- Passwd (Shared Password File)
#===== SVN permission configuration start ====## group: [groups] group_admin = WWS, AAA, BBB group_user1 = SJ, CCC group_user2 = Sy, DD, eeee group_user3 = lxt group_user4 = SS
# Set the access permission for all version libraries under the root (that is, SVN) Directory [/] * = R # The default permission for all logon users is read-only @ group_admin = RW
# Can be assigned to a group, this group has the read and write permissions WWS = RW # You can also assign it to a specified user as follows # The SVN permission configuration for each version library and its directory will be allocated [jsyxv3:/]
# Set access permissions for all projects in the jsyxv3 database * = # unauthorized users do not have any permissions @ group_user1 = RW [jsyxv3:/program management]
# Set access permissions for the program management directory in the jsyxv3 database * = # unauthorized users do not have any permissions @ group_user2 = RW [jsyxv3:/project management]
# Set the permission to access the Project Management directory in the jsyxv3 library * = # unauthorized users do not have any permissions @ group_user3 = RW [svntest:/]
# Set access permissions for all projects in the svntest version library * = # unauthorized users do not have any permissions @ group_user1 = RW [svntest:/program management]
# Set access permissions for the program management directory in the svntest version library * = # unauthorized users do not have any permissions @ group_user2 = RW @ group_user3 = RW [svntest:/project management]
# Set the access permission for the project management directory in the svntest version library * = # unauthorized users do not have any permissions @ group_user4 = RW #=== SVN permission configuration ends === =
4. Tips for SVN permission Configuration:
4.1 relationship between started services and Client Detection:
4.1.1 if the started service points to a specific version library, for example, sccreatesvnservicebinpath = "D: \ subversion \ bin \ svnserve.exe -- service-rd: /SVN/svntest "displayname =" svnservice "depend = tcpipstart = Auto, the address detected by the client should be: SVN: // 192.168.0.1/
4.1.2 if the started service points to the parent directory of multiple version libraries, for example, sccreatesvnservicebinpath = "D: \ subversion \ bin \ svnserve.exe -- service-rd: /SVN "displayname =" svnservice "depend = tcpipstart = Auto, the address detected by the client should be: SVN: // 192.168.0.1/svntest
4.2 if you have not completed the import of each version of the database when permission management is complete, remember to use the user identity that has read and write permissions on the svn directory to perform operations, otherwise, the operation may fail (because of insufficient permissions ). About
5. In the start command, start the service. Net start svnservice to stop the service. net stop svnservice