TortoiseSVN是Subversion版本控制系统的一个免费开源客户端,不需要为使用它而付费。





TortoiseSVN是 Subversion 的 Windows 扩展。它使你避免接触 Subversion 枯燥而且不方便的 Command Line。它完全嵌入 Windows Explorer,使用时只需在正常的窗口里右键操作就可以了。

Tortoisesvn下载安装

文章包含被禁用的url,无法保存和发布。

我们安装版本TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi

下载地址:http://pan.baidu.com/s/1jG9PONk

如果是64为系统安装:TortoiseSVN-1.7.7.22907-x64-svn-1.7.5

下载:http://pan.baidu.com/s/1pJv213X

在这里,我们电脑要已经安装SVN并且启动了才可以一下实验;

启动svn服务:svnserve -d -r C:\repository\svn

在服务器上创建仓库:

手动创建目录C:\repository\svn\test

创建成功,和用命令创建的一样

如下:

创建客户端:

创建目录C:\client\zhangshan  (记得启动SVN服务)

进入该目录,右击→SVN Checkout 填写URL:svn://localhost/test →OK

创建成功,新建a.java,将a.java纳入版本控制:右击a.java→TortoiseSVN→Add..

设置权限:

修改:C:\repository\svn\test\conf\svnserve.conf

12,13 行 

anon-access = read

auth-access = write

20行:password-db = passwd

27行:authz-db = authz



修改C:\repository\svn\test\conf\passwd 

添加:相当分配三个帐号

zhangsan = 123

lisi = 123

wangwu = 123

修改C:\repository\svn\test\conf\authz

添加两段:

最好手动修改不要复制,复制有时候会有问题可能是格式之类的;

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
hquGroup = zhangsan,lisi

# [/foo/bar]
# harry = rw
# &joe = r
# * =

[/]
@hquGroup = rw
wangwu = rw
 * =

@hquGroup = rw   #组前面用@不然会被当成人

 * =     #除了以上的人剩下的是*没有任何权限

提交:右击commit,填写messages;输入用户名密码 zhangsan 123 提交成功;

C:\client\lisi

李四也可以同样操作;

第一次使用 右击checkout

新建一个b.java  纳入版本控制 提交;

第二天张三来了使用update;如果只更新一个,选中它右击update即可;提交选中的也可以;

导入文件结构:

新建文件夹test,在test新新建doc和src,右击tset TortoiseSVN→Import,将当前的test结构导入到SVN服务器上;

权限控制:

 

修改C:\repository\svn\test\conf\authz

[/]

@hquGroup = rw

wangwu = rw

 * =

zhangsan,lisi对doc文件夹有读的权限没有写的权限:

[/doc]

@hquGroup = r

wangwu = rw

 * =

王五对src文件夹有读的权限没有写的权限:

[/doc]

@hquGroup = rw

wangwu = r

 * =

问题:张三的修改a.java 的时候 李四也在修改a.java 导致冲突

张三修改完a.java, 提交,李四也修改完a.java提交报错:

说a.java已过时,要先update;李四update后冲突

冲突后产生如下:

a.java.mine是自己写的(李四)

a.java.r3 是没更新也没修改之前的

a.java.r4 是张三写的

a.java 是张三李四写的处理后的

解决办法:

编辑冲突

第一和第二个都是以自己为本覆盖,三四个 是整合一起,一般使用三四选项

修改完,保存

右击a.java标记已解决 右击a.java→TortoiseSVN→Resolved...

然后就可以了,两个人写的代码就整合到一起了,然后李四这里在提交就可以了

百分百避免冲突:

锁定:

右击要设置的文件 右击a.java TortoiseSVN→Properties→New Property name:svn:needs-lock Property valu:true,

右击提交;

这样a.java 修改不了,要修改要get lock,张三get lock后 没有提交,李四不能操作a.java 不能get lock;要张三gen lock后修改完提交以后,别人才可以操作a.java;这样就肯定不会冲突了;

释放锁  拿到锁后,选中右击TortoiseSVN→Release lock

解锁 右击a.java TortoiseSVN→Properties Remove



这个方法在实际开发中不常用,导致效率低;

导出:项目做完了,里面有很多原信息文件.svn ..,我们右击桌面TortoiseSVN→Reop-browser选择数据仓库,登陆,右击左边的数据仓库 Export选择要导出到的文件夹 OK,倒出来的就是我们最终的代码;

Tortoisesvn图标介绍



恢复版本:

在客户端目录 右击 TortoiseSVN→Update to revision… Show log可以查看版本选择要恢复的OK就可以,右击TortoiseSVN→Export . 选择路径 就可以导出,执行update恢复到最新坂本;





注意:.svn这个隐藏目录记录着两项关键的信息: 工作文件的基准版本和一个本地副本最后更新的时间戳。千万不要手工修改或删除这个 .svn隐藏目录和里面的文件!!! 否则将会导致你本地的工作拷贝 (静态视图)被破坏,无法再进行操作。

