SVN:版本控制软件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SVN:版本控制软件相关的知识,希望对你有一定的参考价值。
一.SVN:版本控制软件(默认端口3690)(subversion)版本控制的核心:服务器--共享目录
所有数据都有备份
file:///abc/本地访问
svn://192.168.4.5/abc 远程访问
1.装包yum -y install subversion
2.创建mkdir /var/svn 共享目录框架,此目录不是真实共享目录
3.创建真实共享目录:svnadmin create /var/svn/project1
4.导入想要共享的内容:svn import . file:///var/svn/project1/ -m "注释"
导入的数据不是明文显示的,cd到目录是无法看到的
5.本地使用这个命令查看:svn list file:///var/svn/project1
- vim svnserve.conf
19 anon-access = none (匿名访问不给任何权限)
20 auth-access = write (认证访问给读的权限)
27 password-db = passwd (指定密码文件为passwd稍后要修改)
34 authz-db = authz (指定控制权限的文件,稍后要修改)
7.vim passwd
tom = 123456
harry = 123456
8.vim authz
[/]
tom = rw
harry = rw
9.启动服务(两种方法)
方法一:svnserve -d -r /var/svn/project/ (指定共享目录发布,-d的意思是放后台)
方法二:systemctl start svnserver (把所有的共享目录都发布出去)
10.验证
客户端:svn co --username tom --password 123456 svn://192.168.2.100/ code
co(checkout)下载,从svn://192.168.2.100/下载共享目录,并且自动放到本地code目录(该目录会自动创建)
11.cd到code 客户端任意修改一个文件,再上传文件
命令:svn ci -m "注释" (ci是上传 ,这个上传会自动识别那个文件改变了,只把改变的文件上传上去)
12.如果服务器上的文件有被更新,客户端可以通过:svn update 命令实现更新自己的本地
13.可以同过以下命令查看vsn的文件更新log;
svn log svn://192.168.2.100
svn info svn://192.168.2.100
14.客户端自己新建文件后通过以下上传到svn服务器
vim 11.sh (直接创建,不受svn管理)
svn add 11.sh (给到svn管理)
svn ci -m "注释" (上传文件)
15.客户端实现新建目录,重命名,复制操作;
svn mkdir abc
svn mv 11.sh 22.sh
svn cp xx.sh zz.sh
svn rm zz.sh
svn ci -m "注释" 最后上传文件
16.对比本地和服务器的差别
svn diff
svn diff 文件名
svn cat svn://192.168.2.100/wenjian
17.数据还原:
1)本地修改了一个文件,但未提交
svn revert 11.txt
2)本地修改了,而且也提交了[6]
svn merge -r6:5 11.txt
3)本地修改了,而且也提交了(第二种)
svn -r5 co svn://192.168.1.100 code2
18.多人协同
1)修改不同的文件
互不影响,最后各自更新各自的
2)修改相同文件的不同行;
先上传的不受影响,后上传的提示过期,要svn update,这个时后文件会自动和并,然后在上传服务;
3)修改相同文件的相同行
会产生冲突,需人员协同;,修改后的文件会生成多个版本,协商后把多于的删除,然后提交服务器
19.备份服务器
svnadmin dump /var/snv/project1/ > my.bak
20.还原服务器
svnadmin load /var/snv/project2/ < my.bak
以上是关于SVN:版本控制软件的主要内容,如果未能解决你的问题,请参考以下文章