华搜传媒,专注网络推广、网络广告等互联网营销服务,QQ:755436989, 电话:13067953746 (同微信)

第一部分   TotoiseSVN介绍

TortoiseSVN 是 Subversion(简称:SVN) 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将Subversion 和版本控制系统看作一种“时间机器”。

第二部分  TotoiseSVN下载

下载地址:https://tortoisesvn.net/downloads.html

推荐从官网下载,软件分为32位和64位版本,下载时请根据自己的系统位数进行下载;

图2.1

也可以在下载页面选择合适的语言版本下载。

第三部分  TotoiseSVN安装

安装过程:

1、下载软件后,双击程序进行安装,点击“Next”;

2、在许可证协议页面,选择“I Accept the terms in the LicenseAgreement”,点击“Next”;

图3.1

3、在自定义选项页面,可以选择安装目录,也可以直接点击“Next”进行安装;

4、点击“Install”开始安装;

图3.2

5、安装完成后,点击“Finsh”;

第四部分  签入源代码到SVN服务器

假如我们使用VisualStudio在文件夹StartKit中创建了一个项目,我们要把这个项目的源代码签入到SVNServer上的代码库中里,首先右键点击StartKit文件夹,这时候的右键菜单如下图所示:

图4.1

点击Import,弹出下面的窗体,其中//192.168.1.249是服务器名,svn是代码仓库的根目录,StartKit是我们在上个教程中添加的一个代码库:

说明:左下角的CheckBox,在第一次签入源代码时没有用,但是,在以后你提交代码的时候是非常有用的。

图4.2

点击OK按钮,会弹出下面的窗体,要求输入凭据:

图4.3

在上面的窗体中输入用户名和密码,点击OK按钮:

图4.4

如上图所示,好了,源代码已经成功签入SVN服务器了。这时候团队成员就可以迁出SVN服务器上的源代码到自己的机器了。

第五部分  签出源代码到本机

在本机创建文件夹StartKit,右键点击Checkout,弹出如下图的窗体:

图5.1

在图5.1中URLof Repository:下的文本框中输入svn server中的代码库的地址,其他默认,点击OK按钮,就开始签出源代码了。

说明:图5.1中的CheckoutDepth,有4个选项,分别是迁出全部、只签出下一级子目录和文件、只签出文件、只签出空项目,默认的是第一项。上面的例子中,我们也可以使用web的方式访问代码库,在浏览器中输入//zt.net.henu.edu.cn/svn/StartKit/

这时候也会弹出对话框,要求输入用户名和密码,通过验证后即可浏览代码库中的内容。

搞定!源代码已经成功签出到刚才新建的StartKit目录中。打开StartKit目录,可以看到如下图的文件夹结构:

图5.2

一旦你对文件或文件夹做了任何修改,那么文件或文件夹的显示图片机会发生变化。下图中我修改了其中的二个文件:

图5.3

大家看一下不同状态所对应的图片:

我们已经知道怎么将源代码签入到SVN服务器,怎么从服务器签出代码到本机,也简单了解了不同状态所对应的图案啦。

第六部分  提交修改过的文件到SVN服务器

上面的图5.3中,我修改了位于Model文件中的二个文件ImageInfo.cs和NewsInfo.cs,下面演示如何提交到SVN服务器。注意:提交源代码到服务器时,一定确保本机的代码是最新版本,否则可能提交失败,或者造成版本冲突。在Model文件夹上点击右键或在Model文件下的空白处点击右键,点击SVNCommit…弹出下面的窗体:

图6.1

点击OK按钮后,弹出如下图的窗体:

图6.2

第七部分  添加新文件到SVN服务器

我们在Model文件下添加一个新的类文件UserInfo.cs,在Model文件下的空白处点击右键,点击SVNCommit…,和上面讲的提交修改过的文件到SVN服务器一样,就可以了。另外也可以在文件UserInfo.cs上点击右键,点击TortoiseSVN=>>Add,弹出如下图的窗体:

图7.1

选中UserInfo.cs文件,点击OK按钮,这样并没有将这个文件提交到SVN服务器,只是将这个文件标记为源代码库库中的文件,并将其状态置为修改状态。之后,我们要再SVN Commit这个文件一次,才可以将其真正提交到SVN服务器上的代码库中。上面讲是添加文件,实际上,添加文件夹的步骤也是一样的,这里就不说了。

第八部分  其他操作

1、更新本机代码与SVN服务器上最新的版本一致

这个也很简单,只要在需要更新的文件夹上点击右键或在该文件下的空白处点击右键,点击SVNUpdate,就可以了。

注意:更新操作可能会因为版本冲突而失败,这是可以使用合并【Merge】或其他方法解决;也可能因为锁定【GetLock】而失败,这是需要先解锁【Release Lock】。

2、重命名文件或文件夹,并将修改提交到SVN服务器

只要在需要重命名的文件或文件夹上点击右键,点击TortiseSVN=>>Rename…,在弹出的窗体中输入新名称,点击OK按钮,就可以了。此方法也不是直接重命名,而是将该文件或文件夹的名称标记为重命名后名称,也需要我们使用SVN Commit提交到SVN服务器后才真正重命名。

3、删除文件或文件夹,并将修改提交到SVN服务器

最简单就是,你直接删除文件或文件夹,然后使用SVN Commit提交更新到SVN服务器。另外一种方法是在你要删除的文件或文件夹上点击右键=>>TortoiseSVN=>> Delete删除,此方法也不是直接删除,而是将该文件或文件夹的状态置为删除,也需要我们使用SVN Commit提交到SVN服务器后才真正删除。

