UML软件工程组织

 

 

Subversion简单常用问题解决方案列表
 
2008-10-31 来源:网络
 
----------------------------------------
eclipse使用subclipse导致jvm崩溃
环境变量 APR_ICONV_PATH改为APR_ICONV1_PATH
或者下载Subversion 1.4.3的zip包,将环境变量 APR_ICONV_PATH 指向解压后的 iconv文件夹。
http://doc.iusesvn.com/show-35-1.html
----------------------------------------
subversionapache,apr,apr-util的关系
很多朋友初次接触Subversion时不是很理解subversion和apache的关系。
http://doc.iusesvn.com/show-34-1.html
----------------------------------------
show log只显示no date在SVN中选中一个目录show log时,出现了某些版本只显示版本号和(no date),没有其他信息,什么原

因引起的 ?出现了(no date)的revision,为其他人修改了你所没有权限访问的某个目录下的文件
http://doc.iusesvn.com/show-33-1.html
---------------------------------------
使用StatSVN统计Subversion库中的代码开发情况入门
StatSVN能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表。
比如:
代码行数的时间线;
针对每个开发者的代码行数;
开发者的活跃程度;
开发者最近所提交的;
文件数量;
平均文件大小;
最大文件;
哪个文件是修改最多次数的;
目录大小;
带有文件数量和代码行数的Repository tree。
StatSVN当前版本能够生成一组包括表格与图表的静态HTML文档。StatSVN使用JFreeChart来生成chart。
http://doc.iusesvn.com/show-32-1.html
--------------------------------------
Subversion是否可以控制中文目录的访问权限?可以!
经过测试,发现subversion是可以很好地控制中文目录的权限的。
http://doc.iusesvn.com/show-31-1.html
--------------------------------------
如何恢复SVN中已删除文件或文件夹
http://doc.iusesvn.com/show-30-1.html
-------------------------------------
如何在svn里使用vss的share功能:svn:externals我们公司是从vss转到svn的,以前大家喜欢用vss的share功能,实现两个不同目录的文件的同步修改更新

等操作。在svn里可以通过属性svn:externals达到这个目标。
http://doc.iusesvn.com/show-29-1.html
-------------------------------------
svnserve.conf:12: Option expected的问题解决方法
经常有新手配置基于svnserve的subversion服务器后,
客户端访问subversion版本库时出现这个错误:
svnserve.conf:12: Option expected
为什么会出现这个错误呢,就是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的

配置文件
http://doc.iusesvn.com/show-28-1.html
-------------------------------------
405 Method Not Allowed的原因和解决方法
TortoiseSVN访问基于apache配置的svn版本库时,有时候会提示错误405 Method Not Allowed,查看

apache error log时又有什么200 OK。
今天早上我也碰到这个问题了,后来发现,事情原来是这样的:
开始用TSVN checkout了一个正常的目录,假设服务器地址为:http://www.iusesvn.com/project1
之后,服务器经过其它配置,这个地址变了,使得用这个地址不再能访问到正确的版本库,此时,TSVN就

极有可能报405错误。
另外,当你访问的地址大小写与服务器的地址不一致时,也会出现该错误。
只要将TSVN访问的地址改成正确的,或修改服务器配置,使原地址可以访问即可解决。
http://doc.iusesvn.com/show-27-1.html
------------------------------------
目标机器积极拒绝,无法连接'或Can't connect to host的原因
当出现'目标机器积极拒绝,无法连接'或svn: Can't connect to host ...时,请依次检查下面各项
1,服务器有没有运行,有没有打开相应端口
如果服务器是svnserve,检查有没有运行svnserve,有没有打开3690端口
如果服务器是apache,检查apahce是否运行,是否打开80端口
检查时可以在服务器运行netstat -na看看相应端口是否在LISTEN
2,防火墙有没有开放相应端口
3,客户端是否可以连接服务器的相应端口
使用命令telnet 服务器IP 相应端口
如:telnet 192.168.0.1 3690
http://doc.iusesvn.com/show-26-1.html
---------------------------------------
cvs与svn的比较
http://doc.iusesvn.com/show-25-1.html
--------------------------------------
将库分布到不同的分区上
svnserve模式
http://doc.iusesvn.com/show-24-1.html
------------------------------------------
subversion中BDB和FSFS两种存储方式的比较
http://doc.iusesvn.com/show-21-1.html
-----------------------------------------
关于subversion删除内容的问题
http://doc.iusesvn.com/show-20-1.html

