日历

« 2008-10-13  
   1234
567891011
12131415161718
19202122232425
262728293031 

统计信息

  • 访问量: 481
  • 日志数: 3
  • 书签数: 7
  • 建立时间: 2007-09-14
  • 更新时间: 2007-09-14

RSS订阅

我的最新日志

  • 配置工具SVN的学习笔记

    2007-9-14

           本文档描述的是学习过程的内容。结合了本公司的需要进行侧重点的学习:主要介绍的是apache+svnhttp访问模式,其他的方式略讲或不讲。文档中有小部分内容引用于http://www.iusesvn.com/bbs中的某贴的内容。

    一.   Subversion介绍

           Subversion是一个自由/开源版本控制系统,它管理文件和目录可以超越时间。文件存放在中心版本库,版本库很像一个普通的文件服务器,只是它可以记录每一次文件和目录的修改,即您可以获取数据以前的版本。

           可以通过网络访问它的版本库,从而使用户可以在不同的电脑上使用。一定程度上可以说,允许用户在各自的地方修改同一份数据来促进协作。

           是一个通用系统,可以管理任何类型的文件集。

    二.   Subversion的特性

    l     版本化的目录

                  CVS只记录单个文件的历史,但SVN实现了一个可以跟踪目录树更改的虚拟版本  化文件系统,文件和目录都是有版本的。

    l     真实的版本历史

                  SVN支持对文件或是目录的增加、拷贝和重命名操作,也可以新增一个具有干净          历史的文件。

    l     原子提交

                  一系列的改动,要么全部提交到版本库,要么一个也不提交,这样可以让用户构建       一个所要提交修改的逻辑块,防止部分修改提交到版本库。

    l     版本化的元数据

                  第一个文件或目录都有一套属性(健和它们的值),你可以建立并存储任何键/值对,    属性也是随时间的流逝而纳信版本控制的。

    l     可选的网络层

                  SVN可以作为一个扩展模块与Apache结合,这给了SVN在稳定性和交互性方面           很大的好处,可以直接使用服务器的特性(论证、授权、传输压缩等);也可单独运行     SVN的轻型服务,这个服务使用自己的协议可以轻松的用SSH封装。

    l     一致的数据操作

                  SVN表示文件是建立在二进制文件区别算法基础上的,对于文件(可读)和二进          制(不可读)文件具备一致的操作方式,两种类型的文件都压缩存放在版本库中,           区别信息是在网络上双向传递的。

    l     有效率的分支和标签

                  分支和标签的代价不与工程的大小成比例,SVN建立分支与标签时只是拷贝整个          工程,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少且固定的时间。

    l     可修改性

           SVN没有历史负担,由一系列良好的共享C库实现,具有定义良好的API,这使得SVN       非常容易维护,可以轻易的用其他语言操作。

          

    三.   Subversion的架构

           一端是保存所有纳入版本控制的数据的Subversion的版本库,另一端则是subversion客户端程序,管理着所有纳入版本控制数据的本地影射(也叫“工作拷贝”)。在这两端之间的是各种各样的版本库访问(RA)层,有的使用电脑网络通过网络服务器(apache/svnserve)访问版本库,有的则绕过网络服务器直接访问版本库

     

    四.   服务器端的安装

           本服务器指的是windows系统下安装subversion。在所有的subversion服务器配置方式中,基于Apache的是最灵活的,与svnservie的区别:

    l         apache可以直接通过IE浏览器来访问版本库,而svnservie不能;

    l         使用apache密码是加密的,配合ApachePasswd(远程修改svn密码工具,iusesvn网站推出的),可以实现开发人员自己通过WEB定期修改自己的密码。

    ()apache方式

    1.安装Apache

           Apache要安装在windows2000windows XP+sp1windows2003操作系统上。

           注意:安装前在命令行窗口中执行netstat –na命令,以查看80端口是否已被使用了。如果已被使用了,那么安装apache后,到程序目录下的Apache Group\Apache2\conf目录中找到文件httpd.conf,将其中的Listen 80改成一个不用的端口,比如Listen 81。然后重新运行这个安装程序,就不会有问题了。

           http://httpd.apache.org/download.cgi 下载最新版本的Apache Web服务器(svn1.4.0的应该下载apache2.0.59)。安装时选择“for all Users,on Port 80,as a service”,且输入相关的服务器信息。然后一直next 就可以了。

    安装过程中设置以下参数:
    Network Domain: localhost
    Server name: localhost
    Administrator's Emai Address:
    yuhuan_wei@creawor.com(管理员的邮箱
    安装到默认路径为C:\Program Files\Apache Group\Apache2

    如果安装到最后出现以下错误命令窗口:

    Serveradmin takes one argument,The email address of the server administrator note the erroes or messages above,and...to exit.

    [WedNar 07 14:27:53 2007] [error] <OS 2>系统找不到指定的文件。:NO installed service named "Apache2"

    Note the errors or message above. ...to exit.

    那是可能因为服务器信息(邮箱)没输入或输入了识别不了。直接打开httpd.conf文件,在ServerAdmin后输入邮箱,保存即可。或者卸载后再重新安装(我是用这种方法解决的)。

           安装完成后,在浏览器中输入:http://localhost:端口号(如果使用80,可以省略)/,如果出现一个已配置好的网站,那么你的apache安装成功了。(如果没有安装成功)

     

    2.安装Subversion

         http://www.iusesvn.com/bbs/forumdisplay.php?fid=7(中文)下载最新版本的Subversion(我下载的是svn1.4.0)进行安装。安装时要选中apache moudles。完成后,如果不能识别到已安装了Apache就要做以下的步骤:

    1)、从subversion的安装目录中拷贝文件libdb43.dllApachemodules目录;

    2)、打开apache的配置文件httpd.conf通常在c:\program files\apache group\apache2\conf\),去掉以下两行的#号:

    #LoadModule dav_fs_module modules/mod_dav_fs.so
    #LoadModule dav_module modules/mod_dav.so

    且在LoadModule节的最后添加以下两行:

    LoadModule dav_svn_module modules/mod_dav_svn.so
    LoadModule authz_svn_module modules/mod_authz_svn.s

     

    3.配置

    安装好ApacheSubversion了,但Apache还不知道如果处理像TortoiseSVN一样的Subversion客户端程序。因此要在配置文件httpd.conf文件的最后添加以下内容:

    <Location /svn>           #表示可以通过像这样的URL(http://MyServer/svn)来访问Subversion版本库。
    DAV svn                 
    #告诉Apache哪个模块负责服务像那样的URL--在这里就是Subversion模块。
    SVNParentPath D:\SVN     
    #告诉Subversion在目录D:\SVN下寻找版本库。若将SVNParentPath改为SVNPath则为单库方式。一定要将创建版本库创建在D:\SVN下。
    AuthType Basic            
    #启用基本的验证,比如用户名/密码对。
    AuthName "Subversion repositories"  
    #当验证对话框弹出时,用Subversion repositories作为对话框的title.
    AuthUserFile D:\passwd    
    #指定D:\passwd用为密码文件用来验证用户的用户名及密码,到此目录下到passwd文件。一定要将创建的passwd文件放于D:\
    #AuthzSVNAccessFile D:\svnaccessfile
    #指定D:\svnaccessfile来限定各个用户或组在版本库中目录的访问权限。一定要将创建的svnaccessfile文件放于D:\
    Require valid-user         
    #限定用户只有输入正确的用户名及密码后才能访问这个路径 查看(86) 评论(0)

  • 配置工具CVS学习笔记

    2007-9-14

    CVS是我学习的第一个配置管理工具,花了一周的时间哦~~现将学习过程总结出来,以供学习参考~!

     

    一、CVS部署

         总体操作流程:

                (1)    在服务器端和客户端安装CVS软件,创建仓库;

                (2)   crypt创建用户(其中一个是管理员);

                (3)   用系统用户Admin登录取出CVSRoot目录(客户端进行);

                (4)   在服务器的CVSRoot中增加passwdgroup文件并写入相关信息(服务器端进行);

                (5)   在取出的CVSRoot中修改config文件并提交(客户端);

                (6)   在服务器的CVSRoot增加.owner.perms并修改(服务器端完成)[若为cvsnt2.5版本,则更改CVSRoot\cvs\ fileattr.xml文件,改为新的管理员名称]

                (7)   用新管理员登录(客户端);

                (8)   删除Admin取出来的CVSRoot目录­(客户端完成);

                (9)   用新管理员登录取出CVSRoot目录,增加admin文件commit,修改checkoutlist文件并commit

                (10) 在服务器端增加history文件,[cvsnt2.5版本才要执行此步],为使用cvstracnt作准备.

                (11)用新管理员创建新模块(客户端进行);

                (12)  设置用户权限;

                (13)  进入使用。

     

          1.环境配置

     

            1.1   服务器端

            1)、安装CVSNT,http://61.143.38.136:8383下载CVSNT-2.0.4 CVSNT-2.0.51(本次安装实例是使用2.0.51版本)。安装完成后(选择Full Install,其它按照默认安装),重启(必须重启),此时右击“我的电脑——管理”,打开“计算机管理”窗口,选择“服务和应用程序——服务”,右边的服务控制器中多了2个服务:cvsntcvslocking

            2)、安装完成后可通过在Windows控制台(cmd)中任意位置执行cvs/cvs.exe来检验是否安装成功。在开始菜单中选择“运行”,输入“cmd”,在弹出的命令提示窗中输入CVSCVS.exe,出现CVS相关信息就表示安装成功。

             3)、在开始菜单中把“Service Control Panel”发送到桌面。不发送也可以。

     

    1.2客户端

    在客户端直接安装TortoiseCVS即可。

     

    1.3创建CVSNT仓库

    服务器端与客户端的安装完成后,就可创建CVSNT仓库。步骤如下:

    1)、运行“Service Control Panel”,在Service Status页面,确认2个服务(cvsntcvslocking)正常和稳定运行。

    2)、选择Repository页面,如下图:

    3)、单击“Add”添加要创建仓库的路径,其中“Location”是指创建仓库的路径。

    4)、选择Advanced页面,勾上【Use local users for pserver authentication instead of domain users】(这是让CVSNT使用本地账户作为pserver认证方式),Temporary栏选择存放临时文件(cookies)的文件夹,确认。

    5)、创建完成后,在【F:\CVStest】下面自动创建了【CVSROOT】目录,这是CVS默认的管理目录(默认模块),仓库创建成功。如果报错,那是系统Path路径未设置正确。

     

    2.  创建用户

    CVS通过Crypt来创建和编辑用户。

    注释: crypt是个密码加密函数,它是基于Data Encryption Standard(DES)演算法。crypt基本上是One way encryption,因此它只适用于密码的使用,不适合于资料加密。 

    21新增用户(其中一个是管理员)

    1)、在开始菜单选择“运行”,输入“cmd”,在弹出的窗口中输入“cd(dos命令)  F:\cryptcrypt存放的路径)”按回车键;

    2)、然后再输入“F:”按回车;

    3)、开始创建用户,输入“crypt(命令) user_A(用户名) abc123(用户密码)”按回车,系统自动生成一个加密的暗码。如图:

    4)、将创建的用户信息及产生的暗码按“用户名:暗码:NT上创建的新用户组:用户密码”的顺序记录下来(便于在以后的passwd文件中使用)。

    按以上方法继续创建所需的用户。

     

    22修改用户

    步骤如下:

    前两步跟新增用户相同;若要修改密码,直接改密码即可,如修改用户user_A的密码“crypt user_A 234回车即可;若要修改用户名,其实是删除用户user_A后再新增用户user_B

    同样的,修改后也要把相关的信息(用户名:暗码:用户密码)记录下来(同时在passwd文件中作相应的修改)。

     

    23删除用户

    1)、利用windows自带的搜索功能搜索出所有passwdgroup文件;

    2)、将该用户在passwdgroup文件中存放的用户和密码字符串逐一删除。

     

    3.  用系统用户Administrator登录取出CVSRoot目录(客户端进行)

      

    4.  设置passwdgroup文件

    1)、在cvsroot文件夹中增加passwdgroup两个文件;

    2)、将已建立的用户与密码信息,写入在passwd中,按“用户名:暗码:NT上创建的新用户组:用户密码”的顺序输入。

    3)、group的作用是分组,为更好地设置权限,有相同权限的用户可以放在同一组,如开发人员可能同一组,项目经理为一组,管理员为一组。录入的方式为“组名:用户名1 用户名2 用户名3…,每行为一组.若不要组名,只写用户名,则表示没有对用户进行分组。(不建议这样去做,因为这样做会导致在设置权限时出现混乱,不便于管理,特别是用户多的时候。)

    写入后保存,设置成功。