文档章节

SVN

T-Brain
 T-Brain
发布于 2015/10/15 22:44
字数 1163
阅读 14
收藏 0
点赞 0
评论 0

SVN解决问题  

解决团队开发中的代码管理的问题:

  代码管理混乱

  备份多个版本,占用磁盘空间大

  解决代码冲突困难

  容易引发BUG

  难于追溯问题代码的修改人和修改时间

  难于恢复至以前正确版本

  无法进行权限控制

  项目版本发布困难

不足:只能设置目录的访问权限,无法设置单个文件的访问权限。 


  SVN相关术语:

  服务器         server             专用的硬件服务器

  仓库             repository     专用于某个项目的磁盘空间,位于硬件服务器中

  检出             checkout       一次性工作,下载代码并完成与服务器间的关联

  上传/提交    commit         多次工作

  更新             update         多次工作

  记录日志      logger         记录操作相关的信息,包括动作,用户,时间,信息

  版本号码     version         记录文件被操作的次数,即版本数


SVN体系结构


安装SVN

 

 


------>测试是否安装成功

如果确定安装成功了,测试提示命令错误

可修改环境变量(盘符开始---截取到bin)


SVN目录结构



>----创建仓库:

            svnadmin create E:\repository\svn\itcast

仓库目录信息


conf

目录

存放版本库所用配置文件的目录

authz

文件

授权信息

passwd

文件

用户安全信息,包含用户名与密码

svnserve.conf

文件

服务相关信息

db

目录

版本数据存储目录

hooks

目录

存放版本库勾子目录

locks

目录

存储库锁目录,用来跟踪库的访问者



>----启动仓库

1. 启动SVN服务器(单仓库)

svnserve r E:\repository\svn\itcast

准备工作

a) 必须存在该路径,且是一个有效的SVN数据仓库

指令结果

启动对应的数据仓库,作为服务,等待响应用户的SVN管理操作

2. 启动SVN服务器(多仓库)

svnserve r E:\repository\svn

准备工作

a) 必须存在该路径,并且其中包含有效的SVN数据仓库路径

指令结果

启动对应目录下所有的数据仓库,作为服务,等待响应

注意事项

多仓库启动模式下只有有效的仓库路径才可以被加载

【补】window指令

查询当前计算机启动服务列表,SVN默认端口为3690

        netstat an

打开service服务指令:

创建SVN服务器启动为window服务

sc create SVN-Service binpath= "D:\Program Files\Subversion\bin\svnserve.exe --service -r E:\repository\svn" displayname= "SVN-Service" start= auto depend= Tcpip

注意:上述指令为DOS指令,格式要求严谨,不能随意修改

删除服务指令 : sdelete 服务名称


SVN图形用户界面操作——TortoiseSVN

----->创建仓库:

 

注意:满足如下条件之一,将弹出如下错误提示

当前目录已经是数据仓库

当前目录是数据仓库的子目录

------>工程检出:

需要开发人员与服务器的代码进行同步:

 

输入URL地址:

 

在王尧端:

新建一个User.java

:代表这个文件没有被SVN管理.

添加这个文件:

 

:代表已经被SVN管理.但是没有与服务器同步.

与服务器同步:

 

出现错误:

 

没有权限!!!

简单的设置权限的版本:

* 1.打开crm的仓库

* 2.找到仓库:conf/svnserve.conf

anon-access = write---匿名用户可读,可写.

提交代码:

 

 

在凤姐端:

更新代码:

 

修改代码:

:代表文件被修改了,与服务器不一致了.

提交代码:

 

:代表代码与服务器一致的.

------>恢复历史版本:

 

选中历史版本:检出

 

恢复本地文件

svn revert User.java

对已删除的文件/目录,在未进行提交操作之前,可以对其进行恢复。在任意位置通过右键菜单完成。

 

选择恢复后,出现对话框,选择要恢复的文件/目录,然后完成恢复操作


设置权限:

* 步骤一:找仓库中的 conf/svnserve.conf.* 步骤二:修改配置文件:
anon-access = none (取值:none/read/write)
auth-access = write
password-db = passwd----->确定账号   密码配置   文件位置

authz-db = authz----->确定    认证    配置文件位置

* 步骤三 :打开 passwd文件:设置用户名和密码.


* 步骤四 :打开 authz文件:设置用户的权限.


使用MyEclipseSVN的插件:

----1.新建SVN服务连接:

 

 

----2.将项目发布到仓库中:

 

 

 

 

项目被SVN管理.没有提交到服务器.

 

项目的代码与服务器是同步的.

 

----3.在新用户的MyEclipse:

新建资源库位置:

 

检出为:

作为工作空间项目检出.



© 著作权归作者所有

共有 人打赏支持
T-Brain
粉丝 1
博文 44
码字总数 46138
作品 0
海淀
程序员

暂无文章

about git flow

  昨天元芳做了git分支管理规范的分享,为了拓展大家关于git分支的认知,这里我特意再分享这两个关于git flow的链接,大家可以看一下。 Git 工作流程 Git分支管理策略   git flow本质上是...

qwfys
今天
2
0
Linux系统日志文件

/var/log/messages linux系统总日志 /etc/logrotate.conf 日志切割配置文件 参考https://my.oschina.net/u/2000675/blog/908189 dmesg命令 dmesg’命令显示linux内核的环形缓冲区信息,我们可...

chencheng-linux
今天
1
0
MacOS下给树莓派安装Raspbian系统

下载镜像 前往 树莓派官网 下载镜像。 点击 最新版Raspbian 下载最新版镜像。 下载后请,通过 访达 双击解压,或通过 unzip 命令解压。 检查下载的文件 ls -lh -rw-r--r-- 1 dingdayu s...

dingdayu
今天
1
0
spring boot使用通用mapper(tk.mapper) ,id自增和回显等问题

最近项目使用到tk.mapper设置id自增,数据库是mysql。在使用通用mapper主键生成过程中有一些问题,在总结一下。 1、UUID生成方式-字符串主键 在主键上增加注解 @Id @GeneratedValue...

北岩
今天
2
0
告警系统邮件引擎、运行告警系统

告警系统邮件引擎 cd mail vim mail.py #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysreload(sys)sys.setdefaultencoding('utf8')import getoptimport smtplibfr......

Zhouliang6
今天
1
0
Java工具类—随机数

Java中常用的生成随机数有Math.random()方法及java.util.Random类.但他们生成的随机数都是伪随机的. Math.radom()方法 在jdk1.8的Math类中可以看到,Math.random()方法实际上就是调用Random类...

PrivateO2
今天
2
0
关于java内存模型、并发编程的好文

Java并发编程:volatile关键字解析    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在...

DannyCoder
昨天
1
0
dubbo @Reference retries 重试次数 一个坑

在代码一中设置 成retries=0,也就是调用超时不用重试,结果DEBUG的时候总是重试,不是0吗,0就不用重试啊。为什么还是调用了多次呢? 结果在网上看到 这篇文章才明白 https://www.cnblogs....

奋斗的小牛
昨天
2
0
数据结构与算法3

要抓紧喽~~~~~~~放羊的孩纸回来喽 LowArray类和LowArrayApp类 程序将一个普通的Java数组封装在LowArray类中。类中的数组隐藏了起来,它是私有的,所以只有类自己的方法才能访问他。 LowArray...

沉迷于编程的小菜菜
昨天
1
0
spring boot应用测试框架介绍

一、spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit、spring test、assertj、hamcrest、mockito、jsonassert、jsonpath),但是在数...

yangjianzhou
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部