文档库 最新最全的文档下载
当前位置:文档库 › AD18版本控制使用 - V1.0

AD18版本控制使用 - V1.0

AD18版本控制使用 - V1.0
AD18版本控制使用 - V1.0

AD18版本控制使用

目录

一、创建工程 (1)

1.1打开软件 (1)

1.2创建工程 (1)

1.3保存工程 (2)

二、设置版本控制参数 (2)

2.1设置SVN版本 (2)

2.2创建SVN (3)

2.3设置备份路径 (3)

三、对工程进行版本控制 (4)

3.1添加工程至版本控制中 (4)

3.2Check Out文件 (8)

3.3修改并更新工程 (8)

四、打开以前版本与比较版本之间差异 (10)

4.1打开以前版本 (10)

4.2比较版本差异 (10)

一、创建工程

1.1打开软件

在Windows开始菜单选择AD18软件

1.2创建工程

点击File >> New >> Project >> Project…来创建工程文件

1.3保存工程

工程模板选择default(默认)、填写工程名称、选择保存路径。然后点击OK

二、设置版本控制参数

2.1设置SVN版本

点击右上角图标,打开Preferences(偏爱)窗口。选择Data Management >> Version Control 然后选择SVN版本为1.7(更高的版本可能会报错)。

2.2创建SVN

在Preferences(偏爱)窗口中选择Data Management >> Design Repositories。然后选点击Create New创建SVN

2.3设置备份路径

设置Reposity名称、Check Out路径(从SVN文件夹中将数据文件“PCB文件”保存至本地的路径)、Repository方法设置为file(因为这里是本机电脑)、设置Repository路径(必须为空)

点击OK之后,可以看到Status状态栏处显示√状态。

三、对工程进行版本控制

3.1添加工程至版本控制中

在工程窗口中选择相应工程,右键选择Version Control >> Add Project Folder to Version

Control…

在Flolers中新建一个文件夹,然后选中新建的文件夹,点击OK

选择需要添加到版本控制中的文件,然后点击Commit按钮

注意工程窗口中相应的工程会显示图标,表示工程处于准备提交状态

在工程窗口中选中工程,右键选择Verion Control >> Commit Whole Project…

在Add to Version Control窗口中Commit处添加相关注释信息

现在你可以看到工程窗口中相应工程后面将会显示图标。表示工程已经正常提交

3.2Check Out文件

选择Window窗口中Close All将所有工程全部关闭

点击File >> Check Out..将刚才提交的工程,从SVN服务器中Check Out出来并选择需要保存的路径

3.3修改并更新工程

打开工程下任意的文件,比如原理图文件。然后向原理图中添加或修改相关信息并保存文件

这时在工程窗口中相应的工程将会显示图标,表示本地拷贝的文件与原始文件不一致

选中显示图标的文件,右键选择Version Control >> Commit提交此文件并给当前版本添加相关注释信息

四、打开以前版本与比较版本之间差异

4.1打开以前版本

在AD18窗口中的右下角点击Panels >> Storage Manager,打开Storage Manager窗口。

选中窗口中的工程文件,在VCS Revisions窗口中会显示该工程以前的版本信息。双击Revision栏中的版本号即可打开相应版本的文件。

4.2比较版本差异

同时选中VCS Revisions窗口中的Revision栏中需要比较的版本号。右键选择Compare 执行比较操作。

此时将会打开Differences窗口,这里会显示版本之间差异的信息。同时也会自动打开比较的文件。

svn版本控制工具

第1节背景及svn简介 svn是subversion 缩写,它是一个自由、开放源码、多用户的版本控制系统, 支持通过本地或远程访问数据库和文件系统存储库。Subversion 管理着随时间改变的数据。这些数据放置在一个中央资料档案库(repository) 中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样你就可以把档案恢复到旧的版本,或是浏览文件的变动历史。许多人会把版本控制系統想像成某种“时光机器”。 版本控制是管理数据变更的一种技术。对于程序员来说,它已经成为不可或缺的工具,因为他们经常修改软件代码,产生部分的变更,然后第二天再取消所有的变更。想象有一群程序员同时工作的情况你就能理解,为什么需要一个良好的系统来管理可能出现的混乱。 SVN 不但提供了常见的比较、合并、标记、提交和分支功能,SVN 还增加了追踪移动和删除的能力。此外,它还支持非ASC Ⅱ文本和二进制数据、原子性提交、HTTP 访问等特性,当SVN 被广泛使用时,也需要有个管理工具能够更方便安全地维护SVN 的用户、组、权限、库等内容,协助普通用户更好地配置管理SVN,而无需都交由可能比较繁忙的系统管理员维护。而基于Web 的Subversion 管理工具将是一种非常适合的选择。SVN 可以支持windows 和Linux 两种操作系统,在两种操作系统上运行都具有稳定性和安全性。

