设为首页 收藏本站
查看: 1696|回复: 0

[经验分享] 终极SVN在windows下的配置

[复制链接]

尚未签到

发表于 2018-6-13 08:59:35 | 显示全部楼层 |阅读模式
1 前言
这段时间有点空,闲着也无聊,所以就弄弄这个SVN。在做服务之前,我还是重申我的观点:
一.         最后一点是,做技术,尽量的要自己动手去做,光靠嘴说会做,是不行的。并且在做的时候,出现的问题越多,对你是有好处的。

2 关于Subversion
Subversion 是一个版本控制系统,它是根据 CVSConcurrent Versions System)的功能为基础来设计,但是改进了一些 CVS 的缺点,例如:在 CVS 中移动文件目录很不方便;此外,它也增加了其他的功能,例如:不可分割的送交(如同资料库交易的概念,送交多个文件时,若有任何一个文件失败,则这次送交的所有文件都不会进入文件库中),支援多种网络协议,一致的文件差异比对(不管什么文件类型,均使用二进位差异比对方式),等等。
在做这个服务的时候,我也查了网上的一些资料,不是很完整的。而且在LIUNX环境下的比较多,所以我做这个服务也用的时间有点长,希望此文可以给初学者一些帮助。



3 服务所需软件:

系统平台: windows server 2003 企业版
Apache http://httpd.apache.org/download.cgi  Apache_2.0.63-win32-x86-no_ssl.msi
Subversionhttp://subversion.tigris.org/getting.html#windows
Setup-Subversion-1.5.1.en-us.msi


TortoiseSVNhttp://tortoisesvn.tigris.orgTortoiseSVN-1.4.0.7501-win32-svn-1.4.0.msi

4 安装 Apache server:

警告:请注意,没安装Service Pack 1Windows XP将导致错误的网络数据从而破坏你的版本库!

http://httpd.apache.org/download.cgi 最新版本的Apache Web服务器。确保你下载的版本大于2.0.542.0.54版本的Apache将不能与Subversion 1.3.xx配合工作。而且,小

2.0.54Apache也因为在windows上的编译存在一个bug而导致不能与subversion1.2配合使用。

一旦你已经有了Apache2的安装程序,你可以双击它,它将引导你完成整个安装过程。请确保你输入正确的服务器URL(如果你的服务器没有DNS名称,你可以直接输入IP地址)。我

建议你将Apache安装成 for all Users,on Port 80,as a service。注意:如果你已经有一个IIS或者其它的程序使用80端口,安装可能会失败。如果是这样,你可以到程序目录下

Apache Group/Apache2/conf目录中找到文件httpd.conf,将其中的Listen 80改成一个不用的端口,比如Listen 81。然后重新运行这个安装程序,这次应该不会再有问题了。

现在你可以在你的浏览器中键入 http://loccalhost,如果呈现了一个已经配置好的网站,那么你的Apache就安装成功了。

警告:

如果你将Apache安装成一个服务,它将以本地system帐户来运行。为Apache创建一个单独的用户来运行它将会更安全一些。

请确保运行Apache的用户有版本库的完全访问权限(右键版本库目录->属性->安全)。要不然,用户将无法提交他们的更改。

就算Apache以本机system来运行,你也要设置它能完全读写版本库目录。

如果没有为Apache配置这个许可,用户将会得到"禁止访问"的错误信息,在Apache的错误日志中表现为错误500








OK ! apache 安装完成!


5 安装 Subversion

一.E:/Program Files/Subversion/bin目录下的     libeay32.dll、以及 bin 中。
用文本编辑器打开 Apache Server E:/Program Files/Apache Group/Apache2/conf/httpd.conf,寻找一堆LoadModule 指令,先找到以下两行:
#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
把这两行最前面的 LoadModule dav_svn_module modules/mod_dav_svn.so
Apache  Server