-------------------------------------------
使用svnimporter将CVS转为SVN
http://doc.iusesvn.com/show-18-1.html
--------------------------------------------
linux下apache+svn的ssl实现方法
http://doc.iusesvn.com/show-16-1.html
--------------------------------------------
在Redhat AS4上安装配置svn 1.4(svnserve方式)
http://doc.iusesvn.com/show-15-1.html
--------------------------------------------
邮件通知支持中文的解决办法
http://doc.iusesvn.com/show-13-1.html
---------------------------------------------
RHEL5/CentOS5 轻松安装 Subversion+apache+mysql+ssl
http://doc.iusesvn.com/show-12-1.html
------------------------------------------------
subversion服务器两种配置方式所用的配置文件及格式
http://doc.iusesvn.com/show-11-1.html
-----------------------------------------------------
windows上安装apache2.0.59+SVN+自动邮件通知(完整版)[2007-7-27更新]
http://doc.iusesvn.com/show-9-1.html
----------------------------------------
基于svnserve的服务器,权限文件authz配置的常见问题及解答
http://doc.iusesvn.com/show-8-1.html
----------------------------------------
RHEL(AS4)上安装apache2.2.3 + svn1.4 + 自动邮件通知(超完整版)[2007-2-8更新]
http://doc.iusesvn.com/show-7-1.html
--------------------------------------
linux 9 下 apache2.2.2+svn 1.3.1安装
http://doc.iusesvn.com/show-6-1.html
--------------------------------------
windows安装基于Apache的SVN服务器(包括SSL配置)[2007-8-19更新]
http://doc.iusesvn.com/show-5-1.html
-----------------------------------------
Subversion之路--实现精细的目录访问权限控制(v1.0 更新于2006.12.05)
http://doc.iusesvn.com/show-1-1.html

svnmanager安装帮助

按照http://www.iusesvn.com/html/59/t-1459.html这个帖子中的说明安装svnmanager,在安装VersionControl_SVN时,不知道怎么安装,上面说直接连接pear网站的服务器上安装,但我配置的那台服务器不能上外网,我下载下来VersionControl_SVN包,请问如何安装它呢.
把VersionControl_SVN包解压到PEAR目录,运行命令就可以了
http://bbs.iusesvn.com/thread-1601-1-1.html
-------------------------------------
用Delete键直接删除文件与文件夹处理方式不同,为什么?
开发中经常会有开发人员直接用Delete键将文件或者文件夹删除后再提交,TSVN报错。但是文件和文件夹的处理方式不同。如果删除的是文件可以直接在TSVN的检查更新中将文件的文字状态由缺少改为删除再提交即可。但是,如果删除的是文件夹则不行,只能重新update一下,再用TSVN的删除操作。为什么呢?请问,这两种有什么不一样吗?如果是文件夹还有别的其他的办法吗?
在本地工作拷贝文件夹里面还有svn的本地配置信息,并且这个配置文件是隐藏的.在你删除文件夹的时候会一并被删除,那么本地关于文件或文件夹的配置信息将与服务器端不相匹配,故你不能顺利提交!如果只是文件的话,那么在检查的时候,没有找到该文件,系统就视为该文件已经独立删除了.
http://bbs.iusesvn.com/thread-1964-1-1.html
------------------------------------
如何一次添加多个文件,这些文件分布在各个子目录下
我的工作目录为abc,其下有若干子目录s_abc_1,s_abc_2,等等。由于项目需要,某次,我不但向abc中添加了N个文件,同时还向 s_abc_1,s_abc_2等许多子目录中添加了N多文件(包括文件夹),请告诉俺怎么才能用比较便利的方法把新添加了的文件and文件夹提交到 subversion的库里边?
你不能直接使用 svn add * 命令,必须使用 “svn add * --force” 命令。
请放心,--force参数没有看上去的那么可怕,svn会自动判断,看这个文件是否值得添加,--force参数只不过是驱使 svn 去检查一个子目录,而不管这个子目录是否已经纳入管理
如果安装了TortoiseSVN这个客户端的话,可以这样做:
1在目录abc上右键,出现右键菜单
2在右键菜单上或TortoiseSVN子菜单上点击Add...这个菜单,出现对话框TortoiseSVN:Add
3在这个对话框中,选择你要添加的多个文件或文件夹,点击OK确认
4提交目录abc的更改即可
http://bbs.iusesvn.com/thread-9-1-38.html
--------------------------------
请问Eclipse目前是否有插件支持Subversion?
eclipse里面集成CVS,平常用惯了。如果现在也有支持Subversion的插件,就可以抛弃CVS了。:)
可以到这里下载
http://subclipse.tigris.org/
-------------------------------------
Subversion和TortoiseSVN的关系
Subversion是一个版本控制工具,可以说是CVS的下一代,当然功能比CVS强大多了。
TortoiseSVN是Subversion的一个可视化的windows客户端,提供了友好的图形化操作界面,使大家可以省去在命令行中敲打那些不易记住的命令。
----------------------------------------
[apache配置]如何表达多个代码库的授权?
<Location /svn>
DAV svn
SVNParentPath g:\temp
AuthType Basic
AuthName "my Subversion Server"
AuthUserFile g:\temp\svn-auth
AuthzSVNAccessFile g:\temp\auth\authz.conf
Require valid-user
</Location>

