【前言】
SVN是一个开放的、免费的版本控制管理工具,相比CVS,Perforce等其他工具,SVN在版本模型,锁定策略方面要更加灵活高效。下面就让我们开始一步一步地学习如何使用SVN,如何把版本控制融入到日常工作中,更重要的是在学习版本控制的过程中树立起团队合作的理念。
关于SVN的参考资料,最好的莫过于其官方文档《Version Control with Subversion》,作为新手一定要看的是里面的第一章《Fundamental Concepts》和第二章《Basic Usage》以及第九章《Subversion Complete Reference》。
为了做到真正的In Action,我采用了Step-by-Step的方式,模拟一个项目从检出项目开始,到修改本地副本,再到提交变更,解决冲突等一系列的实际工作中会遇到的场景,期望通过这些场景和任务来对SVN和版本控制、团队合作有一个基本的认识
【读者范围】
本系列文章并不是入门文章,对于对版本控制和SVN完全一无所知的新手,你需要从头阅读SVN的官方文档(就是我前面提到的第一、二、九章),如果你想快速入门在我的博客上也提供了一系列的文章,请参考《版本控制之路系列》来获得快速的认识。
请先确保你已经了解了以下的知识:
A. SVN是什么?SVN有什么好处? SVN中的Repository和Working copy的概念
B. SVN的服务端和客户端软件的安装
C. SVN的passwd和authz文件的配置
D. SVN如何和Apache服务器搭配
E. SVN的常用命令含义(例如svn svnlook svnadmin svnsync)及其子命令
【阅读顺序】
本系列是我学习、实践SVN过程的再现,对于新手推荐你按照顺序一一阅读,它会引导你一步步由浅到深地认识SVN。如果你已经有了SVN的使用经验,可以参考下面的目录自由地选择你感兴趣的章节阅读。
【环境】
我的SVN服务端是CollabNet提供的,它把Apache和SVN绑定到一起,省去了单独下载Apache和SVN的麻烦。关于如何配置Apache和SVN,请参考我之前写过的另一篇文章:《使用Apache和SSL搭建安全的SVN访问》。
至于SVN客户端,我采用的是命令行。虽然TortoiseSVN作为一款非常出色的SVN客户端工具将所有的操作都界面化了,但我还是推荐你使用最基本的命令行---这能让你更快地熟悉SVN的同时知道自己到底做了什么。
【约定】
为了统一场景,下面我会使用一些约定,具体包括:
项目名称: ECoupon
版本库路径: C:\Develop\MyRepository\Workspace
版本库URL: http://localhost:8000/svn/Workspace
本地工作副本:E:\Tmp\ECoupon
临时工作副本:E:\Temp\ECoupon_tmp
其中本地工作副本和临时工作副本都是从版本库的同一个位置检出,前者是默认的副本(多数的实验都基于该副本进行),后者是为了演示某些操作而是用的(例如合并操作)。在没有特殊说明的情况下,我们的实验都将基于该项目和版本库进行。
示例中的路径是可变的,你可以在你认为合适的任意路径下安装SVN,创建版本库并进行实验
本文假设你已经成功地在本地安装了SVN软件,而且配置了相关的用户安全性验证,而且版本库就在你的机器上(确保你有足够的权限从本地访问版本库,这会影响到后面某些示例的执行)
本文假设你使用的是Windows操作系统
本文假设你对DOS的一些常见命令和批处理命令有一定的认识
【目录】
SVN In Action (1)
--创建一个版本库
--访问版本库
--svn list和svnlook tree命令
SVN In Action (2)
--在版本库中创建目录
--为项目添加版本控制功能
SVN In Action (3)
--查看项目的版本控制信息
--查看项目的实时状态信息
SVN In Action (4)
--添加新的内容到版本控制
--更新本地工作副本
SVN In Action (5)
--忽略已版本控制的资源:单个文件
SVN In Action (6)
--忽略已版本控制的资源:多个文件
SVN In Action (7)
--忽略已版本控制的资源:整个目录
SVN In Action (8)
--查看版本库资源内容
SVN In Action (9)
--比较本地工作副本和版本库的差异
--同时更新本地副本和提交本地变更
SVN In Action (10)
--撤销本地的修改:回滚文件的内容
SVN In Action (11)
--撤销本地的修改:回滚属性和操作
SVN In Action (12)
--svn update与svn revert
--svn del与svn revert
SVN In Action (13)
--回滚到指定的版本
SVN In Action (14)
--回滚到指定的版本:使用svn update -r 命令
--回滚到指定的版本:使用svn copy命令
--回滚到指定的版本:使用svn cat命令配合重定向
SVN In Action (15)
--解决冲突和比较差异
SVN In Action (16)
--创建分支
SVN In Action (17)
--切换分支
SVN In Action (18)
--从主干更新分支
SVN In Action (19)
--使用分支更新主干
SVN In Action (20)
--分支的生命周期
SVN In Action (21)
--标记
--主干、分支与标记的配合
SVN In Action (22)
--资源的锁定与清理
SVN In Action (23)
--SVN日常操作基本命令总结
-------------------------------------------------------------
生活就像打牌,不是要抓一手好牌,而是要尽力打好一手烂牌。
posted on 2009-12-13 12:29
Paul Lin 阅读(3461)
评论(5) 编辑 收藏 所属分类:
项目管理