TortoiseSVN使用的更多相关文章

  1. TortoiseSVN的使用

    1.安装和下载client客户端 (1)下载windows端程序:http://tortoisesvn.net/downloads.一般而言,如果是32bit操作系统,运行TortoiseSVN-1. ...

  2. 利用TortoiseSVN获取最新版本的OpenCV源码

    转自: http://blog.csdn.net/vsooda/article/details/7555969 1.下载安装TortoiseSVN:http://tortoisesvn.net/dow ...

  3. TortoiseSvn的安装过程详解

    运行TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi程序, 开始安装 点击Next, 下一步 选择 I accept 接受, 点击Next, 下一步 选择安装路径 ...

  4. 如何让TortoiseSVN导出新增或修改过的文件

    利用Windows系统下的TortoiseSVN客户端,可以导出指定版本之间修改过的文件,并保留完整的文件夹结构.下面我就来说说操作的步骤: 1.在网站项目的根目录下右键选择 “TortoiseSVN ...

  5. TortoiseSVN Clean up 失败的处理方法

    当使用 TortoiseSVN 下载项目失败之后,重新下载之前需要 Clean up,在 TortoiseSVN 中 Clean up 总是失败.   在命令行行中执行 svn cleanup 就成功 ...

  6. 【TortoiseSVN使用教程】

    TortoiseSVN使用教程 TortoiseSVN是一个SVN的客户端 1.Checkout Repository        首 先要Checkout服务器端的Repository,所谓的Ch ...

  7. (转)TortoiseSVN与VisualSVN Server搭建SVN版本控制系统

    本片主要介绍如何搭建SVN版本控制系统,主要使用工具: 1 客户端:TortoiseSVN (小乌龟) 2 服务端:VisualSVN Server 搭建出图形化管理,以及右键菜单版本控制管理的SVN ...

  8. TortoiseSVN与VisualSVN Server搭建SVN版本控制系统

    本片主要介绍如何搭建SVN版本控制系统,主要使用工具: 1 客户端:TortoiseSVN (小乌龟) 2 服务端:VisualSVN Server 搭建出图形化管理,以及右键菜单版本控制管理的SVN ...

  9. TortoiseSVN和VisualSVN-Server的配置使用,外网访问SVN版本库

    TortoiseSVN和VisualSVN-Server的配置使用,外网访问SVN版本库 SVN客户端程序:TortoiseSVN SVN服务器程序:VisualSVN-Server ######## ...

  10. 配置TortoiseSVN客户端, 强制签入前加注释

    正如上篇提到, 总有一些人在签入代码到SVN前没有加注释, 然后, 像这样: 鬼才知道改了什么东西. ①有些人可能就是没有写注释的习惯, ②有些人可能是忘记写注释 && SVN服务端和 ...

随机推荐

  1. 再深刻理解下web3.js中estimateGas如何计算智能合约消耗的gas量

    我们可使用web3.js框架的estimateGas函数获得一个以太坊智能合约的Gas估计值 ,通过执行一个消息调用或交易,该消息调用或交易直接在节点的VM中执行,并未在区块链中确认,函数会返回估算使 ...

  2. [HNOI 2015]亚瑟王

    Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑. 他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂 亮.众所周知,亚瑟王是一 ...

  3. 【BZOJ1060】【ZJOI2007】时态同步

    Description 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3-.进行标号.电路板的各个节点由若干不相交的导线相连接,且对于电路板 ...

  4. 【BZOJ4196】【Noi2015】软件包管理器

    原题传送门 题意: 给你一棵树,有2种操作: 1.使得某个点到根节点路径上的所有点权值赋为1. 2.使得某节点的子树中所有节点权值赋为0. 每次操作要求输出权值更改的节点个数. 解题思路: 显然是用树 ...

  5. poj 2528 (线段树+离散化)

    poj 2528 For each input data set print the number of visible posters after all the posters are place ...

  6. SpringCloud学习之zuul

    一.为什么要有网关 我们先看一个图,如果按照consumer and server(最初的调用方式),如下所示 这样我们要面临如下问题: 1. 用户面临着一对N的问题既用户必须知道每个服务.随着服务的 ...

  7. jQuery Datetable 渲染

    渲染器 有些情况下,使用表时,表中的行的数据源不包含您希望在表中直接显示的值.您可能希望将其转换为不同的表示形式(时间戳为人类可读的格式),合并数据点(名字和姓氏)或对该值执行一些计算(计算营业额和费 ...

  8. Android自定义模糊匹配搜索控件(二)

    在项目中遇到一个需要通过某个字的值筛选匹配带出其他信息的需求,在这里将实现思路整理出来. 源码地址:https://github.com/whieenz/SearchSelect 先看效果图 上图中的 ...

  9. VS2012代码对齐快捷键

    1.选中想要对齐的代码 2.全选代码后按住Ctrl+K,Ctrl+F键,就可以了

  10. POJ-2299 Ultra-QuickSort---树状数组求逆序对+离散化

    题目链接: https://vjudge.net/problem/POJ-2299 题目大意: 本题要求对于给定的无序数组,求出经过最少多少次相邻元素的交换之后,可以使数组从小到大有序. 两个数(a, ...