这样的配置是从教科书(http://svnbook.red-bean.com/)上面学来的,可是现在,在我的 g:\temp 目录下面,存在多个代码库,每个代码库都有各自的目录授权文件,使用svnserve.exe的时候,它们都工作的很好,现在要转移到apache下面,我没找到如何配置各个代码库授权文件的指令。
莫非我只能将各个auth.conf整合成一个文件,才能让apache正常工作么?
又或者,我只能给每个代码库编写一个<Location>指令段,然后各自独立配置?
http://bbs.iusesvn.com/thread-34-1-37.html
--------------------------------------
怎样才能使checkout,不把没有的没有授权的目录下载到本地如题。
例如
版本库目录结构如下
--ZRVCL
-- Bin
--ZRCtrls
--ZRDBCtrls
用户有两个admin ,hjp

只有admin用户才能下载所有目录下的文件
而hjp用户只能下载bin下的文件

请问是否可以达到这样目的??
启动的服务 svnserve -d -r e:\dev
配置文件均在e:\dev\repository目录下。
首先,svn要求1.3.2版本或更高
然后,我按照你的库目录及svnserve启动参数写出下面的配置文件
svnserve.conf复制内容到剪贴板代码:
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authzauthz复制内容到剪贴板代码:
[groups]
@dev=hjp
@admin=admin

[/]
*=
admin=rw
[repository:/ZRVCL/Bin]
hjp=rwpasswd文件自己写吧
格式如下:
[users]
harry = harryssecret
sally = sallyssecret
http://bbs.iusesvn.com/thread-234-1-35.html

svnserve.conf:12: Option expected

经常有新手配置基于svnserve的subversion服务器后,
在客户端访问subversion版本库时出现这个错误

svnserve.conf:12: Option expected

为什么会出现这个错误呢,就是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置文件,如
### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to this repository.   (If you only allow
### access through http: and/or file: URLs, then this file is
### irrelevant.)

### Visit http://subversion.tigris.org/ for more information.

[general]
### These options control access to the repository for unauthenticated
### and authenticated users.   Valid values are "write", "read",
### and "none".   The sample settings below are the defaults.
anon-access = read
auth-access = write

像上面的配置文件中,anon-access和auth-access就存在前置空格。
要避免出现这个错误,应该在去掉这些行前的#时,也要去掉空格,这一点,在郑新星老早的文章《Subversion之路--实现精细的目录访问权限控制》就提到过。
---------------------------------------------
Error: Can't connect to host '': 由于目标机器积极拒绝,无法连接
估计会有下面这几种情况:
1windows自带的或用户自己安装的防火墙屏蔽了相应的端口
2客户端主机由于路由等原因无法连接到svn服务器主机
3客户端错误地配置了代理
4服务端服务没打开

------------------------------
错误: 期待文件系统(FS)格式 “1”;找到格式“2”原因:低版本的服务端无法识别高版本的版本库
一般在如下情况出现:

比如,某windows服务器,
客户端安装的是TortoiseSVN1.4.1,服务端安装的是svn1.3.2。
创建版本库时,使用TortoiseSVN的右键进行创建,这时就会有此问题。

分析:TortoiseSVN1.4.1对应的服务端为1.4.0,用它创建版本库时,使用的是svn1.4.0的格式,
而服务端是svn1.3.2,自然识别不了1.4.0的版本(因为它后出来)

解决方法:
1升级svn1.3.2为svn1.4.0

2使用命令行svnadmin create命令来创建版本库,这样调用的就是svn1.3.2的程序,创建的版本库为低版本

请问Subversion怎么样让几个库的某些相同目录同步
请问Subversion怎么样一个仓库的下面的某一个文件夹以及某几个文件与另外一个仓库的相同文件同步
设置svn:externals看看
http://www.iusesvn.com/subversio ... vn-ch-7-sect-3.html
http://bbs.iusesvn.com/thread-307-1-34.html
-----------------------------
请教,如何将库分布到不同的分区上。我的是winXP,在c:、d:、e:、f:、盘都有空间,但是空间都不大,我建立了一个SVN服务器,
请问如何将在四个分区上建立的库,合并在一起。

比如:c:/SVN_01、
      D:/SVN_02、
      e:/SVN_03、
      f:/SVN_04
我想通过
       SVN://XXX.XXX.XXX.XXX/SVN_01、
       SVN://XXX.XXX.XXX.XXX/SVN_02、
       SVN://XXX.XXX.XXX.XXX/SVN_03、
       SVN://XXX.XXX.XXX.XXX/SVN_04
访问。
在命令行执行
sc create SubversionService01   binpath= "\"e:\program files\subversion\bin\svnserve.exe\" --service -r d:\svn01 --listen-port 3691" displayname= "Subversion Repository 01" depend= Tcpip
sc create SubversionService02   binpath= "\"e:\program files\subversion\bin\svnserve.exe\" --service -r d:\svn02 --listen-port 3692" displayname= "Subversion Repository 02" depend= Tcpip
sc create SubversionService03   binpath= "\"e:\program files\subversion\bin\svnserve.exe\" --service -r d:\svn03 --listen-port 3693" displayname= "Subversion Repository 03" depend= Tcpip

访问是通过 svn://XXX.XXX.XXX.XXX:3691、svn://XXX.XXX.XXX.XXX:3692、svn://XXX.XXX.XXX.XXX:3693 即可。
http://bbs.iusesvn.com/thread-374-1-33.html
----------------------------
怎样让版本库中的项目返回至以前的某个版本?
查了许多资料,大体上这样:
选中本地拷贝文件夹, 右键->TrosiseSVN ->显示日志 ,弹出的对话框中 选中要恢复的版本,右键->复原到此版本。
复原到此版本只会影响本地拷贝。
你要再将你的本地拷贝提交到版本库,最高的版本才会变动
复原至此版本: 这将会还原从那个版本以来的所有变更,使用选中的版本来替换文件/文件夹。在实际使用中发现并不是简单的替换,如果你在当前工作复本中所做的修改不涉及到被选中版本以来的变更内容,那么你的修改会与版本N进行合并,否则这个操作会产生一个冲突。

复原自此版本以来的所有变更: (这是中文版的菜单名称,应该是理解上有错误,根据实际操作的情况,应该是“还原此版本的变更”)。就是将你选中的那个版本中的修改还原,而在那之后的版本中的修改,包括你在工作复本中的新改动依然会被保留

更新至此版本:当前工作复本的 版本 被还原到你选中的版本。与上面两个的区别在于上面两个 不会 改变当前工作复本的版本

http://bbs.iusesvn.com/thread-450-1-32.html
---------------------------
如何进行svn(多库)的备份?
1,现在E:\新建一个文件夹copyrepository用来存放备份的库
2,在命令行:


D:\>cd repository

D:\repository>svnlook tree test1
/
2.txt
3.txt

D:\repository>svnlook tree test2
/
2.txt
3.txt
1.txt


D:\repository>svnadmin hotcopy test1 E:/copyrepository/copytest1   这样直接在copyrepository文件夹中新建了一个copytest1库

D:\repository>cd.. 成功后没有提示的

D:\>E:

E:\>cd copyrepository

E:\copyrepository>svnlook tree copytest1   验证,成功了
/
2.txt
3.txt

E:\copyrepository>cd..

E:\>D:

D:\>cd repository

D:\repository>svnadmin hotcopy test2 E:/copyrepository/copytest2


D:\repository>cd..


D:\>E:

E:\>cd copyrepository

E:\copyrepository>svnlook tree copytest2
/
2.txt
3.txt
1.txt

http://bbs.iusesvn.com/thread-1193-1-20.html
------------------------------
Subversion备份总结!
作者:Rock Sun, Subversion中文站。
如有转发请注明出处:http://www.subversion.org.cn/ind ... ;id=85&Itemid=9
1.完全备份
最常见和简单的备份就是直接使用拷贝命令,将版本库目录拷贝到备份目录上,就可以了。但是这样不是很安全的方式,因为如果在拷贝时版本库发生变化,将会造成备份的结果不够准确,失去备份的作用,为此Subversion提供了“svnadmin hotcopy”命令,可以防止这种问题。
2.增量备份
尽管完全备份非常简单,但是也是有代价的,当版本库非常巨大时,经常进行完全备份是不现实的,也并不必要,但是一旦版本库在备份之间发生问题,该如何呢,这里我们就用到了增量备份。
3.版本库同步功能
Subversion 1.4增加了同步机制,可以实现一个版本库同另一个版本库的同步(但好像只是单向的),我们可以用来实现版本库的备份或镜像。
有兴趣的朋友可以参照! svn常用命令
安装服务
sc create subversion_service binpath= "C:\Program Files\Subversion\bin\svnserve.exe --service -r F:\Corp.Data\svn\repository --listen-port 3691" displayname= "Subversion Repository Port2" depend= Tcpip
删除服务
sc delete subversion_service
启动服务
sc start subversion_service
停止服务
sc stop subversion_service
浏览版本库
TortoiseProc.exe /command:repobrowser /path:"http://192.168.1.2" /notempfile
http://bbs.iusesvn.com/thread-663-1-29.html

从哪里获取最新的SVN及常用客户端
Eclipse 3.2
Name: Subclipse
URL:  http://subclipse.tigris.org/update_1.2.x

--------------------------------
工作目录为什么不显示svn 的图标标志呢?
默认的TSVN是不需要特别设置的。
你检查一下这个设置有没有开:
右键->TSVN->设置->样式->重叠图标->Status cache
里面有三个选项:
1Default
2Shell
3None
如果是前面两个,应该就有svn图标,如果是none,就没有
另外还要看你用什么资源浏览器,有的资源浏览器的重叠图标功能是没开的
http://bbs.iusesvn.com/thread-762-1-27.html
-----------------------------
如何看已删除文件的历史版本
TortoiseSVN:
如果是误删除的文件:
1.恢复该删除文件。操作见http://www.iusesvn.com/bbs/thread-972-1-1.html
2.在该文件上右键TortoiseSVN->Blame 查看该文件的所有修改。
如果不是误删除的文件:
1.用Show log找到该文件的版本N.
2.Update to revision M(N以前的版本)。
3.本地working copy添加该文件后,查看该版本或用Blame查看该文件的所有修改(范围选择1到N-1)。
http://bbs.iusesvn.com/thread-974-1-24.html
--------------------------------
Apache2.2.4的MySQL认证模块+PHP密码修改页面[2007-3-3更新]
使用MySQL进行认证对于从CVSNT向Subversion迁移的朋友会很有用:因为CVSNT中用户的密码使用crypt函数加密的。SVN+Apache则是用MD5函数加密的。这就导致迁移时所有CVS用户的密码都要重新创建 。而使用MySQL进行认证的话,mysql认证模块可以选择使用多种加密函数进行认证。这样管理员只需要把原先的CVS用户密码贴到MySQL数据库中即可。
http://bbs.iusesvn.com/thread-927-1-23.html

ECLIPSE 问题:
一、在eclipse中工作,对class文件操作是总是提示文件“miss or locked”
   开发人员告诉我class文件夹里面的东西都是eclipse自己生成的,不由他们控制。
   解决步骤:
   1、把本地工程删掉,再从库中把项目拉下来。
   2、在本地工作目录下找到class文件夹,右键点击,在TSVN选项中,把它“add to ignore list”。
二、eclipse提示“svn:This client is too old to work with working copy ;please get a newer Subversion client ”
   用1.4.0的TSVN在本地工作目录下对受控的文件及文件夹进行特殊操作后,再在eclipse对该文件、文件夹操作会提示上面信息。
   解决方法很简单咯,下个新点的客户端就好啦~
http://bbs.iusesvn.com/thread-1048-1-22.html

svn命令行显示乱码,设置系统变量lang = en_us即可

在windows上执行svn命令时出现
?\230?\130?\168?\229?\191?\133?\233?\161?\187?\230?\140?\135?\229?\174?\154 -d,
-i, -t ?\230?\136?\150 -X ?\228?\184?\173?\231?\154?\132?\228?\184?\128?\228?\18
4?\170?\227?\128?\130
?\228?\189?\191?\231?\148?\168?\226?\128?\156D:\Program Files\svn-win32-1.4.6\bi
n\svnserve.exe --help?\226?\128?\157?\229?\190?\151?\229?\136?\176?\231?\148?\16
8?\230?\179?\149?\227?\128?\130

那是因为windows cmd不能显示utf-8字符。
需要先输入chcp 65001转换当前代码页
完了再输入chcp 936.还原以前的代码页

http://bbs.iusesvn.com/viewthread.php?tid=2223

设置一个环境变量 lang = en_us
 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号