SVN版本控制器学习笔记

svn学习笔记(尚硅谷课堂)

资源下载地址(视频及软件包):https://pan.baidu.com/s/1kTmQ49h#list/path=%2F


svn:版本控制器

一、svn需求分析
    1.1、数据备份
    1.2、代码还原
    1.3、协同修改
    1.4、多版本项目文件管理
    1.5、追溯问题代码的编写人和编写时间!
    1.6、权限控制

二、svn工作原理
    2.1、服务器—客户端工作模式 c/s架构
    2.2、checkout:把整个项目源码下载到本地
        update:将本地的源码更新至服务器上的最新版本
        commit:将本地源码更新内容提交至服务器

    
三、svn服务器端安装
    3.1、VisualSVN-Server-2.1.3.msi启动
    3.2、设置安装目录(非中文,不带空格)如D:\VisualSVN Server;
    3.3、环境变量中配置Path,D:\VisualSVN Server\bin;
        配置Path后即可在DOS窗口任意目录下运行改目录下的可执行程序

四、创建svn的版本库
    4.1、创建文件夹D:\SvnRep\project01(project01为某一项目的根目录)
    4.2、DOS窗口:
        D:
        cd\SvnRep\project01
        svnadmin create D:\SvnRep\project01
    4.3、仓库创建完成

五、仓库目录
    conf:配置文件;设置权限等需用到
    db:存储文件,svn底层采用数据库存储文件
    hooks:钩子程序
    locks:文件锁定相关

六、启动服务器端程序

    6.1、svn 服务器必须处于运行状态才能响应客户端请求,
        启动svn有两种方式:命令行方式、注册windows服务
    6.2、命令行方式
        主命令:svnserve
        参数1: -d (表示后台执行)
        参数2: -r (表示版本库根目录)
        参数3: 版本库根目录具体的物理地址(D:\SvnRep\project01)
        举例: svnserve -d -r D:\SvnRep\project01
        
        若关掉该命令行窗口则服务关闭
    
    6.3、测试服务是否启动
        该服务监听3690端口,通过netstat -an命令查看3690端口是否被监听
        
    6.4、将svn注册为windows服务方式
        命令行方式会随着命令行窗口关闭而停止服务,
        若注册为windows服务则会随着windows的启动而启动
        注册步骤如下:    
        DOS:sc create SVNService binpath= "D:\VisualSVN Server\bin\svnserve.exe --service -r D:\SvnRep" start= auto depend= Tcpip
        
        命令格式:
        主命令:sc(windows命令)
        子命令:create
        参数1:服务名
        参数2:binpath="运行服务所需要的二进制文件路径以及该二进制文件的命令行参数"        
        参数3:start= auto(表示自动启动)
        参数4:depend= Tcpip(表示依赖Tcpip协议)


        出现 [SC] CreateService 成功 提示则表示创建成功        

        创建成功后可通过 运行 services.msc 命令查看该服务并启动

        通过netstat -an命令查看3690端口是否被监听检测服务是否正确启动
    
七、命令行客户端访问
    7.1、版本库权限设置
        进行下列操作前需对匿名用户进行权限更改
        仓库conf/svnserve.conf
            取消 anon-access 注释并将 read改为write
    
    7.2、命令行方式访问服务器
        新建客户端存放文件夹并进入改目录
        DOS:svn checkout svn://localhost/project01
        提示:"Checked out revision 0."表示检出成功
        
        进入客户端project01文件夹目录
        DOS:svn commit -m "My first commit" HelloSvn.txt

        注:HelloSvn.txt必须加入svn的管理中方能commit
        DOS:svn add HelloSvn.txt
        提示:"A    HelloSVN.txt"
        将该文件加入svn管理中

        更新工作副本
        DOS:svn update 或 svn update HelloSvn.txt
        若不指定具体文件则更新所有工作副本

八、eclipse访问svn
    8.1、eclipse中安装svn插件
        下载 svn安装包
        将下载好的安装包中的features 和plugins复制到eclipse/dropins文件夹中
        重启eclipse
        
        若eclipse中window-Preferences-Team中有SVN,就表示装好

    8.2、eclipse中操作svn
        右键指定项目—Team—提交、更新等操作

九、解决冲突
    9.1、提交时若有冲突则提交报错,提示版本过时
        解决办法:更新当前项目
            svn会在冲突代码处同时显示冲突部分代码
            svn会发送原始版本、最新版本以及自己编辑的版本至本地
    9.2、自行解决完冲突后 右键—Team—标记为解决
    9.3、提交


十、权限问题
    10.1、仓库中conf\svnserve.conf文件中设置权限
        anon-access = read/write/none (匿名访问,设置为只读权限或读写权限)
        auth-access = read/write/none (使用用户名访问,设置为只读权限或读写权限)
        password-db = passwd (用passwd文件存储用户名及密码的信息)
        authz-db = authz (用authz文件保存授权的信息)
        
        首先打开auth-access、password-db、authz-db三处注释
        之后在 passwd文件(仓库根目录下)中添加用户名及密码,如 zhangsan = 123456;
        之后再 authz文件(仓库根目录下)设置用户权限
        
        authz文件中
            [groups]用于设置一组人员,如: team1 = tom,jerry
    
            [/foo/bar]指对根目录下的foo下的bar目录设置权限
            故 [/] 就表示对根目录设置权限
                若对组设置权限组名前需要加 @来标示,如 @team1 = rw
            "rw"为读写,"r"为只读,
            权限设置完后需再加上 "* ="来标示屏蔽作用,意为仅有上面设置的用户有权限






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值