SVN第一次亲密接触 & 极简使用小结
来源:互联网 发布:万能进销存软件 编辑:程序博客网 时间:2024/04/28 21:38
以前用过几天CVS,一方面是不太好用,另一方面没这个需要,结果一真没有正式地用上。
这次更新我的QQ农场计时器程序,发现不进行版本控制实在容易搞混。于是初衷是弄一个本地服务器。后来由于把数据这部分交给别人帮忙做了,所以又把SVN服务器架设到远程主机上去了,小记一下。
1.下载软件
SubVersion:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100
客户端TortoiseSVN:http://tortoisesvn.net/downloads
Eclipse插件Subclips:http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA(在线安装)
2.安装
服务器端:先装Subversion,然后是TortoiseSVN,然后重启
客户机端:Eclipse->Help->software updates...->Add site...
3.创建仓库
我是这样管理的,在服务器上D盘新建两个文件夹Sources(放以前的源代码FarmTimer)、SVN(仓库所在)。在SVN中新建FarmTimer,右键点击,选择TortoiseSVN->Create Repository Here,很快完成。接着在Sources/FarmTimer上右击,选择TortoiseSVN->Import...,在对话框中输入file:///d:/SVN/FarmTimer,很快导入完成。
现在在服务器本地就可以看到代码文件了:TortoiseSVN->Repo-Browser,输入(会自动填上)file:///d:/SVN/FarmTimer,即可。file:///是本地协议。
4.远程
我的服务器的外网IP是11x.2xx.9x.x3x。SVN要想供远程使用必须要安装服务:在CMD窗口运行svnserve -d -r D:/SVN
(我这里没有用svnserve -d -r D:/SVN/FarmTimer,所以下面在客户机上的连接地址要注意一下),运行后保持窗口打开。
现在TortoiseSVN->Repo-Browser,输入svn://11x.2xx.9x.x3x/FarmTimer,就可以了。(如果刚才是svnserve -d -r D:/SVN/FarmTimer的话,现在的地址就是svn://11x.2xx.9x.x3x)。
不过现在是匿名登陆,只能read。
5.配置
打开服务器端D:/SVN/FarmTimer/conf/svnserve.conf
找到:
# anon-access = read
# auth-access = write
# password-db = passwd
这三句的含义分别为:匿名的只有读的权限、通过认证的可以写(当然也可以读)、用户名和密码在passwd文件中
接着打开D:/SVN/FarmTimer/conf/passwd
在末尾加上
thy38 = thy
即用户thy38的密码为thy。
这样就行了,其它还有什么组权限什么的设置,暂时先不管它了,以后要用再说吧。
6.连接
在客户机上TortoiseSVN->Export,SVN地址还是svn://IP/FarmTimer,本地地址D:/FarmTimer,就可以导出了。
现在到D:/FarmTimer就可以看到很多文件,比方我对uiApp.py做些修改,然后保存,退出编辑,在文件上右击选择SVN commit...,这时会让你写一小段注释,点OK之后就会要你输入认证,这里是thy38、thy。就OK啦!
7.Subclipse
在Eclipse中安装完成Subclipse后,选择Windows->Show View->Other...,找到SVN->SVN资源库,点OK。下方会有SVN资源库视图,右键 新建->资源库位置...,输入svn://IP/FarmTimer,就可以浏览文件。接着在根上右键 检出为...,导出为一个项目,在项目的任一文件上右键 Team,可以找到相关的SVN设置。
好了,到这里吧,就到这里吧。SVN还有不少要学习的,我一定会回来的!
PS:2012-03-26
好吧,我又回来了。在公司要架一个SVN服务器,这跟以前在本机用不一样了,按网上教程多的是,可还是要注意一些要点。
1. 把SVN安装为系统服务
sc create svn binpath= "C:\Programs\Subversion\bin\svnserve.exe --service -r C:/SVN" displayname= "Subversion Server" depend= Tcpip start= auto
-r 的路径用/比较好,用\出现过服务无法启动
2. SVN目录结构
比较好的一个结构是:
SVN-
-Repo1
-Repo2
每个Repo*是一个版本库
而SVN就是root。对应在Apache中就是:
<Location /repos> DAV svn SVNParentPath "d:/svn"</Location>访问时为http://IP/repos/Repo1
3. SVN协议和http协议访问同一个版本库时的地址不同,以上述为例:
SVN://IP/Repo1
http://IP/repos/Repo1
4. 两个password不同
AuthUserFile /etc/svn/passwordfile这个是Apache中的,是打开http://IP/repos/Repo1的用户名、密码
而每个版本库中的passwd文件是该版本库的用户名、密码
- SVN第一次亲密接触 & 极简使用小结
- 第一次亲密接触
- 第一次亲密接触 .net
- 第一次亲密接触
- 第一次亲密接触
- 第一次亲密接触Blog!
- 第一次的亲密接触!
- ADO第一次亲密接触
- ADO第一次亲密接触
- 第一次的亲密接触
- Cygwin第一次亲密接触
- Oracle 第一次亲密接触
- 第一次亲密接触
- 第一次亲密接触
- Solaris第一次亲密接触
- 第一次亲密接触Appfuse
- 回忆:第一次亲密接触
- ADO第一次亲密接触
- H.264视频编码在VC++.Net中的实现
- 20091222日计划
- 纪念日
- H.264在IPTV系统中的应用
- 2009-12-22 Tue
- SVN第一次亲密接触 & 极简使用小结
- mpi并行程序设计 启动 mpdboot
- codeMatic 在win7 下出现的签名问题
- Yet Another ways to change object's behavior
- 第一次
- 单元测试的肥肉与骨头
- Application和Java Applet的区别
- javascript创建createXmlHttpRequest对象
- 奋斗5年