SVN 在设计上包括了一个抽象的网络层,这意味着SVN 的版本库可以通过各种服务器进行访问,而允许程序员为客户端“版本库访问”的API 写出先关协议的插件,理论上讲,SVN 可以使用无限数量的网络协议,目前提供了有两种服务器运行方式:一种是Subversion Standalone Server。即svnserve,一个小型的独立服务器,另一种是基于Apache Http Server,即Web 服务器,它通过mod_dav_svn 模块,客户端使用WebDAV/DeltaV 协议进行访问。 SVN站在更高层次上对现在的安全产品,从系统和控制的角度进行了"有机"和"无隙"的整合。 SVN是一个安全虚拟网络系统,它将系统整体的信息安全功能均衡合理地分布在不同的子系统中,使各子系统的功能得到最大限度的发挥,子系统之间互相补充,系统整体性能大于各子系统功能之和,用均衡互补的原则解决了"木桶原理"的问题。 SVN能在跨接Internet, Intranet, Extranet间的网络所有端点实现全面的安全,而且还能提供基于企业策略的信息管理机制以充分有效地利用有限的带宽。SVN可以满足各种企业VPN的要求,通过为公司内部网络、远程和移动用户、分支机构和合作伙伴提供基于Internet的安全连接。所以,我们可以将SVN看成是VPN、防火墙、基于企业策略的信息管理软件集成在一起的Internet安全的综合解决方案。在这样一个网络系统中,所有互联网服务器端和客户端都是安全的,并有一个信息管理机制以不断地通过这个外部网络环境动态地分析及满足客户的

SVN使用手册(最全版)

SVN环境搭建及使用手册 一、SVN介绍 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。 二、SVN安装包介绍(安装包存放在服务器上D:\安装包\SVN) 服务端:SVN服务端安装包是VisualSVN-Server-3.6.0-x64.msi。 客户端:客户端软件主要包括下列3个文件 1. TortoiseSVN-1.8.8.25755-x64-svn-1.8.10.msi ----SVN客户端安装包 2. LanguagePack_1.9.5.27581-x64-zh_CN.msi ----SVN客户端语言包 3. AnkhSvn-2.5.12471.17.msi -----SVN针对Visual Studio的插件 三、搭建SVN服务端详细说明 第一步:搭建SVN团队项目、在服务器上打开已安装的SVN服务端、新建一个项目文件夹、创建完成后、右键项目复制项目URL 具体如下图

第二步:创建SVN用户、及设置密码、如下图 第三步:SVN服务端创建项目完成及创建用户后、使用SVN客户端将程序代码等文件提交上去、选中需要提交的程序文件、并填写正确SVN服务端项目的URL地址、

四、在日常开发中使用SVN的常用操作主要有:签出程序、文件合并、代码文件撤销、版本回滚、及历史版本控制等 说明:使用SVN版本控制,必须遵循4个原则。 1.新建文件前获取最新的程序代码、新建文件后先提交文件、再进行详细开发或编辑。 2.尽量避免多人同时处理同一个文件(svn毕竟不是那么优秀、无法智能将代码成功合并)。 3.项目成员提交程序前、必须获取最新的程序、编译且没问题、再进行提交操作。 4.提交代码必须选择解决方案进行代码提交、请勿选择其中某项目进行提交。 (1)签出最新程序:选择解决方案右键--》Update Solution to Latest Version, 如下图 (2)代码文件合并:如svn上的文件与本地文件产生冲突、则会在Pending Changes 中高亮显示、双击文件打开双方文件差异、合并完成后、点击Commit进行合并后文件提交。如下图

利用SVN对软件项目进行版本控制管理_闫晗

