??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美在线视频二区,91精品国产综合久久香蕉的用户体验 ,丁香婷婷综合激情五月色http://www.aygfsteel.com/19851985lili/category/20445.html☜GivE mE HapPy ? zh-cnThu, 29 May 2008 04:14:23 GMTThu, 29 May 2008 04:14:23 GMT60版本控制http://www.aygfsteel.com/19851985lili/articles/fdf.html☜♥☞MengChuChen☜♥☞MengChuChenThu, 29 May 2008 03:27:00 GMThttp://www.aygfsteel.com/19851985lili/articles/fdf.htmlhttp://www.aygfsteel.com/19851985lili/comments/203763.htmlhttp://www.aygfsteel.com/19851985lili/articles/fdf.html#Feedback0http://www.aygfsteel.com/19851985lili/comments/commentRss/203763.htmlhttp://www.aygfsteel.com/19851985lili/services/trackbacks/203763.html1. 技术内q?/h2>
  • Subversion
    • 集中式版本控制的典型代表。CVS 的最x代者,是开源Y件安装量最大的版本控制pȝ。是开源Y件自w生存和l箋发展的基软g?
  • Bazaar
    • ?Ubuntu 一h长的分布式版本控制系l。实现卖d支另外的ҎQ下一代个人版本控制系l?
  • SVK
    • 用SVKq一?SVN 上实现的分布式管理系l,曄作ؓ Subversion 分布部v的最佳选择Q今天已l显得过时了。我们有更好的跨地域版本控制的方案?
  • Eclipse + Subclipse
    • 在最行的集成开发工具上使用最行的版本控制工兗?
  • TortoiseSVN
    • 如果你?Windows q_的话?
  • 命o?
    • 解除 Windows E序员对命o行的恐惧?

2. 分布式还是集中式版本控制

分布式版本控制系l已成爆发之势,来多的开源Y件用诸?GNU arch, Bazaar, Mercurial, Git, SVK{分布式版本控制pȝ?q一斚w是开源Y件开发的本质Q全部源码公开Q跨地域的开发团队)军_的,另一斚w是管理角度(服务器扩展性,Z信Q铄代码提交Q?

我们认ؓ了解分布式版本控制系l,对于E序员是必要的,因ؓ:

  • 从开源社区݅取营ȝ需要;
  • 对第三方只读源码库维护的需要;
  • 下一代个人版本控制工P

我们认ؓ“集中?#8221;版本控制pȝQ仍然是商业企业软g开发中的首选,因ؓ是企业对授权和集中管理的需要?即有跨地域开发的需要,我们也可以通过镜像、代理等方式实现 Subversion 的高效运行?

比较目

分布?bzr)

集中?svn)

性能

服务器扩展能?/p>

★★?/p>

?/p>

|络带宽占用

?/p>

☆☆?/p>

本地保存的完整版本历?/p>

★★?/p>

-

安全

历史版本的安全验?/p>

★★?/p>

-

数据安全QBCPQ?/p>

★★?/p>

?/p>

分支操作

代码合ƈQmergeQ能?/p>

★★?/p>

★★

分支理

★★?/p>

★★?/p>

分支建立速度

?/p>

★★?/p>

用户界面

使用q_q泛?/p>

★★?/p>

★★?/p>

命o行可用?/p>

★★?/p>

★★?/p>

Windows囑Ş界面

?/p>

★★?/p>

权限理

l一的用户帐?/p>

-

★★?/p>

针对目录?Checkout

-

★★?/p>

目录授权

-

★★?/p>

分支授权

?/p>

★★?/p>

其他

q程版本库复?/p>

★★?/p>

★★?/p>

ȝ提交

★★?/p>

-

3. SVN ?CVS 的对?/h2>

我们选择 Subversion(SVN) 作ؓ企业版本控制工具的首选,而不?CVS。不是因为我们?Subversion 旉更久Q也不是因ؓ我们?Subversion 更有感情。恰恰相反,CVS 很早已l渗透到我们的血液中。关?CVS 可以参考我们这个文档: 《CVS 版本控制?/a>?

