svn的一些常见问题
SVN部分错误解决方案
SVN常见问题解决方案一、无法更新或检出二、更新时出现LOCK提示三、无法提交,提交时出现URL 错误四、上传成功时,其他人无法更新出一、无法更新或检出问题:解决方法1、确认SVN账户名及密码是否正确。
2、检查项目地址是否正确。
3、咨询项目经理或主管确定该项目是否关闭或是否具有更新权限。
如果没有,可至项目经理处申请,由项目经理告知IT管理员进行权限添加。
4、如上述方法都无法更新或检出,可在设置中将认证信息删除(有可能是SVN客户端软件认证缓存信息错误),然后重新点击检出,弹出认证界面,输入用户信息即可。
二、更新时出现LOCK提示问题SVN 本地更新时,由于一些操作中断更新,如磁盘空间不够,用户取消。
可能会造成本地文件被锁定的情况。
解决方法1、可以使用清理来清除锁定。
2、如果不是本目录锁定,系统提示上一层目录锁定,需要到上一层或者根目录中清除。
3、如果上面2种方法都无法解决,可进入被锁定文件夹中的隐藏文件(也就是.svn文件夹)中删除locked文件即可!三、无法提交,提交时出现URL 错误问题提交时出现org.tigris.subversion.javahl.ClientException: URL access forbidden for unkno。
解决方法可能是由于密码变更引起的提交错误。
---修改密码即可--因为密码都是保存过的:1、安装的SVN :删除C盘相关:auth 文件夹(里面有SVN的文件),不行或没有删除.keyring 文件2、MyEcplise -SVN :清理相关SVN --不会或不行,根据MyEcplise中link 文件的path 地址,重新替换SVN的主体四、上传成功,其他人无法更新问题文件上传成功,其他人更新时显示当前为最新版本,但无法更新出上传的文件。
解决方法第一步:文件夹所有者删除“xx”文件夹下的.svn隐藏文件第二步:将“xx”文件夹复制进trunk目录下第三步:更新上传第四步:通知其他人员更新下载。
SVN客户端常见问题及解决方法
SVN客户端常见问题及解决方法SVN客户端常见问题及解决方法1,出现:403Forbidden.常见情况及解决方法:A,若已保存密码,登录时不提示输入密码直接显示403forbidden ,桌面右键svn--settings--saved data--Authentication data Clear删除密码记录,重新登录。
B,检查登录路径是否有问题,如权限路径为https://192.168.0.242/svn/ZQZRT/trunk/DOC,却以路径https://192.168.0.242/svn/ZQZRT登录。
C,无权限,联系服务器管理员。
2,连续弹出输入用户名密码框密码错误,联系管理员重置密码。
3,提示已锁定,并要求执行Clearup(清理)操作。
出现这种情况一般为本地工作空间太混乱,或无更改权限,或修改内容与库中提交内容有冲突。
Subversion客户端在提交内容之前会在本地的工作拷贝写日志,防止其他客户端再次作操作,如果这个提交过程中发生错误,就会存在未清理的日志,解决这个问题只需要运行清理命令A,根据提示做Clearup操作(最好进入有感叹号的最低一级文件夹做该操作,再做update,同样再检查其他有感叹号的文件夹做相同操作);B,删除.svn文件夹中lock文件(最好进入有感叹号的最低一级文件夹做该操作,再做update,同样再检查其他有感叹号的文件夹做相同操作);C,本地电脑中删除有冲突一级文件夹,重新下载(注意备份修改内容)。
注:无更改权限的实施人员,在取版本时直接使用export导出功能导出固定版本内容(这样与配置库无连接,修改对库中无影响,不会自动锁定);提交前先做update操作,如有冲突,解决后再提交;对已修改的内容不想要时做revert操作(取消)后再做update 操作;4,“400 Bad Request”错误A:用户在登录时,输入正确的地址,按“回车”键后,系统长时间未反应,最后出现“400 Bad Request”的错误,为什么?Q:原因是卡巴斯基的WEB 反病毒保护功能和SVN冲突:解决方案:在“设置”->"服务"->"网络设置"->"端口设置中取消对80端口的监控;或在“设置”-〉保护-〉信任区域-〉添加-〉浏览,浏览TortoiseSvn安装目录下TortoiseSvn\\bin\\TortoiseProc.exe文件即可。
svn 开发过程常见问题与处理方法
SVN(Subversion)是一个开源的版本控制系统,被广泛用于代码管理和协作开发。
在软件开发过程中,SVN经常被用来管理代码的版本,协调多人同时开发,以及追踪代码的变更历史。
然而,由于开发过程中存在着各种复杂的情况和问题,有时候SVN的使用也会遇到一些常见的问题。
本文将从实际开发的角度出发,总结了SVN开发过程中常见的问题,并提出了一些解决方法供大家参考。
一、代码冲突在团队协作开发中,可能会出现多个开发者同时修改同一个文件的情况,导致代码冲突。
这时SVN会提示出现冲突,需要手动解决。
常见的解决方法有:1. 及时更新代码:在提交代码之前,先从SVN服务器更新最新的代码到本地,避免出现代码冲突。
2. 手动解决冲突:在出现冲突的文件中手动编辑代码,将冲突的部分修复后再重新提交。
二、意外删除文件有时候在清理代码的过程中,开发者不小心删除了某个重要的文件或目录,而没有在SVN上记录下来。
这时可以通过以下方法进行修复:1. 使用SVN恢复命令:可以使用命令行或者SVN客户端工具执行svn revert命令,将被意外删除的文件或目录还原为最新版本。
2. 查看SVN历史记录:可以通过SVN客户端工具或者命令行查看SVN服务器上对应文件的历史记录,并找回被删除的文件。
三、服务器连接问题在使用SVN时,有时会遇到无法连接服务器的问题,导致无法提交或更新代码。
这种情况下可以尝试以下解决方法:1. 检查网络连接:首先查看本地网络连接是否正常,对SVN服务器进行ping测试,确保网络连接畅通。
2. 检查SVN服务器配置:确认SVN服务器位置区域和端口是否正确,以及用户名和密码是否正确。
3. 联系系统管理员:如果以上方法无法解决问题,可以联系SVN服务器的系统管理员进行进一步排查和修复。
四、SVN性能问题随着代码量的增加和团队规模的扩大,SVN服务器可能会出现性能下降的情况。
为了提高SVN的性能,可以尝试以下方法:1. 定期清理历史记录:定期清理SVN服务器上过多的历史记录和无用的文件,可以通过SVN命令行工具执行svnadmin命令进行清理。
svn常见问题
Svn常见问题及相关原因1.svn: Server sent unexpected return value (500 Internal Server Error) in response to OPTIONS request for '/svn/test'错误的用户名检查登录的用户名是否输入错误svn: 服务器发送了意外的返回值(500 Internal Server Error),在响应“OPTIONS” 的请求“/svn/test” 中2.svn: OPTIONS of '/svn/test': authorization failed: Could not authenticate to server: rejected Basic challenge ()错误的口令用正确的用户名/口令登录svn: 方法OPTIONS 失败于“/svn/test”: 认证失败: Could not authenticate to server: rejected Basic challenge ()3.svn: Server sent unexpected return value (403 Forbidden) in response to OPTIONS request for '/svn/test'用户无权限联系管理员,为用户分配权限svn: 服务器发送了意外的返回值(403 Forbidden),在响应“OPTIONS” 的请求“/svn/test” 中4.svn: OPTIONS of '/svn/test': 200 OK () 服务器地址错误,是普通Web页面,不支持SVN的WebDAV 协议确认输入正确的SVN 服务地址。
可以在浏览器中输入该地址进行确认svn: 方法OPTIONS 失败于“/svn/test”: 200 OK ()5.The version of your subversion (client) is below 1.5.0, upgrade to 1.5.0 or above. SVN below 1.5.0 can not handle mergeinfo properly. It can mess up our automated merge tracking!是由于客户端的软件版本低于1.5.0造成的。
SVN使用中遇到的问题及解决办法
SVN使用过程中遇到的问题及解决方案1.当某文件被客户机lock之后,出现432错误后可用一下办法解决2.选取该文件所在的文件夹并右键选择TortoiseSVN下的Repo-Browser(版本库浏览器),然后选中被lock的文件单击右键选择break lock(破除锁定)即可解锁。
服务器发送了意外的返回值(405 Method Not Allowed),在响应“MKCOL” 的请求(405 Method Not Allowed),在响应“MKCOL” 的请求svn (405 Method Not Allowed) 在响应“MKCOL” 的请求I managed to solve the problem:1.Delete the parent’s directory of the folder giving the problem.2.Did SVN Update3. A folder with the same name as the new one already existed in repository.4.Delete this folder5.SVN Commit6.Copy the new folder, Schedule for addition and SVN Commit解释一下:SVN出现这个错误的原因是我删除了一个文件夹后又创建了一个同名文件夹。
在svn server 端,好像是不能区分这两个文件夹,所以出现了错误。
解决方法:1.删除出现错误的文件夹2.SVN Update3.这时服务器上存在的文件夹会出现在本地4.删除原有的文件夹5.SVN Commit6.重新创建文件夹7.SVN Commit服务器发送了意外的返回值(403 Forbidden),在响应“CHECKOUT” 的请求情况说明:服务器发送意外的返回值(403 Forbidden),在响应CHECKOUT请求解决办法:寻找有赋权权限的老大,帮你授权!有了权限就可以提交了.若还是提醒服务器发送意外的返回值(403 Forbidden),在响应CHECKOUT请求,请清空你的目录,再次的检出,检出后,再次提交。
svn常见错误
eclipse使用subclipse导致jvm崩溃将环境变量APR_ICONV_PATH改为APR_ICONV1_PATH或者下载Subversion 1.4.3的zip包,将环境变量APR_ICONV_PATH 指向解压后的iconv 文件夹。
/show-35-1.html----------------------------------------subversion和apache,apr,apr-util的关系很多朋友初次接触Subversion时不是很理解subversion和apache的关系。
/show-34-1.html----------------------------------------show log只显示no date在SVN中选中一个目录show log时,出现了某些版本只显示版本号和(no date),没有其他信息,什么原因引起的?出现了(no date)的revision,为其他人修改了你所没有权限访问的某个目录下的文件/show-33-1.html---------------------------------------使用StatSVN统计Subversion库中的代码开发情况入门StatSVN能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表。
比如:代码行数的时间线;针对每个开发者的代码行数;开发者的活跃程度;开发者最近所提交的;文件数量;平均文件大小;最大文件;哪个文件是修改最多次数的;目录大小;带有文件数量和代码行数的Repository tree。
StatSVN当前版本能够生成一组包括表格与图表的静态HTML文档。
StatSVN使用JFreeChart 来生成chart。
/show-32-1.html--------------------------------------Subversion是否可以控制中文目录的访问权限?可以!经过测试,发现subversion是可以很好地控制中文目录的权限的。
svn 丢失的范围
svn 丢失的范围SVN(Subversion)是一种版本控制系统,可以追踪和管理软件开发过程中的不同版本。
然而,有时候由于各种原因,SVN可能会出现丢失的范围。
下面将从不同的角度来探讨这个问题。
一、代码丢失在使用SVN进行版本控制时,有时会发现一些代码在提交后消失了。
这种情况可能是因为在提交代码之前,未将所有的修改都添加到版本库中。
解决这个问题的方法是确保在提交代码之前,将所有修改都正确地添加到版本库中。
二、文件丢失另一个可能的问题是文件的丢失。
在使用SVN时,有时会发现某个文件在版本库中找不到。
这可能是因为在提交之前,该文件被意外地删除了。
解决这个问题的方法是检查版本库中的历史记录,找到该文件最后一次存在的版本,并将其恢复到最新版本。
三、分支丢失SVN允许创建分支来并行开发不同的功能。
但有时会发现分支丢失的情况。
这可能是因为在合并分支时出现了错误,导致某些分支的修改消失了。
解决这个问题的方法是仔细检查合并的操作,确保没有遗漏任何修改。
四、标签丢失标签是SVN中的一个重要概念,可以用来标记软件的发布版本。
然而,有时会发现标签丢失的情况。
这可能是因为在创建标签时出现了错误,导致标签未被正确地保存到版本库中。
解决这个问题的方法是检查标签的创建过程,确保标签被正确地保存。
五、日志丢失SVN允许开发人员在提交代码时添加日志,以便记录修改的目的和细节。
但有时会发现日志丢失的情况。
这可能是因为在提交代码时,未正确地添加日志或者在版本库中被覆盖了。
解决这个问题的方法是确保在提交代码时,正确地添加和保存日志。
六、权限丢失SVN允许设置不同的用户权限来限制对版本库的访问。
但有时会发现权限丢失的情况。
这可能是因为在设置权限时出现了错误,导致某些用户无法访问版本库。
解决这个问题的方法是仔细检查权限设置,并确保每个用户都有正确的访问权限。
七、冲突丢失SVN在合并代码时,可能会遇到冲突的情况。
这时候开发人员需要手动解决冲突。
SVN和TortoiseSVN安装遇到的问题和解决方法
1.当你安装完TortoiseSVN客户端软件后,打开软件执行Repo---browser时,桌面出现了一条提示信息“系统找不到指定的路径”。
对于此问题,你首先的做法就是应该重新启动你的计算机。
当然,再重新启动计算机之前,请确保你的一些重要文件已经保存。
如果重新启动计算机后仍出现此问题,那么你就需要卸载这个软件,然后重新安装。
然后再重启计算机。
这个问题肯定就可以解决。
这里,重点提示:在TortoiseSVN这个软件安装完成后,你可以先检查一下这个问题,看一看桌面上是否会出现这个提示信息。
2.如果你仅仅需要用路径为,在多数资料上你会看到:为了方便每次的访问,你需要一条语句为“sc create svn binpath= " --service -r D:\svn\repository"displayname= "SVN Server" depend= Tcpip start= auto”(每个等号后面必须有空格),当你执行这个操作时,在DOS界面会出现“[sc]Create Service Failed 1073”。
对于此问题你可以先在DOS界面下执行一条“sc delete SVN Server”命令。
这时DOS界面应该会有一条提示命令意思是:SVN Server 服务成功删除。
接着,你把上面的语句复制,或者按键盘上的向上的箭头,然后回车。
如果没有出现“[sc]Create Service Success”提示命令。
在DOS界面重新执行“sc delete SVN Server”这条命令,两到三次之后,肯定可以解决。
3.如果你需要客户端通过网页方式访问服务器,那么在服务器上你必定需要安装Apache软件。
你必定要给用户建立用户名和分配权限,在你看到的大多数资料中,你必定需要在DOS界面下执行一条“htpasswd –c xxx”(xxx为用户名)的命令,如果DOS界面出现了“htpasswd不是内部或外部命令,也不是可运行的程序或批处理文件”,说明你的用户没有建立成功,也就是说,你遇到了错误。
SVN与EA使用常见问题解决方案
SVN与EA使用常见问题解决方案一、SVN修改服务器地址:1、选中SVN checkout的文件夹,右键选择TortoiseSVN的relocattion。
2、在弹出框中录入新的服务器地址。
请确认服务器地址正确,你也可以在浏览器中访问新地址,已确认新地址是否正确。
二、用SVN后,在EA中有同事将文件check out后,自己再强制执行了check out后,被check out的文件不能再被check in,提示文件被锁定,SVN 被锁定的几种解决方法:1、出现这个问题后使用“清理”即"Clean up"功能,如果还不行,就直接到上一级目录,再执行“清理”,然后再“更新”。
2、有时候如果看到某个包里面的文件夹没有SVN的标志,直接用“Ctrl+Delete”手工删除,然后“清理”,最后“更新”或“提交”。
3、有时候有的文件死活无法提交和更新,有lock字样的提示,:首先点击该文件,然后getLock,再选中stealLock,然后release lock即可4、教大家最狠的一招,在项目中如果是出现某个文件死锁的情况无法解决的情况下,叫开发中所有的人把文件上传了解锁了,清空版本库地址:安装目录:SvnTracsvnprojectsdblocks这个文件夹路径里面的全部内容。
一切ok!注意:Subversion1.3.2,开启匿名访问的同时利用authz功能限制匿名访问,则会出现check out 时提示被LOCK的现象三、EA建模后,同步时,提示: DAO. The field [3163] the field is too small to accept the amount of data you attempted to add. Try inserting or pasting less data.解决方案:此提示是由于EA不支持中文字符,需开启JET4.0模式,具体操作如下:步骤一:打开EA工具步骤二:Tools-->options 勾选use JET4.0-requires步骤三:重启EA步骤四:解压EABase_JET4 .zip文件,打开EAEABase_JET4.eap文件;步骤五:将EAEABase_JET4.eap项目下的所有model删除(仅保留最顶级目录),另存为:自定义项目名称;步骤六:导入SVN项目:选择创建的view,右键选择Package Control--->Import a Model Branch…注意:若有多个EAB文件导入,则都必须定义在最顶级的model右键导入,否则找不到对应的选项;。
SVN各种错误提示产生原因及处理方法大全
SVN各种错误提示产生原因及处理方法大全SVN是一种版本控制系统,常用于软件开发团队中进行代码管理和协作。
在使用SVN的过程中,可能会遇到各种错误提示。
下面是一些常见的SVN错误提示产生的原因及处理方法的总结:这个错误提示表示有锁定在文件或目录上,可能是由于之前的操作中出错或非正常终止导致。
解决方法是运行“svn cleanup”命令来解锁文件或目录。
这个错误提示表示要创建的文件已经存在于SVN中。
解决方法是删除已存在的文件,然后重新添加文件。
这个错误提示表示之前的操作没有完成,可能是由于网络故障或其他原因导致的。
解决方法是运行“svn cleanup”命令来清理未完成的操作。
这个错误提示表示工作副本是混合版本的,无法执行合并操作。
解决方法是通过更新工作副本,使其成为单一版本,然后再执行合并操作。
这个错误提示表示目录已经过时,不能执行更新操作。
解决方法是使用“svn update”命令来更新目录,或者删除目录并重新检出。
这个错误提示表示服务器返回了锁定错误,可能是由于其他用户正在操作相同文件或目录导致的。
解决方法是等待其他用户完成操作后再尝试。
这个错误提示表示工作副本数据库的工作队列执行失败。
解决方法是运行“svn cleanup”命令来修复工作副本。
这个错误提示表示要创建的文件已经存在于工作副本中。
解决方法是删除已存在的文件,并重新执行添加文件操作。
总结:在使用SVN过程中,会遇到各种错误提示,这些错误提示通常是由于操作不当、网络故障或其他原因导致的。
根据错误提示的具体信息,可以通过运行相应的SVN命令或采取相应的解决方法来解决问题。
为了避免出现错误,建议定期进行SVN清理操作,及时更新工作副本,并注意与其他用户的共享文件或目录的冲突。
[整理]Svn常见问题汇总。
[整理]Svn常见问题汇总。
1、’.’ is not a working copy.Can’t open file‘.svn/entries’: 系统找不到指定的路径。
解答:原因是输⼊的访问路径不正确,如svn://192.168.6.200/如果最后少写了“/”,就会出现这种错误提⽰。
2、将⽂件checkout之后,没有出现SVN的图标,是怎么回事?解答:有些时候在客户端Checkout⽂件后,SVN的系统图标也会不显⽰,可以执⾏⼀下“Cleanup”,就会出现SVN的系统图标。
3、为什么添加的⽂件,别⼈看不到,版本库⾥也没有?解答:最可能的原因是,你只是执⾏了“Add”⽽没有“Commit”,这样只是在本地注明某个⽂件是预定要增加的,⽽没有实际添加到版本库中,要添加到版本库必须执⾏“Commit”。
删除⽂件也是⼀样。
4、“Commit failed。
……You have toupdate your working copyfirst” 提交失败,需要⾸先执⾏更新操作。
解答:多⼈同时修改同⼀⽂件,在提交前其他⼈已经抢先提交到SVN服务器中,导致该错误;解决⽅法:对⼯作复本中的⽂件进⾏更新即可。
5、更新时提⽰⽂件发⽣冲突:“One ormore files are not a conflicted state。
”解答:多⼈同时修改同⼀⽂件的同⼀部分,SVN⽆法⾃动进⾏合并,会导致该错误;解决⽅法:对⼯作复本中的⽂件和服务器的⽂件进⾏⽐较,⼿⼯合并即可。
6、“Commit failed;File alreadyexists”提交失败,⽂件**已存在。
解答:版本管理系统在改变你的计算机上的⼯作副本时,是⾮常的⼩⼼的。
在做任何事情之前,它都尽可能把您的意图写到你的计算机上的⽇志⽂件中去。
但如果偶然地操作中断了(例如:突然停电了,您的计算机死机了),那么⽇志⽂件记录就可能同您最后的⼯作状态不⼀致。
⼀种建议解决途径:先把要提交的东西拷出来放到其它⽬录,再更新本地⽂件,然后把拷出来的⽂件重新放回去提交。
svn cleanup 失败 解决方法
svn cleanup 失败解决方法摘要:一、问题背景介绍二、svn cleanup 失败的原因及排查方法1.未安装或配置svn2.版本库损坏3.网络问题4.权限问题5.客户端配置问题三、解决方法及步骤1.检查并安装svn2.修复版本库3.检查网络连接4.调整权限设置5.更新客户端配置四、预防措施及建议五、总结正文:svn cleanup 失败是许多在使用SVN版本控制系统时会遇到的问题。
本文将为大家介绍解决svn cleanup 失败的方法,帮助大家顺利地进行版本控制。
一、问题背景介绍SVN(Subversion)是一种开源的版本控制系统,广泛应用于软件开发团队之间的协作。
在使用SVN时,有时会遇到cleanup 失败的情况,导致无法正常进行版本控制。
这会给团队协作带来很大困扰,因此需要及时解决。
二、svn cleanup 失败的原因及排查方法1.未安装或配置svn在进行svn cleanup 操作前,请确保已正确安装并配置svn。
如果还未安装或配置,请参照官方文档进行操作。
2.版本库损坏如果版本库损坏,可能会导致svn cleanup 失败。
可以通过以下命令检查版本库是否损坏:```svn status -u```如果显示的错误信息中含有“invalid”,则可能是版本库损坏。
此时需要采取措施修复版本库,例如使用svnadmin repair 命令。
3.网络问题在进行svn cleanup 操作时,需要确保与版本库的连接正常。
如果网络出现问题,可能导致cleanup 失败。
请检查网络连接并尝试重新连接。
4.权限问题在进行svn cleanup 操作时,可能需要对相关目录或文件调整权限。
请检查权限设置,确保具有正确的权限。
5.客户端配置问题有时,svn cleanup 失败可能是由于客户端配置问题导致的。
请检查客户端配置,确保配置正确。
三、解决方法及步骤1.检查并安装svn如果还未安装或配置svn,请参照官方文档进行操作。
svn常见错误
常见错误及解决总结:因为软件之间的依赖特别强,所以在安装svn的时候有许多错误,我把我遇到的错误提示和解决方法说明如下:./configure#错误提示1#configure: error: We require OpenSSL; try --with-openssl解决方法:错误提示需要安装openssl,所以我就安装了一个openssl,下载openssl-1.0.0a.tar.gz放到root 下,安装方法如下:cd /roottar -zxvf openssl-1.0.0a.tar.gzcd openssl-1.0.0a./configmakemake installmake clean安装之后会在/usr/local下生成一个ssl目录设置环境变量,在/etc/profile的PATH中增加如下内容:PATH=/usr/local/ssl/bin:/sbin PA TH:/usr/sbinexport PA TH重新执行./configure --with-openssl=/root/openssl-1.0.0a#这里加上--with-openssl参数#错误提示2#configure: error: subversion requires zlib这是需要安装zlib解决方法:cd /roottar -xvzf zlib-1.2.5.tar.gzcd zlib-1.2.5./configuremakemake installcd /usr/localln -s zlib-1.2.5 zlib重新执行./configure --with-openssl=/usr/local/ssl --with-zlib=/usr/local/zlib ,成功!或者,subversion-1.6.2中自带zlib.cd subversion-1.6.2/zlibmakemake installmake cleanOK。
svn版本管理的缺点
svn版本管理的缺点svn是一种常用的版本管理工具,它可以对软件开发过程中的代码进行版本控制和管理。
然而,svn也存在一些缺点,下面将详细介绍svn版本管理的缺点。
svn的性能存在一定的问题。
在大规模的项目中,当代码库非常庞大时,svn的操作速度会变得很慢。
特别是在进行代码提交和更新时,可能需要花费较长的时间。
这对于开发人员来说是非常不方便的,会降低开发效率。
svn对于二进制文件的管理不够友好。
在软件开发中,除了代码文件外,还有很多二进制文件,如图片、音频、视频等。
而svn对于这些二进制文件的版本管理并不是很好,无法很好地比较和合并二进制文件的差异,也无法对二进制文件进行增量更新。
svn对文件重命名和移动的处理也存在问题。
当开发人员对文件进行重命名或移动时,svn会将其视为删除原文件和添加新文件来处理,而不是进行简单的重命名或移动操作。
这样会造成版本历史的丢失,导致后续的代码追溯和回滚变得困难。
svn的分支和合并功能也不够灵活。
在软件开发中,分支和合并是非常常见的操作,用于并行开发和合并不同分支的代码。
然而,svn 的分支和合并功能相对复杂,需要手动处理冲突和解决合并问题,容易出错且操作繁琐。
svn的权限管理也存在一些问题。
svn只提供基于路径的权限控制,无法进行细粒度的权限控制。
这导致在多人协作开发中,无法对不同的开发人员设置不同的权限,可能会造成代码的泄露或错误的修改。
svn的错误处理机制相对简单,对于一些复杂的错误场景,svn的错误提示不够明确,很难准确定位问题所在,给开发人员带来了困扰。
svn的分布式开发能力相对较弱。
在分布式团队协作开发中,每个开发人员都需要从中央服务器获取代码进行开发,这对于网络质量不好或者团队成员分布在不同地区的情况下,会造成开发效率的降低。
svn版本管理工具虽然在很多方面都有优势,但也存在一些明显的缺点。
这些缺点包括性能问题、对二进制文件的管理不友好、对文件重命名和移动处理不当、分支和合并功能不够灵活、权限管理不够细粒度、错误处理机制简单、分布式开发能力较弱等。
svn常见问题及解决
subversion(SVN)常见问题及其解决方法1. 隐藏文件.svn目录删除了怎么办Checkout后,工作空间下.svn目录下有大量隐藏文件,占用比较大的空间,他们是工作空间的管理文件,不能删除,如果不小心删除了也不要抓狂,不会影响服务器端的,重新checkout就又可以工作了。
如果想不包含这些隐藏文件导出,可以用TSVN菜单里的export 完成。
2.文件名大小写问题,在下载代码时,下载到一半,系统提示不能找到……文件,提示Can't copy"……"to"……"系统找不到指定文件该问题很可能是因为上传了大小写不同的同名文件,在Repo-Browser里找到同名文件删除一个就好了。
(该问题曾经困惑过好长时间,解决了是如此简单)3..can’t connect to host …………(1),服务器有没有运行,有没有打开相应端口如果服务器是svnserve,检查有没有运行svnserve,有没有打开3690端口(我们用的是这个,端口是9999)如果服务器是apache,检查apahce是否运行,是否打开80端口检查时可以在服务器运行netstat -na看看相应端口是否在LISTEN(2),防火墙有没有开放相应端口(3),客户端是否可以连接服务器的相应端口使用命令telnet 服务器IP 相应端口如:telnet 192.168.0.1 99994. 路径或权限不足时将出现错误信息提示:http://localhost (路径不对)Error * PROPFIND request failed on '/' PROPFIND of '/': 200 OK (http://localhost)http://localhost/svn (权限不足)Error * PROPFIND request failed on '/svn' PROPFIND of '/svn': 403 Forbidden (http://localhost)http://localhost/svn/repos (正常显示)http://localhost/repos (权限不允许)Error * PROPFIND request failed on '/repos' PROPFIND of '/repos': 405 Method Not Allowed (http://localhost)解决办法是填写正确的路径或给予适当的权限。
svn日常使用指南及常见错误
svn日常使用指南及常见错误SVN日常操作及常见错误1.SVN简介1.1什么是T ortoiseSVN?TortoiseSVN 是Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。
文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。
你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。
这就是为什么许多人将Subversion 和版本控制系统看作一种“时间机器”。
某些版本控制系统也是软件配置管理(SCM)系统,这种系统经过精巧的设计,专门用来管理源代码树,并且具备许多与软件开发有关的特性- 比如,对编程语言的支持,或者提供程序构建工具。
不过Subversion 并不是这样的系统;它是一个通用系统,可以管理任何类型的文件集,包括源代码。
1.2TortoiseSVN 的特性1.重载图标每个版本控制的文件和目录的状态使用小的重载图标表示,可以让你立刻看出工作副本的状态。
2.目录版本控制CVS 只能追踪单个文件的历史,但是Subversion 实现了一个“虚拟”文件系统,可以追踪整个目录树的修改,文件和目录都是版本控制的,结果就是可以在客户端对文件和目录执行移动和复制命令。
3.原子提交提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改。
4.高效的分支和标签分支与标签的代价不与工程的大小成比例,Subversion 建立分支与标签时只是复制项目,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间,以及很小的版本库空间。
5.良好的维护能力Subversion 没有历史负担,它由一系列良好的共享C 库实现,具有定义良好的API,这使Subversion 非常容易维护,可以轻易的被其他语言和程序使用。
1.3 安装 TortoiseSVNTortoiseSVN 提供一个容易使用的安装程序。
SVN错误信息大全及解决方法
错误信息一:SVN Attempted to lock an already-locked dir出现这个问题后使用“清理”功能,如果还不行,就直接到上一级目录,再执行“清理”,然后再“更新”。
有时候如果看到某个包里面的文件夹没有SVN的标志,直接用“Ctrl+Delete”手工删除,然后“清理”,最后“更新”或“提交”。
中断提交,都会进入这种工作拷贝的锁定状态。
用svn cleanup上次关闭时的锁定。
注:SVN使用规范1.同步,合并,再提交2.每天开工时,先在ECLIPSE里同步,下班时,要提交(提交前,先在文件夹的右菜单中,选择小组>清除),保证每个人的机子里在开工前都是最新版本错误信息二:Malformed filesvn: E:\svn\repository\conf\svnserve.conf:12: Option expected原因:配置文件12行开头有空格错误信息Attempted to lock an already-locked dirsvn: Working copy 'E:\integration\com.svn.practise' locked原因:需要用svn cleanup上次关闭时的锁定错误问题三:svn' containing working copy admin area is missing一直使用SVN进行版本控制,环境是:win2003+myeclipse6+svn1.46部署到tomcat5.5和weblogic8.1问题描述:eclipse开发过程经常进行自动编译和发布,这导致/web-inf/目录下相关文件夹对应的.svn 文件夹被连同删除,导致同步时出现:svn' containing working copy adminarea is missing提示。
解决办法:浏览SVN仓库目录结构,把工程目录下对应的/web-inf/目录下相关文件全部或部分删除(这里我仅仅删除classes目录),刷新。
【最新资料】svn常见问题及解决
subversion(SVN)常见问题及其解决方法1. 隐藏文件.svn目录删除了怎么办Checkout后,工作空间下.svn目录下有大量隐藏文件,占用比较大的空间,他们是工作空间的管理文件,不能删除,如果不小心删除了也不要抓狂,不会影响服务器端的,重新checkout就又可以工作了。
如果想不包含这些隐藏文件导出,可以用TSVN菜单里的export 完成。
2.文件名大小写问题,在下载代码时,下载到一半,系统提示不能找到……文件,提示Can't copy"……"to"……"系统找不到指定文件该问题很可能是因为上传了大小写不同的同名文件,在Repo-Browser里找到同名文件删除一个就好了。
(该问题曾经困惑过好长时间,解决了是如此简单)3..can’t connect to host …………(1),服务器有没有运行,有没有打开相应端口如果服务器是svnserve,检查有没有运行svnserve,有没有打开3690端口(我们用的是这个,端口是9999)如果服务器是apache,检查apahce是否运行,是否打开80端口检查时可以在服务器运行netstat -na看看相应端口是否在LISTEN(2),防火墙有没有开放相应端口(3),客户端是否可以连接服务器的相应端口使用命令telnet 服务器IP 相应端口如:telnet 192.168.0.1 99994. 路径或权限不足时将出现错误信息提示:http://localhost (路径不对)Error * PROPFIND request failed on '/' PROPFIND of '/': 200 OK (http://localhost)http://localhost/svn (权限不足)Error * PROPFIND request failed on '/svn' PROPFIND of '/svn': 403 Forbidden (http://localhost)http://localhost/svn/repos (正常显示)http://localhost/repos (权限不允许)Error * PROPFIND request failed on '/repos' PROPFIND of '/repos': 405 Method Not Allowed (http://localhost)解决办法是填写正确的路径或给予适当的权限。
SVN使用常见问题总结
SVN使⽤常见问题总结SVN使⽤常见问题总结1.多⼈修改同⼀⽂件,产⽣冲突未先进⾏更新,提交时报错,系统提⽰You have to update your working copy first.选择更新⽂件后,如果⽂件内容不是在同⼀⾏修改的,系统会⾃动合并,否则系统会提⽰⽂件冲突,需要⼿动解决。
2.如何使⽤其他⽤户登录登录SVN时选择保存认证,下次登录时直接进去了,如果希望更改登录⽤户,可进⾏如下操作:右键->TortoiseSVN->设置->已保存数据->清除。
3.创建branch时系统报错在服务器的branch下没有建好分⽀的⽬录,在客户端创建分⽀时,直接指定分⽀的名称,这时候报错“path 'branches' not present”,这是怎么回事啊?创建tag也⼀样。
svn copy不会⾃动递归创建⽬录,你要⾃⼰先创建好⽗⽬录。
⽐如你要创建⼀个分⽀/branches/1.4.1,那么1.4.1你可以不⽤创建,但是/branches你要先创建好。
4.Subversion是否可以控制中⽂⽬录的访问权限?可以!经过测试,发现subversion是可以很好地控制中⽂⽬录的权限的。
⽅法很简单,就是将你的权限控制⽂件的格式转换为UTF-8格式,将权限⽂件改成UTF-8格式可以使⽤UltraEdit的菜单"ASCII to UTF-8 (Unicode Editing)"。
5.如何恢复SVN中已删除⽂件或⽂件夹⽤TortoiseSVN:1).在本地working copy中,⽤TortoiseSVN->Show log查看版本库的历史记录。
可以⽤search。
2).找到删除该⽂件或者⽂件夹的版本,在Log message⾥右键Revert the changes from this revision。
3).该⽂件或⽂件夹就被恢复到本地的working copy中了。
svn使用教程及常见问题解决方案
svn使⽤教程及常见问题解决⽅案SVN简介:为什么要使⽤SVN?程序员在编写程序的过程中,每个程序员都会⽣成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本。
Subversion是什么?它是⼀个⾃由/开源的版本控制系统,⼀组⽂件存放在中⼼版本库,记录每⼀次⽂件和⽬录的修改,Subversion允许把数据恢复到早期版本,或是检查数据修改的历史,Subversion可以通过⽹络访问它的版本库,从⽽使⽤户在不同的电脑上进⾏操作。
⼀:SVN服务器搭建和使⽤。
个⼈认为最好⽤VisualSVN server 服务端和 TortoiseSVN客户端搭配使⽤. 点开上⾯的VisualSVN连接,下载VisualSVN server,下载完成后双击安装,如下图:点击Next下⼀步,如下:然后再点击Next项,下⼀步,如下:点击【Next】如下:Location是指VisualSVN Server的安装⽬录,Repositorys是指定你的版本库⽬录.Server Port指定⼀个端⼝,Use secure connection勾⼭表⽰使⽤安全连接,点击Next,进⼊下⼀步,如下图:再点击【Install】,进⼊如下安装图:等待安装完成后,点击【next】,进⼊下⼀步:如下图点击【Finish】即可完成安装。
安装完成后,启动VisualSVN Server Manager,如图:可以在窗⼝的右边看到版本库的⼀些信息,⽐如状态,⽇志,⽤户认证,版本库等.要建⽴版本库,需要右键单击左边窗⼝的Repositores,如下图:在弹出的右键菜单中选择Create New Repository或者新建->Repository:进⼊下⼀步,如下图:点击【下⼀步】,如下图:点击【create】,如下图:点击【Finish】即可完成基本创建。
2. 需要建⽴⽤户和组,并且需要分配权限。
1. 在VisualSVN Server Manager窗⼝的左侧右键单击⽤户组,选择Create User或者新建->User,如图:点击User后,进⼊如下图:填写Username和password后,点击ok按钮后,进⼊如下图:点击上⾯的【Add】按钮后,如下图增加longen0707到⽤户中(如果有多个⽤户,操作⼀样)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
解答:原因是输入的访问路径不正确,如svn://192.168.6.200/如果最后少写了“/”,就会出现这种错误提示。
问题2:将文件checkout之后,没有出现SVN的图标,是怎么回事?
问题4:“Commit failed。……You have to update your working copy first”提交失败,需要首先执行更新操作。
解答:多人同时修改同一文件,在提交前其他人已经抢先提交到SVN服务器中,导致该错误;解决方法:对工作复本中的文件进行更新即可les are not a conflicted state。”
问题7:Working copy’**’locked. Please execute the ’Clean up’command.
解答:Subversion客户端在提交内容之前会在本地的工作拷贝写日志,防止其他客户端再次作操作,如果这个提交过程中发生错误,就会存在未清理的日志,解决这个问题之需要执行“清理”操作,整理你的计算机上的工作副本,清理错误的日志记录,使您可以继续操作。
解答:多人同时修改同一文件的同一部分,SVN无法自动进行合并,会导致该错误;解决方法:对工作复本中的文件和服务器的文件进行比较,手工合并即可。
问题6:“Commit failed;File already exists”提交失败,文件**已存在。
解答:版本管理系统在改变你的计算机上的工作副本时,是非常的小心的。在做任何事情之前,它都尽可能把您的意图写到你的计算机上的日志文件中去。但如果偶然地操作中断了(例如:突然停电了,您的计算机死机了),那么日志文件记录就可能同您最后的工作状态不一致。一种建议解决途径:先把要提交的东西拷出来放到其它目录,再更新本地文件,然后把拷出来的文件重新放回去提交。
问题9:因为仓库与目录很多,使用TSVN每次选择目录URL of repository有很多地址,如何才清除呢?像清除浏览器中的历史那样,用什么方法呢?
解答:右键->TortoiseSVN->Settings->Saved Data,就可以清除你想要的东西了,包括URL、log、窗口大小、密码缓存等。
问题8:执行clean up时,出现错误 “Subversion reported an error while doing a cleanup!” '**' is not a working copy directory ”
解答:遇到这种情况,先删除隐藏文件夹.svn中的tmp下面的临时文件,再执行clean up。
问题10:在SVN中选中一个目录show log时,出现了某些版本只显示版本号和(no date),没有其他信息,什么原因引起的 ?
解答:出现了(no date)的revision,为其他人修改了你所没有权限访问的某个目录下的文件。
解答:有些时候在客户端Checkout 文件后,SVN的系统图标也会不显示,可以执行一下“Clean up”,就会出现SVN的系统图标。
问题3:为什么添加的文件,别人看不到,版本库里也没有?
解答:最可能的原因是,你只是执行了“Add”而没有“Commit”,这样只是在本地注明某个文件是预定要增加的,而没有实际添加到版本库中,要添加到版本库必须执行“Commit”。删除文件也是一样。