TECHNOLOGY TREND [摘要]在中小规模软件项目的开发过程中,通常由多人分工、共同完成,这就涉及到大量的源代码和文档。即使在沟通充分情况下,多 人维护同一份源代码也会出现混乱情况,如何对这些源代码和文档进行有效版本管理,并进行最终整合,是软件项目能否成功的关键之一。[关键词]版本控制;SVN VisualSVN ;Server ;TortoiseSVN 利用SVN 对软件项目进行版本控制管理 闫晗 (天津港信息技术发展有限公司,天津市 300000) 在中小规模软件项目的开发过程中,通常由多人分工、共同完成,这就涉及到大量的源代码和文档。即使在沟通充分的情况下,多人维护同一份源代码也会出现混乱的情况,如何对这些源代码和文档进行有效的版本管理,并进行最终整合,是软件项目能否成功的关键之一!本文简要介绍一套Windows 操作系统下利用免费、开源软件构建的高效、可靠的SVN 版本管理系统及其日常备份方法。 1SVN 简介SVN (Subversion )是一种版本管理系统,其前身是CVS (Con-currentVersions System ),它是根据CVS 的功能为基础来设计的,它除包括了CVS 的大多数特点外,还有一些新的功能:文件目录可以方便的改名、基于数据库的版本库、操作速度提升、权限管理更完善等。 SVN 通过对不同项目建立各自独立的版本库进行管理,每个版本库很像一个基于数据库的文件服务器,可以记录每一次文件和目录的修改内容,这使得用户可以取得文件以前的版本,检查所做的任何更改。SVN 采用HTTP 方式访问版本库,从而使用户可以在不同的电脑上获得(CheckOut )项目文件,经修改后再提交(Import )到SVN 服务器。另外,SVN 允许多个用户对同一份文件进行修改,当提交(Im-port )到SVN 服务器时会自动对该文件的不同用户版本进行融合(Merge )。当融合过程中有冲突(Conflict )发生时,SVN 会给出提示信息,用户可以借助SVN 的文档比较功能来解决冲突。 借助SVN 的版本管理,所有开发人员的项目文件都可被同步更新,因而开发工作可能变得非常顺利。文章所介绍的SVN 版本管理系统主要用到VisualSVN Server 和TortoiseSVN 这两个软件,VisualSVN Server 是一款图形化的SVN 服务器软件,提供Subversion 、Apache 服务器(提供HTTP 服务)和用户及权限管理等功能;TortoiseSVN 作为一款SVN 客户端软件,通过将功能项目嵌入到资源管理器的右键菜单,并借助其强大的图形化操作方式为用户提供方便快捷的SVN 服务。读者可以在https://www.wendangku.net/doc/2c4933292.html, 和https://www.wendangku.net/doc/2c4933292.html,/免费下载到这两个软件的最新版本。 2SVN 系统配置和使用2.1服务器端 在服务器安装端VisualSVN Server 的过程中,需要填写一个HTTP 服务端口号,如要采用安全连接,可勾选“Use secure connec-tion(https://)”选项,其他部分采用默认设置即可。 VisualSVN Server 中主要包括版本库(Repositories )、用户( Users )和组(Groups )三部分,通过各自上下文菜单可以新建版本库、用户和组。通过版本库的上下文菜单“Properties ”可以设置其访问用户和权限,同时其HTTP 访问地址也可通过右键菜单“CopyUrlto Clipboard ”拷贝至剪贴板,例如:http://192.168.0.55:8888/svn/a-jsys/。至此,一个新版本库建立完成,非常高效、便捷! 2.2客户端 安装过程无需太多配置,安装完成并需要重新启动后,资源管理器的右键菜单会增加多个TortoiseSVN 项目。 接下来向SVN 服务器中导入项目,项目结构可以按照“项目源码”、“项目文档”等进行分类以方便管理。在项目文件夹上点击右键并选择“Import ”菜单,在弹出的对话框中的“URLofrepository ”中填入刚才拷贝的URL 地址并点击OK ,在填入用户名和密码后,即可开始将项目导入SVN 服务器。 在导入完成后,还需要对刚才导入的项目通过右键上下文菜单“SVNCheckout ”检出,以后在该文件夹中对文件所进行的新增、修改、删除等操作都将被SVN 记录。 被纳入SVN 管理的文件夹和文件图标会根据不同状态发生改变,常见的有:“绿色√”表示没有被本地修改过;“红色!”表示被本地修改过;“黄色!”表示和服务器上版本存在冲突且无法自动融合;“蓝色?”表示该文件或文件夹为新增,不受版本控制,可以在提交对话框中选择是否提交到SVN 服务器。 在检出后的项目文件夹上点击右键,我们会发现新增了许多Tor-toiseSVN 菜单项,下面对常用的几个菜单进行介绍: SVNUpdate-更新,使本地项目文件与SVN 服务器进行同步。 SVNCommit-提交,提交本地修改后的项目文件至SVN 服务器,以便其他项目成员进行同步更新。 Revert-还原,可以将指定文件或文件夹还原至服务器最新版本。Show Diff-显示不同,该功能十分有用,主要用于本地版本与服务器版本存在冲突时进行对比。 通过以上的简单操作,我们已经构建起一套完整的SVN 版本控制系统,完全可以胜任中小规模软件开发的版本控制管理。SVN 服务器中存储着各个项目的版本库数据,因此也要做好这些数据的日常备份。 3SVN 服务器备份 VisualSVNServer 在数据备份方面提供了一条svnadmin 命令,借助批处理程序并结合Windows 系统的“任务计划”功能对版本库数据进行备份。 备份过程主要涉及到2个文件:backup.bat 和backupcmd.bat 1)backup.bat 文件作为主程序,其主要内容为:@echooff setSVN_HOME="C:\Program Files\VisualSVNServer"setSVN_ROOT=E:\Repositories setBACKUP_SVN_ROOT=E:\svnrootbak setBACKUP_DIRECTORY=%BACKUP_SVN_ROOT %\%date ~0,10%、 ifexist%BACKUP_DIRECTORY %gotocheck mkdir%BACKUP_DIRECTORY % for/r%SVN_ROOT %%%Iin(.)do@ifexist"%%I\conf\svnserve conf"call%BACKUP_SVN_ROOT %\backupcmd.bat"%%~fI"%%~nI end 2)backupcmd.bat 文件作为副程序被backup.bat 调用,其内容 为: @%SVN_HOME%\bin\svnadmin hotcopy%1%BACKUP_DI-RECTORY %\%2 本例中,在SVN 服务器分区E 下建立文件夹svnrootbak ,并将上 述三个文件拷贝至该文件夹下,通过Windows 的任务计划功能设定在每天特定时间执行backup.bat ,即可实现无人职守的版本库备份。 在中小规模软件项目的开发过程中,为了进行有效的协同开发而进行版本控制是一个基本要求。近两年,基于开源的SVN 构建的版本控制系统逐渐成为对软件项目开发进行版本控制的首选。但版本控制不只局限于软件开发领域,在档案管理、信息管理等领域也可得到应用。 应用科技 59