多年的?CVS 的开发经验,我们深感 CVS 在用和理上的不。下面是 SVN ?CVS 的对照?

4. SVN ?商业版本控制pȝ的对?/h2>

那么商业的版本控制工具如何呢Q我们要大声告诉你,不要Q不要把您的核心资—?#8220;代码”让他人绑Ӟ

比较目

某商业Y?/strong>

SVN

服务器端存储

是否依赖数据库(额外的管理负担)

依赖

不依?/p>

数据存储格式是否开?/p>

?/p>

?/p>

是否可以版本库导出Q以侉K建、导入其他项目、分发给W三Ҏ者配|管理Y件切换?/p>

?/p>

?/p>

是否可以Ҏ务器端存储进行整?/p>

?/p>

?/p>

是否可以d删除配置?/p>

?/p>

?

可否通过插gq行功能扩展Q?/p>

?/p>

?/p>

命o?/p>

命o行功能是否完?以便实现工作自动?/p>

?/p>

?/p>

是否可以集成到自动编?nightly build)pȝQ?/p>

?/p>

?/p>

文g状态保?/p>

客户端本地是否有配置文g以保持状态?

?/p>

?/p>

是否依靠服务器端q行状态保持?

?/p>

?/p>

客户端是否可以脱行?

?/p>

?/p>

工具整合

是否可以和资源管理器整合Q?/p>

?/p>

?/p>

是否?Eclipse 插gQ?/p>

?/p>

?/p>

成本

软g本n成本

?/p>

?/p>

培训成本

?/p>

?/p>

5. 英汇:功能扩展

  • ?#8220;开源速?#183;集中理”q_整合;

  • Hooks 插g扩展Q?
  • 改进的二q制文g和文件换行符属性冲H检查;
  • Subversion 理员命令行Q?
  • 其他 bugfix ...

6. Z么选择英?/h2>

7. 相关文档



☜♥☞MengChuChen 2008-05-29 11:27 发表评论
]]>
CVS服务器徏立和权限配置Ҏ http://www.aygfsteel.com/19851985lili/articles/102510.html☜♥☞MengChuChen☜♥☞MengChuChenThu, 08 Mar 2007 00:33:00 GMThttp://www.aygfsteel.com/19851985lili/articles/102510.htmlhttp://www.aygfsteel.com/19851985lili/comments/102510.htmlhttp://www.aygfsteel.com/19851985lili/articles/102510.html#Feedback0http://www.aygfsteel.com/19851985lili/comments/commentRss/102510.htmlhttp://www.aygfsteel.com/19851985lili/services/trackbacks/102510.html CVS 介绍

CVS 代表协作版本pȝQ这是一个将一l文件放在层ơ目录树中以保持同步的系l。h们可以从 CVS 服务器上更新他们的本地层ơ树副本Qƈ修改的l果或新文g发回Q或者删除旧文g?/span>
CVS
Z客户?/span> / 服务器的行ؓ使得其可容纳多用P构成|络也很方便。这一Ҏ?/span> CVS 成ؓ位于不同地点的h同时处理数据文g ( 特别是程序的源代?/span> ) 时的首选?/span>

 

服务?/span>

1 。初始化 cvs 服务器环?/span>

Q?/span> cvs –d /tmp/source init

命o?/span> /usr/local/sourc 下徏立了 cvsroot 目录Q里面是初始化的 cvs 服务器配|文件?/span>

2 。把 cvs 服务器放?/span> xinetd ?/span>

Q?/span> vi /etc/xinetd.d/cvspserver 建立服务文gq添加内?/span>

server cvspserver

{

         flags          = REUSE

         socket_type       = stream

         wait                     = no

         user                    = root

         protocol             = tcp

         server                 = /usr/bin/cvs

         server_args       = -f –allow-root=/tmp/source pserver

         disable               = no

}

其中 server_args 一个参数指定了源代码\?/span> , 一个指定了服务器用密码认证方?/span> .

然后保 /etc/services 文g中有以下两行

cvspserver 2401/tcp
cvspserver 2401/udp

最后重?/span> xinetd 服务?/span>

 

