版本控制---SVN
A服务端:
# yum -y install subversion
#make /var/svn
#svnadmin create /var/svn/project //创建版本库
(实验环境才要做这步)
------------------------------------------------------------------------------------------
#cd /usr/lib/systemd/system
#svn import .(当前目录) file:///var/svn/project/ -m "Init Date" //本地导入初始化数据
------------------------------------------------------------------------------------------------
#ls /var/svn/project/conf
authz passwd svnserver.conf
#vim /var/svn/project/conf/svnserver.conf
19行anon-accrss=none //匿名无任何权限
20行auth-access=write //有效账户可写
27行password-db=passwd //密码文件
34行authz-db=authz //acl访问控制列表文件
#vim /var/svn/project/conf/passwd
zl=112233
harry=123456
tom=123456
#vim /var/svn/project/conf/authz
[/] //定义acl访问控制
zl=rw //用户对项目根路径可读可写
harry=rw
tom=rw
#svnserver -d -r /var/svn/project //启动服务
#netstat -anutlp | grep svnserver
B客户端连接测试:
访问方式:本地磁盘(file:// )
web (http:// )
svn (svn:// )
windows客户端软件====TortoiseSVN(图形)
启动服务也可以使用svnserve -d启动,但客户端访问时需要指定绝对路径(svn://服务器IP/var/svn/project)。
------------------------------------------------------------------------
linux:
#yum -y install subversion
#cd /tmp
#svn --username zl --password 112233 co svn://192.168.2.100/ code
#cd /tmp/code
#ls
#vim user.slice //挑选任意文件修改其内容
#svn ci -m "modify user" //将本地修改的数据同步到服务器
#svn update //将服务器上新的数据同步到本地
#svn info svn://192.168.2.100 //查看版本仓库基本信息
#svn log svn://192.168.2.100 //查看版本仓库的日志
#echo "test" > test.sh //本地新建一个文件
#svn ci -m "new file" //提交失败,该文件不被svn管理
#svn add test.sh //将文件或目录加入版本控制
#svn ci -m "new file" //再次提交,成功
#vim umount.target //任意修改本地的一个文件
#svn diff //查看所有文件的差异
#svn diff umount.target //仅查看某一个文件的差异
#svn cat svn://192.168.2.100/reboot.target //查看服务器文件的内容
#sed -i 'd' tmp.mount //删除文件所有内容,但未提交
#svn revert tmp.mount //还原tmp.mount文件
#rm -rf *.target //任意删除若干文件
#svn update //还原
#sed -i '1a #test###' tuned.service//修改本地副本中的代码文件
#svn ci -m "xxx" //提交代码
# svn merge -r7:2 tuned.service //将文件从版本7还原到版本2
-----------------------------------------------------------
svn服务端的备份/还原:
#svnadmin dump /var/svn/project > project.bak
#svnadmin create /var/svn/project2
#avnadmin local /var/svn/project2 < peoject.bak
=================SVN 完工===============
git------->github