项目管理版本控制SVN实践教程

针对原文做了两个修改,见文中【修改】部分,不然不能正确配置服务器,并且添加了一些注释(flywen 2010-9-28) 原文出处: https://www.wendangku.net/doc/2c4933292.html,/ttzhang/archive/2008/11/03/1325102.html https://www.wendangku.net/doc/2c4933292.html,/ttzhang/archive/2008/11/04/1325940.html 文章版权归原作者Forrest Zhang所有。 一、VisualSVN Server的配置和使用方法【服务器端】 1.1 VisualSVN Server的安装 最新版本是1.6.1,你可以在这里下载: https://www.wendangku.net/doc/2c4933292.html,/files/VisualSVN-Server-1.6.1.msi VisualSVN Server,最新更新版本是1.6.2,你可以在这里下载: https://www.wendangku.net/doc/2c4933292.html,/files/VisualSVN-Server-1.6.2.msi VisualSVN Server Documentation下载: https://www.wendangku.net/doc/2c4933292.html,/server/doc/VisualSVN-Server.pdf 下载后,运行VisualSVN-Serv er-1.6.1.msi程序,点击Next,下面的截图顺序即为安装步骤: 图1:

图2: 注意:Server Port那里,默认端口有80/81/8080三个;如果最后面的CheckBox被选中,则表示使用安全连接【https协议】,这是的端口只有433/8433二个可用。Location 是服务器端的安装位置,Repositories是代码仓库,这里保留一份总的代码,别人的需要从中check out代码,修改后再commit回这个仓库 图3:

SVN版本控制系统中文版资料

版本控制系统(集中模式) (1) 版本控制系统指南 (5) 软件发行版本指南 (21) 版本控制系统(集中模式) 库与工作桌面的比较 工作桌面: 开发人员可以在本地修改维护源代码和版本控制系统中的文档。 库: 源代码的存储和修改记录集中在服务器上的版本控制系统中。 TortoiseSVN(小乌龟系统)介绍 1.文件描述 2.Windows资源管理器扩展。

版本控制系统核心操作 1.(检测) 2.(提交) 3.(更新) 4.(导入) 5.(导出) (检测)介绍 1.从库和存储在本地的版本控制系统中获取一个工作副本。 2.一次性操作 3.检测工作副本来源 4.本步骤应是第一步操作。

in sync(同步)

(提交)介绍 1.同步本地文件夹和库中的文件。 2.本地文件修改包括:文档和源代码的修改、删除和添加操作。 (提交)注意事项 1.应该一次性提交概念、功能和任务文件。 2.应该要确保提交的文件可以被成功编译。 3.将更改日志加入体骄傲信息中。

版本控制系统指南 1.工作区的所有文件夹和文件的图标都应该有一个标志来表明他们在资源管理器中的地位。 2.'.svn'文件夹保存版本信息。 版本控制系统修订编号 1.修订数字不仅表示本地工作区中的版本号也表示存储库的版本号。 2."HEAD"表示最新版本。 修改日志消息 修改版本跟踪: 1.修订版本号 2.作者 3.版本信息 4.修改的文件

(更新)介绍 1.从资源库中的修改更新到本地工作副本 2.同步存储库工作区;在同步时应该注意可能会发生冲突,版本控制系统可能会提示限制。

SVN版本管理工具的安装和使用

SVN的安装和应用手册 整理人:向楠

目录 一、Svn安装所需的文件 (3) 二、安装步骤 (3) 1.安装Apache (3) 2.安装SVN服务器端 (7) 3.安装SVN客户端 (10) 4.汉化SVN客户端 (12) 三、配置步骤 (13) 1.配置SVN服务器端 (13) 四、使用SVN (20) 1.进入SVN文件夹 (20) 2. 往SVN中放入文件 (22) 3. 从SVN中导出文件 (24) 4. 在SVN中更新文件 (26)

