版本控制软件:
CVS VSS SVN
CVS:多个用户可以同时工作.效率高,但团队中的每个人都可以修改核心代码,
VSS:只能由一用户修改,可以锁定核心代码,但效率低
SVN:结合两者,
由于SVN没有自己的远程管理工具,只能上服务器上用命令行操作,故操作起来比较复杂。为此,svn俱乐部开发出svn管家对svn进行远程管理,svn管家推出了windows版本和linux版本,部署很方便,不用安装额外的环境如mysql、PHP或JAVA。svn管家不仅可以方便的远程修改用户密码,更可以对svn进行远程管理,极大地方便了SVN的用户。
.SVN优缺点和Git有优缺点的比较
优点:
1、 管理方便,逻辑明确,符合一般人思维习惯。
2、 易于管理,集中式服务器更能保证安全性。
3、 代码一致性非常高。
4、 适合开发人数不多的项目开发。
缺点:
1、 服务器压力太大,数据库容量暴增。
2、如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。
3、 不适合开源开发(开发人数非常非常多,但是Google app
engine就是用svn的)。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。
.Git优缺点
优点:
1、适合分布式开发,强调个体。
2、公共服务器压力和数据量都不会太大。
3、速度快、灵活。
4、任意两个开发者之间可以很容易的解决冲突。
5、离线工作。
缺点:
1、学习周期相对而言比较长。
2、不符合常规思维。
3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。
怎么使用SVN:
1,本地建库
用命令提示符进入到Subversion的安装目录下的share目录下,创建svnrepo库,创建以下命令:
svnadmin create suvrepo
2,修改配置文件,开启密码访问
share目录下有个svnrepo目录,打开svnrepo目录下的conf目录,打开svnserve.conf文件,把password-db = passwd前的#去掉,PS.anon-access = read表示匿名访问为只读
3添加账户
打开passwd文件,在[users]
# harry = harryssecret
# sally = sallyssecret 后面添加一行 zn=123456
表示添加了一个用户,前面的是用户名zn,后面的是密码123456。
4,启动Subersion服务器
在命令提示符中运行以下命令,-d是后台运行,-r是root用户,超级管理员
suvserve -d -r svnrepo
5客户端TortoiseSVN查看代码
启动服务以后,我们可以在任何空白处右键,选择TortoiseSVN- > Repo-browser,
输入svn://localhost回车后,会显示你需要输入账号密码,就是刚才设置的用户名zn,密码123456,进去后就可以看到本地的svn库中的项目代码。这里4个项目,是我自己已经创建的。
6,如果想查看远程机器上的svn代码,比如输入SAE上一个应用的svn地址,就可以看到代码了。当然,你没有我的账号密码,是看不了我的这个。
7,客户端TortoiseSVN下载代码
比如我想把本地的上面那个abc项目的代码都下载下来,就可以在想放代码的路径下,比如我这里放在D盘,空白处右键,选择SVN Checkout…,然后填写相应的URL svn://loaclhost/abc,下载完后可以看到abc目录上带绿色的箭头。
8,我们可以在abc目录上右键,可以看到其SVN信息,有Subversion中有对应的URL地址等
9.客户端TortoiseSVN提交代码
1).添加新文件
2).上传修改的代码
这个可以看到,新添加的1.php文件上面没有小颜色的图标,修改过的文件index.php会变成红色。同样的,你也可以删除文件。对于修改过的文件,你还可以用TortoiseSVN -> Diff,对比修改前面的代码。
10.提交的时候,可以回到abc目录上右键,也可以直接在目录里面空白处右键,选择SVN Commit,写上提交的原因。这个也是为了以后方便自己查看,你改这些代码是做什么用的。点击OK就提交完成了。
11.TortoiseSVN中也可以查看log,查看各版本修改的地方。可以在下载代码(checkout)的时候,也可以选择下载哪想版本的代码。默认是HEAD的。这几个是最基础的功能,会这些,平常就可以用了。
网友评论