SVN是版本控制subversion的简称
主要功能是对文档[java,conf,shell,PPT]多人协作办公服务端 192.168.2.100
安装软件
#yum -y install subversion创建仓科目录
#mkdir /var/svn/ //普通目录
#svnadmin create /var/svn/project //创建仓库导入一些文档 配置文件 shell java或php脚本
#cd /usr/lib/systemd/system
#svn import file:///var/svn/project -m "service config file"//将当前目录下的文档,导入到SVN仓库,-m后设置描述信息查看导入的文档
#svn list file:///var/svn/project
5. 修改配置文件
#cd /var/svn/project1/conf #vim svnserve.conf 19:anon-access = none //匿名没有权限 20:auth-access = write //认证用户可读可写 27:password-db = passwd //账户信息文件 34:authz-db = authz //权限配置文件 #vim passwd tom = 123456 //自定义账户与密码 jerry = 123456 //自定义账户与密码 #vim authz [/] tom = rw jerry = rw #svnserve -d -r /var/svn/project/ 启动服务,共享仓库,仓库目录为/var/svn/project/ 启动的端口号为3690客户端 192.168.2.200 测试:
1. 下载代码到本地副本
#mkdir /temp #cd /temp #svn --username tom --password 123456 co svn://192.168.2.100 code //将服务器上的文档下载到本地code目录下 //co(checkout)下载,code目录会自动创建 #svn co svn://192.168.2.100 code2. 本地修改代码,上传到服务器 #cd code 任意修改任意文件: #svn ci -m "任意字符" //ci(commit)提交代码3. 连接服务器将本地副本的数据更新 #svn update4. 查看历史记录 #svn log svn://192.168.2.1005. 新建文档 #echo "abc" > a.conf //普通文件 #svn add a.conf //让svn识别该文件 #svn ci -m "test" //提交修改6. 删除文档 #svn rm usbmuxd.service #svn cp old new #svn mkdir test #svn mv old new7. 查看本地副本和服务器的差异 #svn diff //查看所有差异 #svn diff zram.service //查看某个文件的差异8. 查看服务器上版本文档的全部内容 #svn cat svn://192.168.2.100/文件名9. 恢复数据 1)本地修改但没有提交 #svn revert 文件名 2)本地修改,并提交了服务器(大量数据需要还原) # cd /temp # svn co -r2 svn://192.168.2.100 mycode //从服务器下载版本2中的所有代码 3)本地修改,并提交了服务器(个别数据需要还原) # cd /temp/code # svn merge -r6:1 文件名 //将某一个文件从第6个版本还原到第1个版本10. 管理员备份仓库
#du -sh /var/svn/project1 1.备份: #svnadmin dump /var/svn/project/ > pro.bak 2.还原数据 9#svnadmin load /var/svn/project/ < pro.bak