[svn] 一个版本库对应一个项目 svn服务务器搭建 祥解
分三步:
第一步: 建立库
第二步:修改访问权限(用户名,密码等)
第三步:启动svn服务.
前言:现在有两个项目linux_soft和dvr_sdk都需要版本控制.且互不干扰.我们就可以新建两个库进行两个项目 的分别控制.有了版本控制,就我们改的代码出了问题,就可以返回原来的版本,查看是那里改出来的问题。
所有操都在服务器(192.168.1.5)里进行.
一:建立库
命令:
mkdir /work/new_svn
cd /work/new_svn
svnadmin create linux_soft
svnadmin create dvr_sdk
操作如下:
[user:new_svn] ls
[user:new_svn]
[user:new_svn]
[user:new_svn] svnadmin create linux_soft
[user:new_svn] ls
linux_soft/
[user:new_svn] svnadmin create dvr_sdk
[user:new_svn] ls
dvr_sdk/ linux_soft/
[user:new_svn] tree
.
├── dvr_sdk
│ ├── conf
│ │ ├── authz
│ │ ├── passwd
│ │ └── svnserve.conf
│ ├── db
│ │ ├── current
│ │ ├── format
│ │ ├── fsfs.conf
│ │ ├── fs-type
│ │ ├── min-unpacked-rev
│ │ ├── revprops
│ │ │ └── 0
│ │ │ └── 0
│ │ ├── revs
│ │ │ └── 0
│ │ │ └── 0
│ │ ├── transactions
│ │ ├── txn-current
│ │ ├── txn-current-lock
│ │ ├── txn-protorevs
│ │ ├── uuid
│ │ └── write-lock
│ ├── format
│ ├── hooks
│ │ ├── post-commit.tmpl
│ │ ├── post-lock.tmpl
│ │ ├── post-revprop-change.tmpl
│ │ ├── post-unlock.tmpl
│ │ ├── pre-commit.tmpl
│ │ ├── pre-lock.tmpl
│ │ ├── pre-revprop-change.tmpl
│ │ ├── pre-unlock.tmpl
│ │ └── start-commit.tmpl
│ ├── locks
│ │ ├── db.lock
│ │ └── db-logs.lock
│ └── README.txt
└── linux_soft
├── conf
│ ├── authz
│ ├── passwd
│ └── svnserve.conf
├── db
│ ├── current
│ ├── format
│ ├── fsfs.conf
│ ├── fs-type
│ ├── min-unpacked-rev
│ ├── revprops
│ │ └── 0
│ │ └── 0
│ ├── revs
│ │ └── 0
│ │ └── 0
│ ├── transactions
│ ├── txn-current
│ ├── txn-current-lock
│ ├── txn-protorevs
│ ├── uuid
│ └── write-lock
├── format
├── hooks
│ ├── post-commit.tmpl
│ ├── post-lock.tmpl
│ ├── post-revprop-change.tmpl
│ ├── post-unlock.tmpl
│ ├── pre-commit.tmpl
│ ├── pre-lock.tmpl
│ ├── pre-revprop-change.tmpl
│ ├── pre-unlock.tmpl
│ └── start-commit.tmpl
├── locks
│ ├── db.lock
│ └── db-logs.lock
└── README.txt
22 directories, 54 files
[user:new_svn]
二:修改访问权限(用户名,密码等)
以lnux_soft为例:
[user:new_svn] cd linux_soft/
[user:linux_soft] ls
conf/ db/ format hooks/ locks/ README.txt
[user:linux_soft] cd conf/
[user:conf] ls
authz passwd svnserve.conf //这三个文件就是我们要修改的.
1. 修改authz文件 (修改用户访问策略)
.................
[groups] //组,如admin
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
admin = eastonwoo //admin组包含eastonwoo
[/] //checkout 下来的linux_soft目录. (重要)
@admin = rw //admin组 可读可写
* = r // 其它人,只读
[/linux_soft] //linux_soft目录下的linux_soft目录.
@admin = rw
* = // 其它人,没有任何权限.
[/linux_soft/release] //linux_soft目录下的linux_soft目录的下级目录release
@admin = rw
* =
.....................
2. 修改 passwd文件 (添加用户)
............
# harry = harryssecret
# sally = sallyssecret
eastonwoo = eastonwoo123 //eastonwoo的密码为eastonwoo123
3. 修改svnserve.conf文件 (修改svnserve.conf文件,让用户和策略配置升效.)
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
三:启动svn服务 (启动服务器)
[user:new_svn] ls
dvr_sdk/ linux_soft/
[user:new_svn] svnserve -d -r . //去到linux_soft 和 dvr_sdk 的上层目录,也就是new_svn目录启动这条命令.(重要:路径不要搞错.)
也可以写一个脚本上这个命令开机启动.(注意,如果修改了第二步,必须把这个进程kill掉,重新运用该命令,svn才会生效)
完毕.这样客启端就可以以svn checkout svn://192.168.1.5/linux_soft 来访问linux_soft项目了.
同样,svn checkout svn://192.168.1.5/dvr_sdk 来访问dvr_sdk项目
下节我们会讲GIT版本控制