Linux下搭建SVN+版本冲突
2015-07-15 16:10
597 查看
环境:CentOs 6.5(最小化安装)
参考资料:http://www.iusesvn.com/subversion/tortoisesvn_doc/
提交之前,先要执行SVN update从服务器下载最新的版本,然后在执行SVN commit,可避免版本冲突
右键test文件夹,选择SVN commit
上传成功
SVN解决版本冲突:
A、B用户执行SVN update,test文件当前版本为1
A用户编辑后执行SVN commit后,test文件当前版本为2
B用户编译后执行SVN commit,由于B用户此时的test文件版本仍为1,会同步出错
如果B用户对这个文件夹直接执行SVN update,由于版本不同,会生成几个状态文件
这时B用户需要消除这些状态文件,对test文件执行TortoiseSVN---Resolved
这时test文件内容会发生改变。注:如果test是纯文本文件,则可以执行Resolved;如果是非纯文本文件,则只能放弃修改,执行TortoiseSVN---Revert
这时B用户就可以test文件执行SVN commit提交了
注:提交之前,先要执行SVN update从服务器下载最新的版本,然后在执行SVN commit,可避免版本冲突
工作拷贝中的每一个目录都有一个叫作.svn的管理目录,工作目录中的每一个文件,Subversion在管理区域为它保留了一个备份,这是上一个版本(叫做“BASE”版本)没有修改的(没有关键字变化,没有行结束符号转化,没有任何改动)拷贝,我们把这个文件当作原始拷贝或基准文件使用,它与版本库中的文件完全一样
本文出自 “鹏城-酱油瓶” 博客,谢绝转载!
参考资料:http://www.iusesvn.com/subversion/tortoisesvn_doc/
[root@localhost ~]# yum -y install subversion [root@localhost ~]# mkdir /svn/ -p [root@localhost ~]# useradd svn [root@localhost ~]# chown svn:svn /svn/ -R [root@localhost ~]# chmod 775 /svn/ -R [root@localhost ~]# cd /svn/ [root@localhost svn]# svnadmin create test [root@localhost svn]# ls test [root@localhost svn]# cd test/conf/ [root@localhost conf]# ls authz passwd svnserve.conf [root@localhost conf]# grep -v ^# passwd |grep -v ^$ [users] admin = redhat yfshare= redhat [root@localhost conf]# [root@localhost conf]# grep -v ^# authz |grep -v ^$ [aliases] [groups] test = admin,yfshare [/] @test = rw [root@localhost conf]# [root@localhost conf]# grep -v ^# svnserve.conf |grep -v ^$ [general] anon-access = none auth-access = write password-db = passwd authz-db = authz [sasl] min-encryption = 0 max-encryption = 256 [root@localhost conf]# [root@localhost conf]# svnserve -d -r /svn/ [root@localhost conf]# netstat -tunlp|grep svnserve tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 1372/svnserve [root@localhost conf]#安装TortoiseSVN后,右键桌面点击SVN checkout
提交之前,先要执行SVN update从服务器下载最新的版本,然后在执行SVN commit,可避免版本冲突
右键test文件夹,选择SVN commit
上传成功
SVN解决版本冲突:
A、B用户执行SVN update,test文件当前版本为1
A用户编辑后执行SVN commit后,test文件当前版本为2
B用户编译后执行SVN commit,由于B用户此时的test文件版本仍为1,会同步出错
如果B用户对这个文件夹直接执行SVN update,由于版本不同,会生成几个状态文件
这时B用户需要消除这些状态文件,对test文件执行TortoiseSVN---Resolved
这时test文件内容会发生改变。注:如果test是纯文本文件,则可以执行Resolved;如果是非纯文本文件,则只能放弃修改,执行TortoiseSVN---Revert
这时B用户就可以test文件执行SVN commit提交了
注:提交之前,先要执行SVN update从服务器下载最新的版本,然后在执行SVN commit,可避免版本冲突
工作拷贝中的每一个目录都有一个叫作.svn的管理目录,工作目录中的每一个文件,Subversion在管理区域为它保留了一个备份,这是上一个版本(叫做“BASE”版本)没有修改的(没有关键字变化,没有行结束符号转化,没有任何改动)拷贝,我们把这个文件当作原始拷贝或基准文件使用,它与版本库中的文件完全一样
本文出自 “鹏城-酱油瓶” 博客,谢绝转载!
相关文章推荐
- 29个你必须知道的Linux命令
- 十个非常有趣的 Linux 彩蛋
- 【Linux】安装DNS域名解析服务
- LINUX内核 DEVICE_ATTR与cat echo命令 直接读写调用Kernel测试方法
- linux 下如何通过ssh到其他机器然后执行命令?
- IDO分享 | 如何在centos下安装OpenCMS
- IDO分享 | 如何在centos下安装OpenCMS
- CentOS 6下linux重启后自动执行命令
- Linux的用户目录
- Linux用户态和内核态
- Centos 5.8安裝Xen linux&windows 虛擬機
- linux 驱动学习笔记04--简单驱动
- linux清空历史命令方法
- Linux中 grep/egrep的命令收集
- Linux 使用iftop命令查看服务器流量
- Linux内核 工作队列的使用
- linux重启和关闭系统命令
- Linux音频编程指南
- Linux C 实现mysleep数
- CentOS安装MySQL