SVN的安装和应用: svn(subversion)是一款B/S架构近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。安装时要配置Apache。 一、S vn安装所需的文件 1. Apache- 2.2 web服务器软件安装包 2. VisualSVN 服务器端安装包 3.TortoiseSVN 客户端安装包 4. SVN 汉化包 (如下图:) 二、安装步骤 1.安装Apache 安装前首先看看 1.计算机中有没有apache以前安装过的残留的垃圾文件和文件夹。如 果有的话、先将这些文件清理干净,再进行安装。 2.计算机中有没有安装IIS(网络信息服务),如果有的话,先将IIS关 闭掉,或者将其默认的端口号80改为其他端口号,因为Apache的默认端口号也是80端口,两个端口会发生冲突。 (1)双击打开Apache安装包,单击“next”;

(2)选择“I accept……”,单击“next” (3)单击“next”; (4)按照给出的“eg”填写好信息,选择“for……”,单击“next”;

Svn版本管理教程

用subversion(SVN)进行版本管理 老是给别人讲svn,花时间太多,近来无事,就写了subversion的版本管理技巧,基本的没多讲,只捡重要的写了一下,以便一劳永逸,希望有用。 好难编辑,终于搞完了... 版本管理约定 程序员编写程序的过程中,每个程序都会有很多不同的版本,这就需要程序员很好的管理代码,在需要的时间可以取出需要的版本,并且每个版本都有一个完整的说明。 我们使用Sub Version(简称SVN)作为版本管理工具。这里着重介绍SVN作为跨平台的多人协作使用方法。在多个程序员管理同一段代码的过程中,版本的管理显得尤为重要,使用SVN可以方便的进行分支、合并,记录下所有的版本。 SVN基本配置 在开始某项软件、文档的开发与撰写时,首先由配置管理负责人建立SVN仓库、用户名及其权限,并通知相关人员SVN仓库地址、SVN仓库负责人。 配置强制注释 SVN仓库的负责人把工程的tsvn:logminisize设置为1,以便强制注释。设置方法:在你的工程文件夹右键->属性中,进入 Subversion标签,选中tsvn: logminisize,确保复选框recursive 选中,然后点击Set按钮把它的值设为1,其意思是指提交的注释最短长度为一个字。如图:

SVN软件配置 1.忽略文件 在SVN 的[Setting]的[General]中,设置需要忽略的文件以便忽略掉一些临时的、无用的文件,常被忽略的文件有*.opt *.ncb *.suo *.plg *.pch *.idb *.pdb *.scc *.obj Debug Release *.o *.bin *.out *.ilk *.aps debug release *.clw *.bak。每个程序员可以根据自己的需要进行修改忽略文件,上面只是使用VC++与Tornado编程时常用的一些忽略文件。

SVN版本管理规范

通联支付网络服务股份有限公司技术支持中心研发部版本管理规范 受理市场支持部 2011年1月

版本控制信息

目录 文档类别使用对象.... 错误!未定义书签。1.引言............. 错误!未定义书签。 目的.......................................................... 错误!未定义书签。 范围.......................................................... 错误!未定义书签。 术语定义...................................................... 错误!未定义书签。 2.版本管理......... 错误!未定义书签。 2.1版本标识方法.............................................. 错误!未定义书签。 2.1.1版本标识说明........................................ 错误!未定义书签。 2.2目录结构 ................................................. 错误!未定义书签。 2.3版本的存放................................................ 错误!未定义书签。 trunk ..................................................... 错误!未定义书签。 branches .................................................. 错误!未定义书签。 tags ...................................................... 错误!未定义书签。 files ..................................................... 错误!未定义书签。 script .................................................... 错误!未定义书签。 sql ....................................................... 错误!未定义书签。 2.4权限控制管理.............................................. 错误!未定义书签。 3.更新管理(版本升级).错误!未定义书签。 版本升级原则.................................................. 错误!未定义书签。 新版本的发布................................................. 错误!未定义书签。 版本管理流程说明 .......................................... 错误!未定义书签。 版本管理简略流程图 ........................................ 错误!未定义书签。 角色定位说明.............................................. 错误!未定义书签。 版本管理守则.............................................. 错误!未定义书签。4.备份管理......... 错误!未定义书签。5.SVN常用命令说明. 错误!未定义书签。

项目svn版本控制中的分支策略

[原创]项目svn版本控制中的分支策略 [原创]项目svn版本控制中的分支策略分类: tool svn 2010-06-10 23:14 2822人阅读 评论(0) 收藏 举报 [原创]项目svn版本控制中的分支策略 by AKara 2010-06-07 @ https://www.wendangku.net/doc/2c4933292.html,/akara @ akarachen(at)https://www.wendangku.net/doc/2c4933292.html, @https://www.wendangku.net/doc/2c4933292.html,/akaras 结合项目运营的一些体会,浅谈一下项目中经常用到的分支策略。从一个很旧的PDF <<Essential CVS>> 上发现了一些篇章,回头一读发现 多年前精简的原则阐述放到现在来说,仍有非常好的指导意义,基本涵盖我 打算要总结的内容了,干脆翻译一遍它。虽然用的是svn,

