您的位置:首页 > 其它

uberSVN使用笔记一

2011-12-29 14:52 232 查看
断断续续看过 试过好几次 svn 都是看一下就放掉了。今天重新开始看了,决定了解并慢慢使用 适应它。

由于实力有限,总想找一些傻瓜化的,简单又好用的工具来解除使用。好了 废话不多说,这边做一个简单的流水账。

首先下载了,uberSVN 目前还是测试版的。ubersvn.com注册成功后 获取了 key。于是首先在Windows下安装尝试了下(其官网有详细的使用说明文档,这边就不做具体说明了)。

结果在创建版本库的时候 提示js 类出错

Whoa! That wasn't supposed to happen!

Sorry, it looks like uberSVN has encountered a problem, details of which can be found below.

Please let us know if you believe this is a bug or an error on our part and we'll get straight down to fixing it.

javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class org.tigris.subversion.javahl.SVNAdmin

网上搜索了下,没发现什么好的解决方案,也不知道怎么动手解决,于是放弃了。

重新下载了linux版本,开启虚拟机 然后安装。

安装的时候出现了

Not enough space left in /tmp (0 KB) to decompress ****************** (******** KB)

Consider setting TMPDIR to a directory with more free space.

的错误提示,空间不足,但是要怎么修改TMPDIR呢,怎么查看其他的文件目录剩余空间呢。继续上网搜

$df -h

Filesystem Size Used Avail Use% Mounted on

/dev/sda2 3.8G 3.7G 0 100% /

/dev/sda5 14G 1.3G 12G 10% /home

/dev/sda1 46M 11M 33M 25% /boot

tmpfs 506M 0 506M 0% /dev/shm

发现home 目录下剩余空间还很多,于是 修改TMPDIR

export TMPDIR="/home/tmp"

当然首先对应的目录 要先建好 :-)

然后继续安装,并修改安装目录,统统放到home 目录下,因为它比较空 :-)

安装完成,对照说明文档 熟悉了一下控制台界面。 额 发现它原来只是一个基本的管理工具。

并不是我想象中的那样,管理的同时,可以在线编辑 更新 提交 文件 控制版本。。。。。。。。

额,但想的太完美了 往往都是不太现实的。

还好本地已经有装 svn了,于是尝试着将虚拟机里面刚建的一个版本库给导出到本地来, 不知道 是什么原因,中途有点小小的错误提示,不过还是在本地生成了 一个库。

新建几个目录,放几个新文件。ok。 测试更新 提交。

错误又来了

error: Can't find a temporary directory

svn 还真不是那么好用 :-) 相对于小菜鸟来说。

继续上网查,有位老兄碰到过类似的问题,这边就直接先贴一下 他的(部分)原文

机子上的SVN突然没有办法进行代码提交了,出现的错误提示信息为:

Error:Can't find temporary directory:internal error

然后试了下其他的SVN源,发现均无法提交,并且update时也出现上面的错误信息。对比项目文件时出现"不能创建目录或文件"

公司网站首页正在改版,突然出现上面的问题,导致代码管理无法使用,此时是十分着急,

赶忙到google上去搜索,发现很多人出现了同样的问题,普遍的问题产生原因是:linux 下盘满,导致svn找不到临时目录存放文件所至.

然后我去装有SVN服务的LINUX机器上查看了一下磁盘空间:df -h

/dev/mapper/VolGroup00-LogVol00

18G 6.3G 11G 38% /

/dev/hda6 99M 12M 82M 13% /boot

tmpfs 248M 0 248M 0% /dev/shm

很显然,磁盘空间还有很多剩余,并非磁盘空间不足导致的。

然后继续谷歌,但查找了很久始终没有找到有效的解决方法:

如:查看下 /var/tmp和/tmp的权限是否正确,使用chmod -R 1777 /var/tmp 和 chmod -R 1777 /tmp 修改目录权限。

检测过权限没有问题,并也试用过上面的命令,但均告无效。

也试了一些网上谈到的其他方法,不过都没有得到解决,问题依旧。

找网上查找无门后,自己开始寻求其他途径,我想可能有以下原因导致问题:

1、端口问题,端口可能被占用。

2、SVN客户端版本问题。

刚开始试了下方法:我把我的SSH服务的端口从2002(早期时期改了2002)改为了22,然后试了下SVN更新,竟然突然好了,可以使用了。

我很高兴,以为是端口问题,可我就是想不明白端口为何会导致这样。 但是,过了10分钟左右,我使用SVN进行提交,又出现了之前的那个错误提示。 这下真是郁闷了。我又试着改了SSH端口号,但这次我怎么改都没用了。 这个方法最终我宣告放弃了。

我开始尝试第二个方法,我检测到自己的客户端版本不是与SVN服务对应的版本,然后我下载了对应的版本,安装,然后重启机器。

然后再SVN提交,但问题依旧。

本想这下拿它没折了,但意外的发现,这次提交失败的错误信息更加详细了,

Error:Can't find temporary directory

Error: C:/Documents and Settings/Administrator/Local Settings/Temp/tmpxxxxx internal error

提示的"find temporary directory" 这里的临时目录文件指向的路径竟然是客户端机器的目录地址。 这就是关键!

我根据提示信息发现C:/Documents and Settings/Administrator/Local Settings/Temp/这个目录是存在的。

但是为何它提示不存在? 暂时想不明白,先不管了。

我发现那个目录下全是临时文件,目录大小有350多M。看着不顺眼,想把里面的文件全清楚了,我Ctrl+a 然后 Shift+Delete,

本以为一下就能全删除了。 结果却是:无响应,试了多次,都是无响应。 仔细一想,明白了,那个目录下的文件太多了,全是1K大小左右的文件,至少3-5万个。 然后就是慢慢的把这些文件删除咯,随后 问题都解决了。

尽管,我的问题只是其中的一个小小部分,不过他这个解决思路还是可以参考下的 哈哈。

因为刚刚已经处理过 tmp 目录的权限问题了,这步就不尝试了, 直接去看下 新的tmp 目录权限。

chmod 777 /home/tmp

修改后 重新更新 提交,ok 没问题了

也可以在uberSVN 中正常处理 Repositories 了

好吧今天就记到这边,也算有点小收获 :-)
本文出自 “微所欲为——微生活” 博客,请务必保留此出处http://vsfor.blog.51cto.com/4165449/753949
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: