版权声明:本文为博主原创文章。转载请注明出处。 https://blog.csdn.net/Jerome_s/article/details/27950055

Subversion(简称svn)安装
subversion软件下载安装
http://subversion.tigris.org

我们使用版本号Setup-Subversion-1.6.5.msi

我的网盘下载地址:http://www.kuaipan.cn/file/id_98175943000078380.htm?source=1

双击安装Setup-Subversion-1.6.5.msi

命令模式:
Subversion 组件
 server组件 (管理员使用)  server端命令

 svnadmin:用来调整和修正svn档案库的工具

 svnserve:一个独立的server程序, 能够作为server行程运行, 或是被 SSH 启动; 还有一个让你的档案库在网络上可供其他人存取的方法.

 client组件(用户使用) client命令

 svn:命令行client程序。这是用来管理数据的主要工具。

SVNserver端经常使用操作

验证svn安装是否成功:svnadmin –-version。

创建svn的数据仓库:svnadmin create C:\repository\svn\hqu (\repository\svn必须存在);

配置文件说明:C:\repository\svn\hqu\conf

svn 仓库权限配置

svnserve.conf 定义全部认证和授权政策

passwd 存放项目成员帐户信息

authz 主要是做复杂的群组权限控制

DB文件夹:存放数据的(二进制)

启动svn服务:svnserve -d -r C:\repository\svn\hqu   [单仓库]
启动svn服务:svnserve -d -r C:\repository\svn  [多仓库]
验证svn启动是否成功:
svn默认port是3690,新建一个控制台,netstat –an 看到3690;
将第一个控制台关闭,svn就关闭了在第二个控制台netstat –an 没看到3690;
说明服务启动成功;
说明:
svnserver启动 cmd命令行启动:

svnserve -d –r 文档仓库路径
-d 后台运行 

-r 版本号库的根文件夹

SVNclient经常使用操作

以下举例:

新建一个zhangshan的client:
新建文件夹 C:\client\zhangshan
控制台进入该文件夹
第一次使用 checkout:
前面启动的是单仓库:svn checkout svn://127.0.0.1 . (后面.表示取来放到当前文件夹)
svnserver还没东西。所以没下载东西,zhangshan文件夹下隐藏文件.svn。是建立两port联系的。

.svn这个隐藏文件夹记录着两项关键的信息: 工作文件的基准版本号和一个本地副本最后更新的时间戳。千万不要手工改动或删除这个 .svn隐藏文件夹和里面的文件!

!! 否则将会导致你本地的工作拷贝 (静态视图)被破坏,无法再进行操作。

将服务端改成多仓库svnserve -d -r C:\repository\svn
client使用svn checkout svn://127.0.0.1/hqu .
总结:clientcheckout:svn checkout svn://ip:port/repName .
zhangshan開始工作。下班直接提交就能够

1. 自己新建的类a.java,不是checkout下来的要先纳入版本号控制:svn add a.java
2. 认证授权:在server端改动配置文件授权,在C:\repository\svn\hqu\con\ svnserve.conf第十二行改动为:anon-access = write (匿名用户写的权限);实际开发不这样做。这里实验能够;
3. 提交:svn commit –m “zhangshan init a.java” a.java
这样就能够下班回家了~

总结:
client提交文件:svn commit -m "message" fileName
将文件纳入版本号控制:svn add fileName

新建一个lisi的client:
新建文件夹 C:\client\lisi
控制台进入该文件夹
第一次使用 checkout:
svn checkout svn://127.0.0.1/hqu .
下载了最新版本号:

李四开发了一个b.java 
纳入版本号控制:svn add b.java 
提交:svn commit –m “lisi init b.java ” b.java

下次张山来上班,张山李四都已经和server联系起来了:
checkout仅仅做一次。这次张山仅仅要update就能够了
控制台进入zhangshan文件夹运行:svn update 就能够更新全部最新版本号了;
总结:
client更新文件:svn update [fileName]
client删除文件:svn delete fileName
client恢复文件:svn revert fileName  注意:仅仅能恢复未提交的文件
client提交:svn commit –m “xxxx”

svn经常使用命令
svn checkout -从版本号库取出一个工作拷贝 
svn commit -将改动的文件提交到版本号库
svn update -更新你的工作拷贝 
svn add-向版本号库中加入新文件
svn delete-从版本号库中删除文件

svn revert-取消全部的本地编辑

Subversion文件夹规范

创建三个顶级文件夹

/trunk 存放开发的“主线”

/branches 存放支线副本

/tags 存放标签副本

将SVN服务注冊到windows系统服务中

svnserver端的窗体不小心关闭了,服务就停止了,
注冊win系统服务:(用管理员身份运行cmd)
sc create SVN-Service binpath= "C:\Program Files\Subversion\bin\svnserve.exe --service -r C:\repository\svn" displayname= "SVN-Service" start= auto depend= Tcpip

