2、SVN学习之svn命令行下的基本操作
上一节已经把svn安装完成,下来就用命令行做一些简单的操作。
1、当svn安装完成后,svn管理人员会在svn的root根目录下新建一项目工厂,用来存放相应的项目,我们有的例子项目叫oa,即项目的名称为oa。管理人员这时就会在命令行窗口使用命令
svnadmin create oa
创建一个svn的oa的工厂。如下图:
这时在d:/svn/root目录里就会有一个oa的文件夹,这里的oa文件夹专门放oa项目的的内容与版本信息。如下图所示:
2、在oa文件夹中有一个文件夹叫conf,conf里面有三个文件比较重要,它们三个是svn专门用来做权限控制的,即authz、passwd、svnserve.conf。在svnserve.conf文件中定义了一些数据,例如
anon-access = read auth-access = write
上面命令定义了,默认情况下只允许匿名用户读(anon-access = read),受权用户可以写(auth-access = write)。
password-db=passwd
这个命令定义了svn用户与密码存放在文件passwd中。创建用户与密码的对应。
authz-db = authz
这个命令定义受权文件放在authz文件中。确定每个用户可以访问哪些文件。
3、在管理人员创建oa工厂后,就由项目经理创建一个oa项目,假如项目就创建在D:\study_source\svn\oa下面。这个项目的基本结构假如就是:如下图:
在项目经理把项目创建完成后,这时就要把相应的项目导入到svn中去,这时在命令行中使用
svn import -m "oa first" oa svn://localhost/oa
把oa项目导入到指定的目录中去,如下图:
这时会出现一个认证失败的问题,出现这个问题的原因是因为我们并没有登录svn,也没有创建svn的用户名与密码,可以让匿名用户可以对svn进行读写操作,这个修改需要在svnserve.conf文件中进行修改。把其中的 # anon-access = read 修改成 anon-access = write,然后进行保存。然后再在命令行中执行以上命令,就可以设置成功,如下图:
4、通过上面的操作项目经理已经把一个叫oa的项目放入到svn的oa工厂中进行管理了,这时就可以由开发人员对oa进行svn checkout操作了,假设有一个文件夹叫oa_d,这个文件夹就是我们虚拟的一个专门让开发人员来使用的,如下图:
在文件夹oa_d中有两个开发人员,分别为01与02开发人员。如下图:
这时01开发发员在他的机器上就可以把服务器上的oa项目check out到他的机器上,这里我们就是check out到01文件夹中。所使用的命令如下图:
这样就可以把相应的项目放到01文件夹下,如下图:
这时01开发人员就可以对项目进行编辑了,假如01开发人员在web目录下新建一个login.html的文件,然后在里面添加一些内容,随便写点内容,开发完成后就可以通过svn add把相应更改提交到svn的oa工厂中去,如下图:
然后使用svn的commit命令把相应的操作进行提交,如下图所示:
5、添加完成后在svn服务器的oa工厂中就有了文件login.hmlt了。这时如果有开发人员02来作开发,那么他就可以像开发人员01一样使用svn checkout把oa项目checkout到本地计算机,如下图所示:
取出项目后,开发人员对文件login.html进行修改,01开发人员提交的数据是0101010101010101,02开发人员添加了数据020202020202,修改如下:
修改完成后,02开发人员使用svn commit命令对相应的数据进行提交,如下图:
提交完成后,这时开发人员01如果想再次修改login.html文件,那么就可以使用命令svn update把刚才开发人员02所做的修改取回到自己的电脑上。如下图:
这样完成后,开发人员01再打开文件login.html文件后,其内容就有了02人员添加的内容了。
这样01与02开发人员以后就可以通过 svn update与svn commit两个命令对项目的修改进行提交了。