lijiannan_1981
著名写手
著名写手
  • 铜币15枚
  • 威望0点
  • 贡献值0点
阅读:1309回复:12

Subversion试用:)

楼主#
更多 发布于:2005-10-26 11:37
      前几天在和0000先生谈论到大型项目开发得项目管理方式得时候,提到了subversion,一致认为在现在的大中型软件开发中,团队合作是项目成功最重要的因素之一,尤其是使用.Net和Java EE这些强大的面向对象的语言开发程序,必然会多次分层,基于组件的共享等等,所以SCM就更重要了。Subversion是一个自由、开放源码的版本控制系统。它是一个通用系统,可用来管理任何类型的文件, 其中包括程序源码。它的初始目标很明确,实现绝大部分CVS的已有功能;充分考虑现有的CVS用户,在使用方式上模仿CVS,同时开发了一系列工具,使得基于CVS的项目能够顺利迁移到Subversion上。和CVS相比,它有很多优点,例如目录版本控制、不可分割的提交、一致的数据处理方式和更有效率的分支与标记等。。。
  
      Subversion有两种运行方式,一种是基于Apache Http Server,另外一种是Subversion Standalone Server。下面我讲解的是基于Apache Http Server的Subversion,这样做几个好处:A.能使用WebDAV协议。B.能使用浏览器作为客户端工具浏览源码仓库。C.可以很容易的支持到SSPI(Windows域认证)和LADP,这些都是Apache本身就支持的。D.能得到比较完善的Apache安全认证系统,比如SSL加密连接。

<!--未完成--> [ 2005-10-26 11:48:07 lijiannan_1981 修改 ]
无。
0000
作家
作家
  • 铜币143枚
  • 威望34点
  • 贡献值1点
1C#
发布于:2005-11-03 18:26
Re:Subversion试用:)
偶用eclipse的svn插件~~挺好用的~
.--. |o_o | |:_/ | // \ \ (| | ) /'\_ _/`\ \___)=(___/
lijiannan_1981
著名写手
著名写手
  • 铜币15枚
  • 威望0点
  • 贡献值0点
2C#
发布于:2005-11-03 09:06
Re:Subversion试用:)
to Aph:eclipse对于subversion有一个插件,具体配合得如何米有感觉,俺现在一直是在用TortoiseSVN,感觉还凑合
无。
ApH
ApH
知名人士
知名人士
  • 铜币0枚
  • 威望0点
  • 贡献值0点
3C#
发布于:2005-11-03 00:40
Re:Subversion试用:)
我们现在开发用的是CVS,配置上没有觉得有什么困难。客户端就直接用Eclipse的,或者直接cvs commond。感觉Eclipse的客户端很好用特别是同步,不过概念上有一点混淆。不过针对文件的存储结构对于java这样文件名与类名相关的语言来讲就有点麻烦了,不过还好。

不知道Subversion和Eclipse的配合的如何?

0000
作家
作家
  • 铜币143枚
  • 威望34点
  • 贡献值1点
4C#
发布于:2005-10-29 17:14
Re:Subversion试用:)
哈哈~~阅~
.--. |o_o | |:_/ | // \ \ (| | ) /'\_ _/`\ \___)=(___/
lijiannan_1981
著名写手
著名写手
  • 铜币15枚
  • 威望0点
  • 贡献值0点
5C#
发布于:2005-10-29 17:13
Re:Subversion试用:)
btw:
那个花儿姑娘,cvs不好用,我有亲身体验,配置麻烦,虽然和eclipse集成,我们在开发中使用这些诸如svn,junit,ant的目的就是为了简化开发,而cvs呢?

SVN初始目标很明确,实现绝大部分CVS的已有功能;充分考虑现有的CVS用户,在使用方式上模仿CVS,同时开发了一系列工具,使得基于CVS的项目能够顺利迁移到Subversion上。和CVS相比,它有很多优点,例如目录版本控制、不可分割的提交、一致的数据处理方式和更有效率的分支与标记等。

在CVS中,每个文件修订版号是不同的。这是因为CVS基于RCS。每一个文件在文件库都有对应的RCS文件,而文件库的结构,大致上就是依照目录结构展开。

[ 2005-10-29 17:17:20 lijiannan_1981 修改 ]
无。
lijiannan_1981
著名写手
著名写手
  • 铜币15枚
  • 威望0点
  • 贡献值0点
