SVN

SVN

SVN的概述

SVN 的概述

SVN简称Subversion的简称,是一个开放源码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion.说的简单一点SVN就是用于多个人共同开发同一项目,共用资源的目的。

SVN的作用

主流的版本控制

VSS :Visual Source Safe 微软的
CVS
SVN : Apache的
Git :

SVN的安装

SVN的使用的模式:

  • SVN的使用模式:
    • 复制 –> 修改 –> 合并的方案(主要)
    • 锁定 –> 修改 –> 解锁的方案

SVN的体系

安装VisualSVN

  • 注意端口,默认是443,很有可能被虚拟机占用,可以改为 8443(我用的8443),可以在命令行查看端口号 netstat -ano

  • 可以命令行里输入 services.msc 查看服务是否启动。

创建仓库,创建工程

SVN的基本的使用

安装客户端软件

安装 TortoiseSVN

SVN的权限管理

  • 在Users上创建用户
    • 右键Create User,输入用户名跟密码
  • 在Groups创建组,直接给用户名创建权限不太方便
    • 右键Create Group,输入用户名跟描述
  • 给组里添加用户
    • 选中组,右键Edit —> Add.
  • 给仓库去设置权限
    • 仓库右键 Properties 设置权限
  • 在仓库中创建一个工程,内容一般放在trunk中,branches里放的是分支。

使用

不同的步骤文件对应的图标会变

  • 创建两个文件夹(A,B),分别作为要测试的仓库
  • 右键 CheckOut 输入用户名密码,完成跟服务器同步
    • 若失败,想重新弄一下,需要 右键 ---> setting --> clear Data 清理一下缓存
  • 在A的一端可以创建一个文件,然后 右键 ---> TortoiseSVN ---> Add
    • 现在只是添加到SVN的管理(文件图标有一个小加号)
  • 提交到SVN的服务器 右键 ---> SVN Commit... (现在跟服务器上的代码是同步的文件图标有一个小对勾)

  • B中要想在同步服务器中的东西,直接 右键 --->update 即可
  • 在B的一段修改代码,文件会变成小叹号,表示与服务器端的不一样

  • 在A的一端,要先更新,右键 --->update ,写完了再提交
  • 也可以恢复历史版本, 右键 ---> TortoiseSVN ---> Update to Revision... 点 show log 恢复到指定的版本

解决冲突

  • 当两个人共同操作的时候,一个人已经提交了,另外一个人的就不是最新的版本了,他在提交的时候就不是最新的了,就会出现冲突
  • 解决:出现冲突后,删掉没用的文件,把叹号里的东西没用的都删除,在提交即可
    • 还有一种方法,修改后,右键 —> Resolve…(来标记冲突已经解决)

SVN的 Eclipse 的插件

安装

  • 低版本的跟MyEclipse:site中的两个文件夹拉出来放到一个叫做SVN文件夹中,然后扔到Eclipse里

  • 现在使用的Eclipse中安装:

    • Help ---> Install new SoftWare ---> add ---> Archive ---> SVN插件的地址
    • 如果没有联网的话,把下边最后一个对勾去掉,否则不会成功
    • 检查是否安装:右上角点开看是否有SCV资源库研究 或 右键项目 Team —> Share Project 有SVN则成功了

使用

  • 发布一个项目
    • 在Eclipse中的SVN模块中,新建一个资源库的位置,路径为SVN服务器上要发布的地址,
    • 项目 右键 —> share Project —> svn —>选择已有的项目
    • 再在项目,右键 —> teap —>提交

  • 下载,检出
    • 在Eclipse中的SVN模块中,新建一个资源库的位置,路径为SVN服务器上要下载的地址。
    • 则在这个路径底下就会有那个项目,在右键 —> 检出为… —> 输入项目名(注意不要重复)

  • 使用
    • 先更新,右键 —> team —> 更新 , 在改代码
    • 在提交,右键 —> team —> 提交

  • 删除项目
    • 因为项目已经被SVN管理,所以不要直接删除,要右键—>断开连接,再删除
    • 可以选择是否删除隐藏的 .snv 文件

小组协作

1
2
3
4
5
6
7
8
9
10
其中一个人在自己的计算机上搭建一个 SVN 服务器(使用 VisualSVN搭建)
然后给其它小组成员创建账号
然后创建项目,给小组成员账号分配权限
小组成员通过 TortoiseSVN 客户端 操作远程仓库
注意:小组成员在 checkout 远程仓库地址的时候,SVN 服务器管理员要把
仓库的地址告诉小组成员
https://SVN服务器ip地址/svn/JD/
张冲 wechat
欢迎扫一扫上面的微信关注我,一起交流!
坚持原创技术分享,您的支持将鼓励我继续创,点击打赏!