关闭

团队开发用svn做版本控制(附web开发中dreamweaver与svn的搭配)

5831人阅读 评论(0) 收藏 举报

这是我目前掌握的一点点svn入门使用攻略,写下来备用。

第一,搭建svn服务端
一个团队搭建一个服务端即可,如果你不需要搭建的话请看后面客户端部分,这里直接跳过即可。

1,下载服务端和客户端,然后安装。
这里需要注意的是服务端subversion和svn版本必须一致,否则会出现文件系统不一致的问题。
下面是我总结的一些注意事项,具体配置方法参见这篇教程:
http://chengyue2007.iteye.com/blog/574867
2,创建放版本库的地方
这里随便创建一个空文件夹即可,然后用svn选择创建版本库就行了。
3,配置和开启svn服务
创建后要配置用户,指定用户名和密码。
开启服务,windows建议将其作为服务,可以后台运行。
作为服务的方法如下:
打开cmd,键入以下命令即可:

sc create SVNService binpath= "C:\Program Files\Subversion\bin\svnserve.exe --service -r E:\SVN\jmr" displayname= "SVNService" depend= Tcpip start= auto


以后开机什么都不用做,svn就能自动运行了。
4,将代码导入到版本库
导入的时候用自己设置的用户导入即可。其实这个是一种客户端的行为了,所以你要输入svn的服务端地址和用户名密码。
这样就搭建好svn服务端了,下面你就可以让团队成员来使用你的svn了。

如果web开发使用svn做版本控制的话,这里有几个方案。
首先svn版本库里的代码肯定不能用来做web测试的。所以svn仅是用来做版本控制。
第1种方法:所有成员可以用自己的机器作为测试服务器,编写完自己负责的功能,在自己电脑测试成功后,再上传文件到svn服务器即可。其他成员从svn下载最新版本即可。
第2种方法:只能有一台web服务器来做测试的话,就可以做成这个样子,每次svn有文件更新都对应的更新web的根目录。这里可以用一个脚本文件来实现,参见下面网址:

第3种方法:可以结合前面两种或者结合ftp和svn,这些没有具体去做,不过感觉前面两种方法就挺好的了。

第二:
团队成员只需要使用svn客户端即可。
1,如果是一般的软件开发就使用toturialsvn即可,如果是使用dreamweaver开发web应用的话可以跳过这条参看下面的dreamweaver使用方法。

2,dreamweaver使用svn

更多内容请访问:http://help.adobe.com/zh_CN/Dreamweaver/10.0_Using/WS80FE60AC-15F8-45a2-842E-52D29F540FED.html
这个需要dreamweaver cs4及以上版本才能支持svn的版本控制,建站方法如下:

这里本来想自己截图说明如何建站的,不过想到建站这个操作很常用,网上教程也很多,我就不麻烦了。这里我只把svn连接建立方法写在这里。

若要建立 SVN连接,请执行以下步骤:

1.     选择站点”>“管理站点,选择要为其设置版本控制的站点,然后单击编辑按钮。

注: 如果还没有为 Dreamweaver站点设置本地文件夹和远程文件夹,则至少需要设置先本地站点,然后再继续。(此阶段不要求设置远程站点,但最终将文件发布到 Web之前,还是需要进行设置。)有关详细信息,请参阅设置 Dreamweaver 站点

2.     务必在站点定义对话框中选择高级选项卡。

3.     站点定义对话框的类别栏中,选择版本控制类别。

4.     访问弹出菜单中,选择“Subversion”

5.     按以下步骤设置访问选项:

§  协议弹出菜单中选择协议。可选协议包括 HTTPHTTPSSVN SVN+SSH

注: 使用 SVN+SSH协议要求具备特殊配置。有关详细信息,请访问 www.adobe.com/go/learn_dw_svn_ssh_cn

§  服务器地址文本框中,输入 SVN 服务器的地址。通常形式为:服务器名称..com

