svn版本控制实战

安装、配置环境变量:略

配置服务器版本库
svnadmin create D:\Subversion\DevRepository\OnlineStudy

添加服务
sc create MySVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\Subversion\DevRepository" start= auto depend= Tcpip

启动服务
net start MySVNService(最好使用此命令) 或者 sc start MySVNService 

SC命令似乎是只管发送指令,而不管服务启动或停止的结果。
NET命令会等待执行结束,命令执行后,会等待启动成功后再执行一下条命令。

检出(服务器到本地库)
svn checkout svn://localhost/OnlineStudy D:\WorkSpace\OnlineStudy

添加到本地库
svn add test.txt(本地库根目录执行)
或者其他目录执行
C:\WINDOWS\system32>svn add D:\WorkSpace\OnlineStudy\src
A         D:\WorkSpace\OnlineStudy\src
A         D:\WorkSpace\OnlineStudy\src\test
A         D:\WorkSpace\OnlineStudy\src\test\java
A         D:\WorkSpace\OnlineStudy\src\test\java\HelloTest.java
A         D:\WorkSpace\OnlineStudy\src\main
A         D:\WorkSpace\OnlineStudy\src\main\resources
A         D:\WorkSpace\OnlineStudy\src\main\java

C:\WINDOWS\system32>svn add D:\WorkSpace\OnlineStudy\web
A         D:\WorkSpace\OnlineStudy\web
A         D:\WorkSpace\OnlineStudy\web\WEB-INF
A         D:\WorkSpace\OnlineStudy\web\WEB-INF\applicationContext.xml
A         D:\WorkSpace\OnlineStudy\web\WEB-INF\dispatcher-servlet.xml
A         D:\WorkSpace\OnlineStudy\web\WEB-INF\web.xml

C:\WINDOWS\system32>svn add D:\WorkSpace\OnlineStudy\pom.xml
A         D:\WorkSpace\OnlineStudy\pom.xml

修改匿名访问权限
D:\Subversion\DevRepository\OnlineStudy\conf\svnserve.conf
将第19行的# anon-access = read改为anon-access = write,也就是去掉“# ”,将read改为write。注意前面不要留空格,一定要顶格写

提交
svn commit -m "My first commit"  (本地库根目录执行)
或者
svn commit D:\WorkSpace\OnlineStudy\ -m "My first commit"

检出到其他目录(OnlineStudy2)
svn checkout svn://localhost/OnlineStudy D:\WorkSpace\OnlineStudy2

修改OnlineStudy本地库文件并提交
C:\WINDOWS\system32>svn commit D:\WorkSpace\OnlineStudy\ -m "My first commit"
正在发送       D:\WorkSpace\OnlineStudy\src\test\java\HelloTest.java
传输文件数据.
提交后的版本为 2。

更新本地库OnlineStudy2
C:\WINDOWS\system32>svn update D:\WorkSpace\OnlineStudy2
正在升级 'D:\WorkSpace\OnlineStudy2':
U    D:\WorkSpace\OnlineStudy2\src\test\java\HelloTest.java
更新到版本 2。


授权访问
[1]打开D:\Subversion\DevRepository\OnlineStudy\conf\svnserve.conf
[2]将第19行anon-access = write注释掉:# anon-access = write
表明该版本库不接受匿名访问 如果要查看版本历史条目 修改成 anon-access = none
[3]将第20行# auth-access = write注释打开:auth-access = write
表明该版本库使用授权访问
[4]将第27行注释打开:password-db = passwd
表明使用同目录下的passwd文件保存用户信息
[5]将第36行注释打开:authz-db = authz
表明使用同目录下的authz文件保存权限信息
[6]打开passwd文件创建用户
[users]
# harry = harryssecret
# sally = sallyssecret
sirius = 1234
[7]打开authz文件:#后面注释的是例子
<1>创建用户组
canWrite = userWrite01,userWrite02
<2>指定路径,给用户和用户组授权
# [/foo/bar]
# harry = rw
# &joe = r
# * =屏蔽那些未设定的用户,让它们没有任何权限
[/]
@canWrite = rw
userRead = r
* =
<3>权限的继承性:父目录设置的权限,对子目录同样有效——除非子目录进行了更为具体的设定
[/subDir]
userOther = rw
* =

多版本库共享配置
6.1 在版本库根目录D:\Subversion\DevRepository下创建commConf目录
6.2 将未修改的authz和passwd文件拷贝到commConf目录下
6.3 修改需要设置权限的版本库的svnserve.conf文件
①password-db = ../../commConf/passwd
②authz-db = ../../commConf/authz
6.4 在password中创建用户
[users]
# harry = harryssecret
# sally = sallyssecret

userERP = 123456
userOA = 123456
userCRM = 123456
6.5 在authz中针对不同版本库为不同用户授予权限
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

[ERP:/]
userERP = rw
* =

[OA:/]
userOA = rw

* =


[CRM:/]
userCRM = rw
* =



关于idea 配置svn 2017.3.2版

settings->version control ->Subversion








猜你喜欢

转载自blog.csdn.net/sinat_34126677/article/details/80069900