6C#
发布于:2005-10-29 17:10
Re:Subversion试用:)
具体配置如下:
(1):建立版本仓库:建议使用fsfs数据库,BDB是一种轻量级的数据库,而且在checkout的过程中可能出现问题;

(2):利用GUI工具将待导入的项目导入到版本库中,主意一定要起个项目名;

(3):权限配置:这里得多说几句svn运作得核心是权限控制,在大得软件公司,虽然是分工合作,但是,每个程序员是不能看到其他人所属模块下得东西的,每个人只能check out自己模块下的程序代码,对于公共库除外:
基本文件如下:

<Location /svn>   //指明档案库的根目录;
DAV svn              //动态加载
SVNPath d:\svn    //路径
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile D:/passwd     //用户名和密码文件
AuthzSVNAccessFile D:/svnaccessfile     //权限文件的路径
<LimitExcept PROPFIND OPTIONS REPORT> /*
Require valid-user                                *在这里设置受限制的访问方式
</LimitExcept>                                           */
</Location>
这是加载在apache/httpd.conf中的文件,当然你在做这一切前要加载了apache所要调用的
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
本文是在讲SVN而不是APACHE的配置,所以就不详细说了:)具体参见http://apache.org

(4)下面说下上面说到passwd和svnaccessfile两个文件,
当用户通过http方式访问的时候,svn首先会对当时的http请求发出拦截,同时激活passwd文件,通过用户名/密码的验证方式确定用户是否可以登陆服务,passwd文件生成格式如下:bin\htpasswd -c passwd xxx ......
在进行用户名和密码的验证成功后,SVN继续拦截,进行权限检查,同时加载svnaccessfile文件
eg svnaccessfile:

[svn:/]
leener = rw

[svn:/web-project1.0]
leener = rw
0000 = r

[svn:/web-project1.0/src]
leener = r
0000 = rw

[svn:/web-project1.0/src/java]
leener =
0000 = rw
r,w就是用户所拥有的权限,在上文中,借用了一下0000先生大的名字:)
这样不通的用户就有了不通权限

以上就是基本配置.
等周一俺再写ssl的配置问题
无。
0000
作家
作家
  • 铜币143枚
  • 威望34点
  • 贡献值1点
7C#
发布于:2005-10-29 16:54
Re:Subversion试用:)
不作无谓的争执.稍稍仔细一点看楼主的帖就知道我为什么要问理由了~
.--. |o_o | |:_/ | // \ \ (| | ) /'\_ _/`\ \___)=(___/
花儿朵朵
普通会员
普通会员
  • 铜币0枚
  • 威望0点
  • 贡献值0点
8C#
发布于:2005-10-29 16:43
Re:Subversion试用:)
你个变态
这还要说理由
没有它,软件工程就无法实现,就无法凝聚广大程序员的力量。它在软件工程中的作用实在是无可比拟的。
0000
作家
作家
  • 铜币143枚
  • 威望34点
  • 贡献值1点
9C#
发布于:2005-10-29 16:12
Re:Subversion试用:)
楼上是何方高人~~?神秘莫测~~说下理由先~
.--. |o_o | |:_/ | // \ \ (| | ) /'\_ _/`\ \___)=(___/
花儿朵朵
普通会员
普通会员
  • 铜币0枚
  • 威望0点
  • 贡献值0点
10C#
发布于:2005-10-29 14:52
Re:Subversion试用:)
奉劝楼主使用cvs
0000
作家
作家
  • 铜币143枚
  • 威望34点
  • 贡献值1点
11C#
发布于:2005-10-28 22:58
Re:Subversion试用:)
嘿嘿~`0000先生臨睡前最後一帖~水之~~

對了,今天那個 i++, i--的問題回頭找你說~~
.--. |o_o | |:_/ | // \ \ (| | ) /'\_ _/`\ \___)=(___/
wfeng
写手
写手
  • 铜币0枚
  • 威望0点
  • 贡献值0点
12C#
发布于:2005-10-26 13:36
Re:Subversion试用:)
你们开个工作间作开发好了,!!哈
[img]http://www.wait4c.com/bbs/userfiles/11154/2006031615575276668.jpg[/img]
游客

返回顶部