§  存储库路径文本框中,输入 SVN 服务器上存储库的路径。通常类似于:/svn/your_root_directorySVN存储库根文件夹的命名由服务器管理员确定。

§  (可选)如果希望使用的服务器端口不同于默认服务器端口,请选择非默认值,并在文本框中输入端口号。

§  输入 SVN服务器的用户名和密码。

6.     单击测试来测试连接,或单击确定关闭对话框。然后单击完成,关闭管理站点对话框。

 

第三:svn使用方法和规范

来自:http://www.cnblogs.com/xpxu/archive/2010/04/06/1705195.html

先更新,再提交
SVN更新的原则是要随时更新,随时提交。当完成了一个小功能,能够通过编译并且自己测试之后,谨慎地提交。
如果在修改的期间别人也更改了svn的对应文件,那么commit就可能会失败。如果别人和自 己更改的是同一个文件,那么update时会自动进行合并,如果修改的是同一行,那么合并时会产生冲突,这种情况就需要同之前的开发人员联系,两个人一起协商解决冲突,解决冲突之后,需要两人一起测试保证解决冲突之后,程序不会影响其他功能。
在更新时注意所更新文件的列表,如果提交过程中产生了更新,则也是需要重新编译并且完成自己的一些必要测试,再进行提交。这样既能了解别人修改了哪些文件,同时也能避免SVN合并错误导致代码有错。

多提交
每次提交的间歇尽可能地短,以几个小时的开发工作为宜。例如在更改UI界面的时候,可以每完成一个UI界面的修改或者设计,就提交一次。在开发功能模块的时候,可以每完成一个小细节功能的测试,就提交一次,在修改bug的时候,每修改掉一个bug并且确认修改了这个bug,也就提交一次。我们提倡多提交,也就能多为代码添加上保险。


不要提交不能通过编译的代码
代码在提交之前,首先要确认自己能够在本地编译。如果在代码中使用了第三方类库,要考虑到项目组成员中有些成员可能没有安装相应的第三方类库。项目经理在准备项目工作区域的时候,需要考虑到这样的情况,确保开发小组成员在签出代码之后能够在统一的环境中进行编译。


每次提交必须书写明晰的标注
在一个项目组中使用SVN,如果提交空的标注或者不确切的标注将会让项目组中其他的成员感到很无奈,项目经理无法很清晰的掌握工作进度,无法清晰的把握此次提交的概要信息。在发现错误后也无法准确的定位引起错误的文件。所以,在提交工作时,要填写明晰的标注,能够概要的描述所提交文件的信息,让项目组其他成员在看到标注后不用详细看代码就能了解你所做的修改。


提交时注意不要提交本地自动生成的文件
例如eclipse中的.classpath文件,Windows生成的缩略图Thumbs.db,项目编译生成的临时文件.obj, .class等等。如果项目中没有进行这方面的配置来强行禁止提交这样的文件,请自觉不要提交这样的文件。提交了这样的文件后,别人在更新后就可能与本地的环境冲突从而影响大家的工作。


不要提交自己不明白的代码
代码在提交入SVN之后,你的代码将被项目成员所分享。如果提交了你不明白的代码,你看不懂,别人也看不懂,如果在以后出现了问题将会成为项目质量的隐患。因此在引入任何第三方代码之前,确保你对这个代码有一个很清晰的了解。


慎用锁定功能
在项目中要慎用锁定的功能,在你锁定了一个文件之后别人就无法继续修改提交该文件,虽然可以减少冲突的发生率,但是可能会影响项目组中其他人员的工作。平时只有在编辑那些无法合并的文件(例如图片文件,flash文件等)时,才适当的采用锁定操作。

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:407604次
    • 积分:3772
    • 等级:
    • 排名:第8519名
    • 原创:42篇
    • 转载:17篇
    • 译文:1篇
    • 评论:71条
    最新评论