创建成功:在计算机服务里面能够看到SVN-Service;

能够删除一个服务: sc delete SVN_Service

SVN经常使用操作的更多相关文章

  1. svn执行update操作后出现:Error : Previous operation has not finished; run 'cleanup' if it was interrupted.

    svn执行update操作后出现:      Error : Previous operation has not finished; run 'cleanup' if it was interrup ...

  2. 转:svn命令行操作

    原文:http://zhumeng8337797.blog.163.com/blog/static/10076891420115218821912/SVN命令行 -- ::| 分类: CVS |字号 ...

  3. SVN分支/合并操作小记

    一.前言 说来惭愧,鄙人从事开发多年,使用svn已经好几个年头了,但是却仅限于update.commit.compare之类的操作,最近想到github上学习别人写的NIO源码,顺便去熟悉git的使用 ...

  4. SVN 的一些操作

    SVN是一个非常好的代码管理工具. 之前一直是使用现有的SVN环境,认为非常方便. 可是近期要自己搭建一个SVN环境来托管自己的代码,并且代码放在独立的server上,所以决定自己搭建一个SVN环境. ...

  5. svn基本常见操作设置

    代码管理工具一开始用的确会有点懵,但是永久了就会发现都是那几下套路,记录下来 托管好了代码一般起冲突了还是想重新搞一下,有个万能的重置操作,那就是重新关联svn项目,以前有时更换地址也是,发现遇到很多 ...

  6. 代码管理工具:Git 和 Svn 的简单操作

    1. git 先注册git config --global user.name "name" git config --global user.email "email& ...

  7. 转:Tortoise SVN 版本控制常用操作知识

    转自:http://www.cnblogs.com/csharp4/archive/2010/11/26/1889317.html 今天老大跑过来问我如何把SVN服务器上的当前版本回退到某一个版本上去 ...

  8. 配置管理SVN软件具体操作

    配置管理(SVN) CM:configuration management  配置管理人员 什么是SVN SVN --Subversion --是一个开放源代码的版本控制系统 --时下流行的有SVN和 ...

  9. svn使用&&常用操作&&问题处理

    第一部分: SVN使用 svn介绍 即subversion的简称. 版本控制系统(CVS)包括集中式版本控制系统(CVCS)和分布式版本控制系统(DCVS).svn是集中式版本控制系统. 可以用于团队 ...

随机推荐

  1. let和const的一些知识点

    let和const 不可以重复声明 不会发生变量提升,因此必须在声明之后使用,否则报错! 只在声明所在的块级作用域内有效 let 同一个作用域内不能重复声明同一个变量: function func() ...

  2. Gartner首推机密计算:阿里云名列其中

    近日,全球信息技术研究机构Gartner发布了2019年云安全技术成熟度曲线报告(Gartner, Hype Cycle for Cloud Security, 2019, Jay Heiser, S ...

  3. 【踩坑】nextSibling 和nextElementSibling的区别

    DOM 使用nextSibling属性返回指定节点之后的下一个兄弟节点,(即:相同节点树层中的下一个节点). nextSibling属性与nextElementSibling属性的差别: nextSi ...

  4. 转:Linux 2.4.x内核软中断机制

    源地址:http://www.ibm.com/developerworks/cn/linux/kernel/interrupt/ Linux 2.4.x内核软中断机制 杨沙洲 (pubb@163.ne ...

  5. Configuring to Debug and Workaround Broken Client Applications

    背景:C3P0数据库连接池占满 Configuring to Debug and Workaround Broken Client Applications http://www.mchange.co ...

  6. 数据交换格式之 - XML

    XML简介 XML是一种可扩展的标记语言,被设计用来传输和存储数据.传输数据. 需要自定义标签,自我描述性,XML是W3C的推荐标准: XML的特点与作用 特点: xml与操作系统.编程语言的开发平台 ...

  7. spring-搭建-概念-配置详解-属性注入

    1 spring介绍  三层架构中spring位置 spring一站式框架 正是因为spring框架性质是属于容器性质的. 容器中装什么对象就有什么功能.所以可以一站式. 不仅不排斥其他框架,还能帮其 ...

  8. 查看cpu性能和磁盘空间

    df -h查看当前磁盘空间 du -sh查看当前目录占用的磁盘空间 du -sh * 查看当前所有目录占用的磁盘空间   lscpu查看cpu信息 free查看空间总量

  9. LA2965 Jurassic Remains

    Jurassic Remains https://vjudge.net/problem/UVALive-2965 Paleontologists in Siberia have recently fo ...

  10. 洛谷P3299 保护出题人

    注意每一关的时候,前一关的植物会消失.保留整数指四舍五入. 解:冷静分析一波,列一个式子出来,发现每一关的植物攻击力要是(ai + ... + aj) / (xi + d * (i - j))的最大值 ...