假设 cvs 服务器在 192.168.0.192 上,pȝ上有一个用?/span> cvs 。登陆另一?/span> linux 机器Q执行下列命令可以完成测试?/span>

$export CVSROOT Q?/span> :pserver:cvs@192.168.0.192:2401/tmp/source

$cvs login

输入密码Q没有错误提CC登陆成功?/span>

$cvs logout d

 

用户认证

cvs 服务器有一套自q用户认证机制Q此Ҏ使用了系l上用户直接作ؓ cvs 服务器用P采用 linux l、用h限实现这L功能?/span>

例如Q在 linux pȝ上有两个开发组 a ?/span> b Q分别有用户 a Q?/span> user1 Q?/span> a Q?/span> user2 Q?/span> b Q?/span> user1 Q?/span> b Q?/span> user2 ?/span>

模块 a Q?/span> source Q希?/span> a l成员都可以dQ?/span> b l没有Q何权限,使用以下命oQ?/span>

Q?/span> chown –R a-user1 a-source

Q?/span> chgrp –R a a-source

Q?/span> chmod –R 770 a-source

如果希望 a Q?/span> source Q只?/span> a Q?/span> user1 可以写,同组其他用户可以读, b l没有Q何权限,?/span> chmod 命oҎ
Q?/span> R 750 卛_?/span>

 

 

说明

cvs 中默认一个用?/span> checkout 代码时候,会在当前模块下生成一个锁文gQ如果这个用户对当前模块没有写权限,L不可能的。配合上面的权限讄Q必L以下 cvs 服务器配|。改成不在当前模块目录下生长锁文Ӟ把锁文g集中C个所有用户都有读写权限的目录。修攚w|文?/span> CVSROOT/config

Q?/span> Put CVS lock files in this directory rather than directly in the repository.

Q?/span> LockDir=/var/lock/cvs

?/span> LockDir 设上可以了?/span>

 

pȝ建立多个源代码库

1 。用一个不同\?/span>

2 ?/span> /etc/xinetd.d 目录下徏立一个新的Q务配|文Ӟ?/span> cvspserver1 Q文件中W一?/span> server 名称一定要区分。如改ؓ server cvspserver1 Q?/span> server_args 做相应变动。还要在 /etc/services 文g中,加入新的服务器端口,?/span> cvspserver1 2402/tcp 。重?/span> xinetd 卛_?/span>

 

CVS 的用流E?/span>

1 。登?/span> (login) Q只需做一ơ。需要密码认证,除非是允许匿名登入,否则都要输入 CVS Server 理者配l您的密码?/span>

2 。取?/span> (checkout) 整䆾专案 ( cM档案下蝲 ) 。此Ӟ您的碟中会有一份专案的原始码目录,我们UC为工作目录?/span>

3 。依您的E式意图Q修Ҏ一支程式?/span>

4 。查询程式的在库状?/span> (status) ?/span> (3 ?/span> 4 q二个动作可互调或合q操?/span> )

5 。视在库状态,比对二者的差异 (diff) Q调整修改的E式 ( 是否和他Z改的部䆾发生冲突Q若无冲H,那就十分单纯Q可在修改完之後Q直接存?/span> (commit/ci) 档案?/span> (repository) ?/span> )

6 。若有冲H,?/span> mailling list 中,和他论,取得协调?/span>

7 。将修改好的档案 commit 存入 CVS 档案?/span> ( 俗称 checkin Q类似档案上?/span> ) Q请务必在程式码注解中,详述您的意图?/span>

8 。透过 mailling list 说明您的xQ和大家讨论?/span>

9 。每l过一D|日,应查询在库状态,q更新您的工作目?/span> (update) ?/span>



☜♥☞MengChuChen 2007-03-08 08:33 发表评论
]]>
վ֩ģ壺 ɣ| | | ۩| ɽ| | ƽ| | | ͨ| | ֲ| ̨| | ׯ| ʩ| | | | | | | | Ӵ| ɽ| ¡| | | | | | | Ʊ| | ʼ| | ľ| Ѷ | ʯ| ϼ| Դ|