5.1  设定 SVNPath
DAV svn
"/svn/repos_name" 就是用户端存取特定文件库的 SVNPath 后面指定的路径则是文件库的绝对路径,假设我们的文件库实际存放的路径是URL 来存取文件库,那么要加入 DAV svn
Location 标签后面的
如果你的文件库都集中放在某个目录之下,例如:<Location /svn>
</Location>
其中的 httpd.conf 的内容就是:
SVNParentPath E:/svn
> 的方式,存取位于 SVNParentPath 来统一指定所有文件库的父层 httpd.conf 文件尾部就行了。

接下来就可以在 http://localhost/svn/repository,看看能不能看到文件库的内容,正常的话应该像下图一样。
如:


7  引入项目测试
假设我们现在有一个测试项目,项目目录位于 branches

svn 命令时,都是使用 Apache HTTP Server 的设定无誤,其他人就可以透过 file 协议,则该指令要变成:

E:\svn\repository\db\revs\0目录下多了一个叫md d:\svn
ProjectA 的目录结构。在 branches、和 mainline);

&#8226; 一.httpd.conf    
SVNParentPath E:/svn
# The following is Basic authentication setting
</Location>
:

Subversion版本库DAV svn:告诉Subversion模块SVNParentPath E:\SVN:告诉
.

AuthUserFile E:\passwd.txt:指定
.
E:\svnaccessfile.txt来限定各个用户或组在版本库中目录的访问权限Require valid-user:限定用户只有输入正确的用户名及密码后才能访问这个路径httpd.conf中写多个
四.用Apachehtpasswd指令生成用户名和密码:

htpasswd -cm E:/svn/passwd.txt user1
htpasswd -m E:/svn/passwd.txt user2
htpasswd的参数-c是创建文件的意思,故只在首次使用,仅使用-m参数时也可用来修改密码。

进入: E:\Program Files\Apache Group\Apache2\bin



五:配置文件库访问政策文件

在E:\svn建立一个accessfile.txt

内容如下:

[repository:/]       (文件库repository中所有的文件)
user1 = rw            (用户user1为读写权限)
[repository:/projectA] (文件库repositoryprojectA 项目文件)
user2 = r

[repository:/projectB]
* = r

小节名称中冒号前面的文件库名称不要轻易省略,省略就代表是针对所有文件库,这样是很为危险的,[groups]
[repository:/projectA]
Subversion密码,也很简单,有人已经把你做了相关工作了,可访问passwd.cgicgi-bin子目录中,然后修改配置文件AuthUserFile的全路径(比如),这时用户就可以访问9.1
安装 . . TSVN 版本相同,否则最好不要安装。语言包装完之后,用资源管理器在"Main" 页夹中更改 )」,再按「确定」钮即可。
Internet,请在 Internet 上的文件库。
安装完成之后,在任何目录名称上点一下滑鼠右键都可以看到 TSVN 来存取文件库。如果你希望在Beyond Compare后,在任意目录点鼠标右键,进入BC2.exe的路径即可。



接下来你可以用 TSVN 虽然是客户端工具,不过它也提供了建立文件库、以及引入、引出等功能,因此安装在服务器端也挺方便的。
这里顺便提几个客户端提交修改点时的注意事项:
&#1048698; 要保证本地编译通过后方可提交,否则会导致其他人取下新版本后编译不过。
&#1048698; 要一次性全部提交,即在项目的根目录下按右键选Patch提取,版本比较等。如果是修改了一个ID号和简单描述写到Merge修改点

10  设置Subversion随系统启动:
在命令行执行
svnserve --daemon --root E:\svn
服务启动,--daemon可简写为-d,--root可简写为-r,可以建立一个批处理文件并放在windows启动组中便于开机就运行SVN服务(注意:这是临时打开的服务,命令执行后不能关闭窗口)
用后台服务的方式可以设置开机自动执行。
E:\Program Files\Subversion\bin>sc create svnservice binpath= "E:\Program Files\Subversion\bin\svnserve.exe --service -r E:\SVN"
可以在Sevices.msc来启动了。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-523045-1-1.html 上篇帖子: Windows Server SNMP服务安装及配置 下篇帖子: Windows 2003 NTP 服务配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表