系列二VS项目软件配置工具介绍
Svn和VisualSvn介绍
在使用TortoiseSvn(SVN客户端)+ AnkhSvn(VS2008插件) +VisualSvn Server(版本控制服务器)进行源代码版本控制前,有必要先了解下Subversion(Svn)。
Svn(Subversion)是近年来崛起的版本管理工具,是CVS的接班人。目前,绝大多数开源软件都使用Svn作为代码版本管理软件。
Svn客户端:
Subversion的客户端有两类,一类是webSvn等基于web的,一种是以TortoiseSvn为代表的客户端软件。前者需要web服务器的支持,后者需要用户在本地安装客户端软件。
Svn服务器
Subversion支持linux和windows,更多是安装在linux下。
Svn服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊。
Svn存储版本数据也有2种方式:BDB和FSFS。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
VisualSvn 与VisualSvn Server
VisualSvn是Svn的客户端,和Visual Studio集成在一起,但是是商业软件,要收费;
VisualSvn Server是基于Windows平台上的Subversion服务器,它是免费的,它具体包括了Subversion、Apache和一个相应的管理界面。所以推荐使用免费的TortoiseSvn客户端以及VS插件AnkhSvn 。
与VSS版本管理软件的比较:
VSS:如果需要连接到发布在公网上的VSS服务器下载代码的话需要配置IIS,步骤非常麻烦,而且不一定成功,本人在去年就试过,弄了很久都没有成功。
VisualSvn Server:VisualSvn Server自带apache,不需要配置IIS服务器的,输入URL就可以下载保存在公网上的VisualSvn Server的代码,只需要确保开启443或者80端口就可以了操作简单。
问:为什么要用Svn,而不用VSS?
相同点:都能集成在VS2008下进行源代码管理,都能完全内网开发跟外网开发。
不同点:VSS是基于“锁定--编辑—解锁”模式的,这个模式有一个弊端,就是当其他人在编辑相关单元文件的时候,此单元文件处于锁定状态,其他人如果想编辑这个单元文件的话,只能处于等待状态。后来在持续集成中我使用的Subversion替代VSS,Subversion是基于“修改—冲突—合并”的一个模式,也就是说多个人可以同时签出一个单元文件,编辑然后提交,如果多个人都修改了同一文件的某一行的话,就会发生冲突,手工解决冲突,解决的效果就是合并代码。
Internet开发,和离线开发,VisualSvn会比VSS更胜一筹。
问:为什么要用VisualSvn Server,而不直接用Subversion?
答:因为如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装Svn Server为windows service(Windows服务),还要通过修改配置文件来控制用户权限,另外如果要想以Web方式【http协议】访问,一般还要安装配置Apache,如果是新手,岂不是很头痛?而VisualSvn Serve集成了Subversion和Apache,省去了以上所有的麻烦。安装的时候Svn Server已经封装为windows service(如果改变VisualSvn Serve的URL的时候,VisualSvn Serve会自动重启服务,非常方便),Apache服务器的配置也只是在图像界面上,指定认证方式、访问端口等简单操作;另外,用户权限的管理也是通过图像界面来配置。
VisualSvn Server是完全开源和免费的,当然它的官方客户端(VisualSvn)并不免费,不过没关系, VisualSvn Serve客户端有太多的免费版本供我们选择,TortoiseSvn就是一个不错的选择.
必备软件
基于VS2008 Team开发环境的源代码版本控制需要以下软件,安装顺序没有限制,一切默认安装即可
由于3个软件的官方下载地址不能访问,所以我把3个软件上传到我的网盘,我给出下载地址,欢迎大家下载
VisualSvn Server(版本控制服务器)免费开源软件。
版本号:VisualSvn-Server-2.1.4.msi
下载地址:http://files.cnblogs.com/lyhabc/VisualSVN-Server-2.1.4.rar
TortoiseSvn(管理员客户端),免费开源软件。
版本号TortoiseSvn-1.6.11.20210-win32-Svn-1.6.13.msi
下载地址:http://www.kuaipan.com.cn/file/id_4401224786917885.htm
AnkhSvn(VS2008插件),免费开源软件。
版本号:AnkhSvn-2.1.8420.8.msi
下载地址:http://files.cnblogs.com/lyhabc/AnkhSvn-2.1.8420.8.rar
系列二VS项目软件配置工具介绍的更多相关文章
- 二、VUE项目BaseCms系列文章:项目目录结构介绍
一. 目录结构截图 二. 目录结构说明 - documents 存放项目相关的文档文件 - api api 数据接口目录 - assets 资源文件目录 - components ...
- Lucene系列二:Lucene(Lucene介绍、Lucene架构、Lucene集成)
一.Lucene介绍 1. Lucene简介 最受欢迎的java开源全文搜索引擎开发工具包.提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言).Lucene的目的是为软件开发人 ...
- Vue入坑教程(二)——项目结构详情介绍
之前已经介绍了关于Vue的脚手架vue-cli的安装,以及一些文件目录介绍.具体可以查看<vue 入坑教程(一)--搭建vue-cli脚手架> 下面简单说一下具体的文件介绍 (一) pac ...
- (二十三)Dbutils 工具介绍
目录 Dbutils简介 API 介绍 Dbutils 已实现的结果集处理器 : Dbutils简介 commons-dbutis 是Apache 组织提供的一个开源JDBC工具类库,它对JDBC进行 ...
- Jmeter系列(2)- Jmeter工具介绍、Jmeter安装目录介绍、Jmeter面板介绍
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter支持哪些测试场景? Jme ...
- 从零开始搭建django前后端分离项目 系列二(项目搭建)
在开始项目之前,假设你已了解以下知识:webpack配置.vue.js.django.这里不会教你webpack的基本配置.热更新是什么,也不会告诉你如何开始一个django项目,有需求的请百度,相关 ...
- Pandas系列(七)-计算工具介绍
内容目录 1. 统计函数 2. 窗口函数 3. 加深加强 数据准备 # 导入相关库 import numpy as np import pandas as pd #Pandas 中包含了非常丰富的计算 ...
- Pandas系列(八)-筛选工具介绍
内容目录 1. 字典式 get 访问 2. 属性访问 3. 切片操作 4. 通过数字筛选行和列 5. 通过名称筛选行和列 6. 布尔索引 7. isin 筛选 8. 通过Callable筛选 数据准备 ...
- cbuild-一个创建和管理C++项目的工具
cbuild-一个创建和管理C++项目的工具 介绍: 这是个人开发的一个管理C++项目的工具,用shell脚本编写. 可能会不定期更新,也欢迎大家一起完善. 当前开发版本0.5.各版本功能如下: ve ...
随机推荐
- SE 2014年4月30日
如图配置: SW1 SW2 SW3 SW4组成一环型网络 Sw2 和Sw4个存在两业务vlan(vlan 10 和vlan 20) 1.Smart Link 组1 的引用实例1(绑定VLAN 10 ) ...
- 将Eclipse包括第一3正方形jar包裹Project Export并产生能够执行jar
于Project对,Export-Java-Runnable JAR file.需要注意的是一定要选择"Package required libraries into generated J ...
- HttpApplication处理对象与HttpModule处理模块
HttpApplication处理对象与HttpModule处理模块 (第三篇) 一.HttpApplication对象简述 在HttpRuntime创建了HttpContext对象之后,HttpRu ...
- Linux下OpenCV的环境搭建(转)
OpenCV is the most popular and advanced code library for Computer Vision related applications today, ...
- linux su,sudo命令
linux su 命令 建议大家切换用户的时候 使用 su - root 这样,否则可能发现某些命令执行不了 关于su .su - 及 sudo的区别 请往下看 1.命令作用 su的作用是变更为其它使 ...
- C语言中结构体參数变量的传递
[文章摘要] 在C语言中,结构体參数变量常常作为函数的參数来进行传递.但假设參数设置不当.会出现内存问题. 本文以实际的程序代码为例.具体地介绍怎样正确地使用结构体參数变量.为相关的开发工作提供了參考 ...
- Android PackageInstaller 安装和卸载
应用的安装方式:adb install或者下载安装 过程分析请參考老罗的blog,这里记录一下第三方应用程序安装apk的过程. 安装的过程主要是调用PackageInstaller这个App,源码的位 ...
- C++传递函数指针
函数指针是一个很好的类型.因此,您可以编写一个函数,它的一个参数是一个函数指针.然后.在(外部)当函数使用的函数指针参数,来间接调用时调用相应的参数的函数的函数. 因为指针在不同的情况下能够指向不同的 ...
- Bestcoder Round#45
1001 给定数n,要我们求该数的二进制中有多少组1, 相邻的1称为1组, 直接位运算摸你即可 #include <stdio.h> #include <string.h> # ...
- hdu2242(树形dp+tarjan+缩点)
hdu2242 http://acm.hdu.edu.cn/showproblem.php?pid=2242 给定n,m表示n个点,m条边 每个点有个权值 问我们删除两某条边(割边)后将图分为两个部分 ...