说明:实际上,从你把源代码迁签入SVN服务器开始,每一个版本的数据和文件,就算是你已经删除了的,也都可以随时迁出。

以上只是TortoiseSVN最简单的几个功能,其实他的功能远不止这些,其他的功能大家可以在使用的过程中慢慢体会,有些功能我会在下面的教程中使用到,到时候会和大家讲清楚用法。

注意:向SVN服务器提交源代码的时候,一定不要提交bin、obj等文件夹,否则会很麻烦。但是web项目的bin目录除外,但是web项目的bin目录中的引用其他项目而生成的dll不需要提交。

一个好习惯:如果项目中引用了其他的第三方的程序集,比如EnterpriseLibrary、FCKEditor等,这时候不要简单从他们的安装 位置引用,而是在你的解决方案下,添加一个Library的目录,把需要的程序集复制到这里,然后从Library目录引用!

小乌龟怎么拉取最新代码_TotoiseSVN(中文名:小乌龟)使用教程相关推荐

  1. git获取代码,拉取最新代码,更新代码等

    有句话说的很好:git是弓,我们的代码是箭,github就是靶子.我们需要把自己的代码存放到github的仓库上. 下图为截取的阮一峰博客的关于git常用命令总结的一张图片: 1.一开始从零获取代码 ...

  2. IntelliJ IDEA切换Git远程分支 提交代码 拉取最新代码

    前言:众所周知Git用命令提交代码比较繁琐,而且还得记住命令,那如何让我们更加方便的提交代码呢 以及获取最新内容拉到本地 还有更换你要提交到的分支呢 下面废话不多说. 目录 IDEA里切换Git分支 ...

  3. 从远程仓库拉取最新代码合并到本地分支

    这里共展示两类三种方式. 1.git pull:获取最新代码到本地,并自动合并到当前分支 命令展示 //查询当前远程分支 $ git remote -v //直接拉取并合并最新代码 $ git pul ...

  4. git gui怎么拉取项目代码_Git可视化极简易教程 —— Git GUI使用方法

    前言 之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中的成本,但是搜索了一下并 ...

  5. git gui怎么拉取项目代码_Git可视化极简易教程 — Git GUI使用方法

    前言 之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中的成本,但是搜索了一下并 ...

  6. 完美解决 - 前端发版后浏览器缓存问题(发版后及时拉取最新版本代码)

    一.简介 开发完发布新版本后,在有些电脑上总需要强刷才能获取到最新版本的内容,太恶心了. 浏览器缓存(Browser Caching)是为了节约网络的资源加速浏览,浏览器在用户磁盘上对最近请求过的文档 ...

  7. 【OpenGL】六、Visual Studio 2019 配置 GitHub ( 提取和拉取简介 | 拉取远程代码 )

    文章目录 一.提取和拉取简介 二.拉取远程代码 一.提取和拉取简介 在 " 团队资源管理器 " 主页中 , 选择 " 同步 " 选项 , 在同步页面中 , 有 ...

  8. git拉取tag代码_10年经验17张图带你进入gitflow企业项目代码版本管理的最佳实践...

    前言 对于项目版本管理,你是否存在这样的痛点:项目分支多而杂不好管理,git log界面commit信息错乱复杂无规范,版本回退不知道选择什么版本合适--. 项目版本管理的最佳实践系列,笔者将以两篇文 ...

  9. eclipse pull从github远程库拉取最新代码

    eclipse pull从github远程库拉取最新代码 团队合作开发,如果有人新增了代码,或者修改了公共代码或者配置,我们都要先pull从github远程库,拉取下最新代码: 操作如下: 右击项目- ...

最新文章

  1. Oracle 11.2.0.3.7 PSU补丁升级
  2. java反射原理三种,Java反射的原理,作用
  3. 四年级计算机期末质量分析,信息技术四年级(下)质量分析——刘千慧
  4. 睡前小故事之Html
  5. JDBC连接数据库:单线程、多线程、批处理插入数据的对比
  6. linux shell实现随机数多种方法(date,random,uuid)
  7. Ceph 常见错误 及设置
  8. UnimplementedError: Fused conv implementation does not support grouped convolutions for now
  9. Oracle11g exp 1445,oracle11g 导出表报EXP-00011:table不存在。
  10. php 微信 爬虫 源码,PHP实现微信开放平台扫码登录源码下载
  11. 变电所、分区所、AT所
  12. 二极管,电容正负极判断(图文)
  13. V-REP 插件教程
  14. ios微信多开 服务器,iOS微信双开(多开)
  15. [JavaME]手机玩点对点MSN传情动漫之补充说明
  16. Java内存溢出排查(必看)
  17. 关于ROS功能包里package.xml和CMakeList.txt的源码分析
  18. 如何提高学生习作水平
  19. mysql in个数限制_mysql where in 条件中参数个数问题
  20. python预测机票价格_一种国内机票价格预测方法与流程

热门文章

  1. 网络营销面临的问题有哪些?
  2. 甲方安全开源项目清单
  3. CSS:focus-visible伪类真的太6了!
  4. 数学学科的总体架构是什么?
  5. HTTP协议与FTP协议的区别
  6. 看到几篇关于于敏构型的文章,推荐一下,真的很详细
  7. echarts地图中增加图片的实例
  8. Android实现蓝牙的搜索,配对(不需要输入PIN,自动匹配),连接,通信
  9. adobe flash builder flex 4.6 下载地址
  10. 库克暗示观念差异阻碍苹果和Facebook合作