但是应该和cvs本质 上是相同的理念~ --------------------------------------------------------------------- (翻译仓促,如需转载请先联系:https://www.wendangku.net/doc/2c4933292.html,/akara / akaras@https://www.wendangku.net/doc/2c4933292.html,)4.4 Branching Strategies 本章将讲述分支策略中的基本原则以及两种主要的分支 原则。 并给予一些关于何时/为何你需要在一个项目中开辟分支的解答。4.4.1 Branching Philosophies 关于分支的经验法则是:保持开发的主线位于trunk(主干)上;而其他的一切, branch(分支)。问题在于如何界定哪些是开发的主线。trunk 应该只包含稳定 的代码还是也可容忍不稳定的代码?是否在每个release被测试前都应该分支? 新功能应该在trunk上开发还是在一个branch上开发?上面这些疑问都源于我们对'开发的主线'有两种不同的定义。这两种定义引出 了两种截然不同的分支原则,术语上称basically stable和basically unstable。4.4.1.1 Basically stable 顾名思义这个分支原则主导思想是trunk只包含稳定的随

SVN版本控制工具介绍报告

SVN版本控制工具介绍Version history

SVN版本控制工具介绍 (1) Version history (1) 目录 (2) 前言 (3) 术语 (4) 1. SVN简介 (4) 1.1 SVN的历史 (4) 1.2 SVN的特点 (5) 1.3 SVN Client图形化软件 (6) 1.4 其它版本控制工具,VSS,CVS,GIT (6) 2. SVN server,VisualSVN-Server (7) 2.1 下载安装VisualSVN-Server (7) 2.2 配置VisualSVN-Server (8) 2.2.1 创建资料库 (8) 2.2.2 配置用户访问权限 (10) 3. SVN client,TortoiseSVN和Linux中的SVN命令。 (12) 3.1 下载TortoiseSVN (12) 3.2 TortoiseSVN的基本操作 (12) 3.3 Ubuntu 10.04,svn命令 (17) 4. SVN版本控制过程 (18) 4.1 Linux kernel开发环境 (18) 4.2 SVN版本控制基本流程 (18) 4.2.1 SVN server side (18) 4.2.2 SVN client side (18) 4. 3 SVN高级主题 (22) 5. 参考资料 (23)

版本控制(Revision control)是维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程。此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确保由不同人所编辑的同一程式档案都得到同步。 本文档介绍了SVN server、client的安装,配置,和使用。 SVN server使用Windows版本,VisualSVN-Server-1.7.2.msi。 SVN client使用Windows版本,TortoiseSVN-1.6.2.16344-win32-svn-1.6.2.msi,和Ubuntu Linux 32-bit,svn, version 1.6.6 (r40053)。 读者可以根据需要下载最新的稳定版本。

VisualSVN Server +TortoiseSVN版本控制系统指南

版本控制在公司内部VisualSVN Server +TortoiseSVN方式 版本控制服务器上安装VisualSVN Server 控制版本控制服务与库操作的权限分配各网内客户机采用TortoiseSVN输入各自账号与服务进行通信。 客户机TortoiseSVN安装和使用参考《TortoiseSVN-1.6.8-zh_CN.pdf》 一、服务器VisualSVN Server安装 VisualSVN Server 的安装文件:VisualSVN-Server-3.3.0-win32.exe, 服务器系统要求: Windows Server 2008 or later Windows Vista or later 硬件要求: 1.4 GHz CPU 512 MB RAM 50 MB hard drive space

Visual SVN的安装非常的简单, 【1 】几乎是下一步。 【2】选择 visualVSN服务器和管理控制台或只有管理控制权限

【3】选择程序安装的路径、Subversion Repository(库)的路径和所使用的协议和端口。 你可以选择HTTP和HTTPS两种协议,如需使用svn协议也非常的方便,在1.4版本后,Subversion加入了Service运行的功能。端口号可以任意定义。对于HTTPS的端 口号默认可以选择443和8443,对于HTTP默认可以选择80、8080和81。

个人偏向于使用HTTPS的8443端口,原因很简单HTTPS安全性比较高,虽然443端口是标准HTTPS端口,但如果做WEB开发那肯定就有麻烦,同时Skype也会使用这个端口进行某些通讯。 还有就是下面的用于验证的身份,一个是windows验证,一个是Subversion身份验证 这里默认是Subversion身份验证。 【4】接着就是复制文件的过程。

TortoiseSVN使用简介

TortoiseSVN使用简介 2015-05-22 上海天畅信息技术有限公司

1 SVN简介 1.1 什么是SVN(Subversion)? 有一个简单但不十分精确比喻: SVN = 版本控制 + 备份服务器 简单的说,您可以把SVN当成您的备份服务器,更好的是,他可以帮您记住每次上传到这个服务器的档案内容。并且自动的赋予每次的变更一个版本。 通常,我们称用来存放上传档案的地方就做Repository。用中文来说,有点像是档案仓库的意思。不过,通常我们还是使用Repository这个名词。基本上,第一次我们需要有一个新增(add)档案的动作,将想要备份的档案放到Repository 上面。日后,当您有任何修改时,都可以上传到Repository上面,上传已经存在且修改过的档案就叫做commit,也就是提交修改给SVN server的意思。针对每次的commit,SVN server都会赋予他一个新的版本。同时,也会把每次上传的时间记录下来。日后,因为某些因素,如果您需要从Repository下载曾经提交的档案。您可以直接选择取得最新的版本,也可以取得任何一个之前的版本。如果忘记了版本,还是可以靠记忆尝试取得某个日期的版本。 1.2 SVN的应用场景 1.2.1 备份 您永远不知道计算机上的硬盘何时会坏掉。根据经验法则再加上摩菲定理,坏事情往往都发生在最重要的时刻。例如,要release东西的前一刻,硬盘完全坏掉,无法修复。所以,常常备份工作数据是非常重要的。大部分公司的server 都会有专门的备份机制,甚至是异地备援。绝对比放在自己的计算机里头,或是随身碟上面来的安全。 SVN Repository可以是自己计算机上的一个目录,或者是随身碟(不建议这样用)。当然也可以是公司的服务器。 1.2.2 版本控管 您无法保证手头上最新版本永远都是对的。很多时候,在经过数天努力工作后,您才发现走错方向。需要将所有的修改回复到数天前版本。没有几个人能够完全记住自己修改过什么东西。如果没有做好版本控管,那么,最差的状况就是要全部重来。 SVN有很棒的版本控管机制。所有上传的版本都会帮您记录下来。日后您可

SVN版本管理与提交代码规范

SVN版本管理,提交代码规范 项目开发要求: 1、工作目录要及时更新,不要和SVN服务器有太大的差别 2、提交代码时,如果出现冲突,必须仔细分析解决,不可以强行提交 3、提交代码之前先在本地进行测试,确保项目能编译通过,且能够正常运行,不可盲目提交 4、必须保证SVN上的版本是正确的,项目有错误时,不要进行提交 SVN注意事项,请严格按照操作顺序操作,避免提交代码导致重大事故: 一.提交之前先更新 1.SVN更新的原则是要随时更新,随时提交。当完成了一个小功能,能够通过编译并且自己测试之后,谨慎地提交。 2.如果在修改的期间别人也更改了svn的对应文件,那么commit就可能会失败。如果别人和自己更改的是同一个文件,那么update时会自动进行合并,如果修改的是同一行,那么合并时会产生冲突,这种情况就需要同之前的开发人员联系,两个人一起协商解决冲突,解决冲突之后,需要两人一起测试保证解决冲突之后,程序不会影响其他功能。 3.在更新时注意所更新文件的列表,如果提交过程中产生了更新,则也是需要重新编译并且完成自己的一些必要测试,再进行提交。这样既能了解别人修改了哪些文件,同时也能避免SVN合并错误导致代码有错 二.保持原子性的提交

每次提交的间歇尽可能地短,以几个小时的开发工作为宜。例如在更改UI界面的时候,可以每完成一个UI界面的修改或者设计,就提交一次。在开发功能模块的时候,可以每完成一个小细节功能的测试,就提交一次,在修改bug的时候,每修改掉一个bug并且确认修改了这个bug,也就提交一次。我们提倡多提交,也就能多为代码添加上保险。 三.提交时注意不要提交本地自动生成的文件 一般配置管理员都会将项目中一些自动生成的文件或者与本地配置环境有关的文件屏蔽提交(例如eclipse中的.classpath文件等)。如果项目中没有进行这方面的配置来强行禁止提交这样的文件,请自觉不要提交这样的文件。提交了这样的文件后,别人在更新后就可能与本地的环境冲突从而影响大家的工作。 四.不要提交不能通过编译的代码 代码在提交之前,首先要确认自己能够在本地编译。如果在代码中使用了第三方类库,要考虑到项目组成员中有些成员可能没有安装相应的第三方类库。项目经理在准备项目工作区域的时候,需要考虑到这样的情况,确保开发小组成员在签出代码之后能够在统一的环境中进行编译。 五.不要提交自己不明白的代码 代码在提交入SVN之后,你的代码将被项目成员所分享。如果提交了你不明白的代码,你看不懂,别人也看不懂,如果在以后出现了问题将会成为项目质量的隐患。因此在引入任何第三方代码之前,确保你对这个代码有一个很清晰的了解。 六.提前协调好项目组成员的工作计划 项目经理应该合理分配工作计划。每个成员在准备开始进行某项功能的修改之前,如果有可能,先跟工作小组的成员谈谈自己的修改计划,让大家都能了解你的思想,了解你即将对软件作出的修改,这样能尽可能的减少在开发过程中可能出现的冲突,提高开发效率。同时你也能够在和成员的交流中发现自己之前设计的不足,完善你的设计。 七.对提交的信息采用明晰的标注(写注释)

项目版本管理方法SVN

SVN管理项目版本1.方案1 1.1.按类别划分代码库 Trunk(1个):稳定版 Test(1个):测试版 Dev(1个或多个):开发版 1.2.优缺点 优点: 开发人员只需要关注dev库即可 缺点:

1.3.图解 1.4.执行过程 ●在项目启动的时, 运维人员创建trunk库,test库,dev库●开发初始版本时, 开发人员在dev库上开发, ●当开发完第一个运行版本后 开发人员将dev中的代码合并到test库中●测试人员从test库中checkout代码,进行测试●测试成功后, 测试人员将test中的代码合并到trunk中●运维人员从trunk库中checkout代码进行部署

●有新功能增加,或需求更改,或修改bug的时候 开发人员在dev库中进行开发 ●出现多个dev库的情况: 开发人员开发了功能fa,并提交到test,测试人员进行测试,此时,又需要开发新的功能fb,开发人员还在dev中进行开发,并且新功能fb开发完成,此时,测试人员还没有测试完功能fa,现在有新功能fc要开发,此时,就不能在dev上进行开发了,因为fb功能还没有合并到test,所以需要在dev上开一个分支dev1,然后在dev1上开发fc,这样就出现了第二个dev库,dev1 在开发fc功能的时候,测试人员测试完毕了fa,那么就将dev中的fb功能提交到test,此时dev就没有用了,可以删掉dev,以后的工作都在dev1上进行开发,在测试完fb 功能后,就将dev1中的fc功能合并到test中。 1.5.参与人员以及职责 开发人员: 关注dev库,开发某一阶段后,由项目经理将dev库内容合并到test库。 测试人员: 关注test库,测试成功后,由测试人员(或测试经理)将test库内容合并到trunk库。运维人员: 关注trunk库,将trunk库中内容checkout,并部署到正式环境。

利用SVN进行版本控制

利用SVN进行版本控制 Altium designer summer09支持利用第三方的版本控制软件进行版本控制,如比较流行的SVN、CVS、SCCI、MatrixOne等软件。本例介绍如何利用SVN版本控制软件与altium designer软件集成实现版本控制的方法。 第1步:安装SVN SVN软件是一款免费的开源软件,用户可以直接在网上下载。运行SVNSetup.exe开始安装,只需按提示单击下一步即可完成安装。如下图所示: 第2步:从altium designer中设置SVN调用路径: 打开菜单DXP?Preferences,展开Version Control树,按下图所示的选项进行设置。

第3步:生成SVN版本控制库: 生成SVN版本控制库之前需要用硬盘空间上新建一个空的文件夹(本例新建的文件夹路径:D:\Version Control),然后打开一个PCB项目,单击菜单【Project】?【Version Control】?【Create Repository】将弹出一个对话框,将文件夹路径指定到新建的文件夹并单击【OK】,随后系统将提示控制库己经顺利生成。如下图所示: 第4步:将设计工程纳入到SVN版本控制管理 单击菜单【Project】?【Version Control】?【Add Project to Version Control】将弹出一个对话框,按下图所示的方法设置好之后随后将会看到工程树的右边有一些小勾符号即表示设置成功。

第5步:修改后的文件进行版本控制: 当一个项目被纳入SVN 管理后,用户在后续对项目中任何文件作改动都将会被记录,存储后软件将在文件的目录树中提示一个红色的叹号,表示文件有被改动。被改动过的文件

SVN命令大全

目录 1、将文件CHECKOUT到本地目录 (2) 2、往版本库中添加新的文件 (2) 3、将改动的文件提交到版本库 (2) 4、加锁/解锁 (2) 5、更新到某个版本 (2) 6、查看文件或者目录状态 (2) 7、删除文件 (3) 8、查看日志 (3) 9、查看文件详细信息 (3) 10、比较差异 (3) 11、将两个版本之间的差异合并到当前文件 (3) 12、SVN帮助 (3) 13、版本库下的文件和目录列表 (4) 14、创建纳入版本控制下的新目录 (4) 15、恢复本地修改 (4) 16、代码库URL变更 (4) 17、解决冲突 (4) 18、输出指定文件或URL的内容。 (5)

1、将文件CHECKOUT到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2、往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下所有的php文件) 3、将改动的文件提交到版本库 svn commit -m “LogMessage” [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock 开关) 例如:svn commit -m “add test file for my test” test.php 简写:svn ci 4、加锁/解锁 svn lock -m “LockMessage” [--force] PATH 例如:svn lock -m “lock test file” test.php svn unlock PATH 5、更新到某个版本 svn update -r m path 例如: svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。svn update -r 200 test.php(将版本库中的文件test.php还原到版本200) svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit) 简写:svn up 6、查看文件或者目录状态 1)svn status path(目录下的文件和子目录的状态,正常状态不显示) 【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】 2)svn status -v path(显示文件和子目录状态) 第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改

相关文档