用SVN管理代码出现的一些问题

问题1:SVN:This client is too old to work with working copy 错误

用TortoiseSVN上传代码后,用eclipse迁出时提示"The client is too old to work"错误。

查看TortoiseSVN的版本为:

TortoiseSVN 1.7.2, Build 22327 - 32 Bit , 2011/11/29 22:43:53
Subversion 1.7.2,
apr 1.4.5
apr-utils 1.3.12
neon 0.29.6
OpenSSL 1.0.0e 6 Sep 2011
zlib 1.2.5

安装的eclipse插件subeclipse的版本为1.6.x在网上搜索得知,两者版本不匹配会出现上面的错误。官网上注明(NOTICE部分)了,但是我没注意看。

Subclipse 1.4.x includes and requires Subversion 1.5.x client features and working copy format.

Subclipse 1.6.x includes and requires Subversion 1.6.x client features and working copy format.

Subclipse 1.8.x includes and requires Subversion 1.7.x client features and working copy format。

所以解决办法是安装匹配版本,本例中,我应该安装Subeclipse 1.8.x。


问题2:Incompatible JavaHL library loaded. 1.7.x or later required.

如果出现“JavaHL”错误时,注意检查是否安装好了JavaHL。wiki地址为:http://subclipse.tigris.org/wiki/JavaHL#head-3aade2af9917e233083d3a19446311d48c6f4ff7。windows下和linux下处理方式有些不一样。


问题3:安装上面的操作依然不可以checkout!

很无奈,太折腾了。现在弄清楚原因了。

原因如下:

我宿舍一台windows电脑,安装的是subversion1.7+subeclipse1.8.x;实验室的电脑是ubuntu,安装的是subversion1.6+subeclipse1.8.x。

我没想到的是ubuntu更新后安装的也还是svn1.6,通过svn --verison可以查看。问题就出在这里!我一直以为ubuntu里装的是最新版。更要命的是,如果你用svn1.7建的仓库,并上传了代码,那么用svn1.6是无法下载下来的!所以解决办法如下:

用svn1.6建仓库!windows上用svn1.7也可以checkout!

windows下配置为:subversion1.7+subeclipse1.8.x

ubuntu下配置为:subversion1.6+subeclipse1.6.x 【用低版本的建仓库,第一次传代码】


附录:如何将现有代码变为仓库?

1、在google code申请一个帐号,完成后会得到一个svn的地址。此外,密码是随机生成的,需要得到。

2、进入工程文件夹,用RabbitSvn或者TortoiseSvn的commit(提交)命令将该文件夹提交上去。注意:此时代码并未上传,仅仅在文件夹下生成了一个.svn的文件夹,表示这个目录下有新的文件处于添加状态(刷新后显示"+"号)。

3、在eclipse中已经安装好subeclipse插件,刷新工程文件,会看到所有文件显示+号。

4、右键工程->Team->commit(提交),选择要上传的代码即可!


问题4:Commit后提示以下错误,无法提交成功!

命令行下,提示 "svn: Commit failed (details follow): svn: '/***/xxx.c' is scheduled for addition, but is missing"
用RabbitSVN,图形界面下提示 "/xxx/xxx.c is not a working copy"

原因:之前用SVN提交过的文件,被标记为"add"状态,等待被加入到仓库。若此时你把这个文件删除了,SVN提交的时候还是会尝试提交这个文件,虽然它的状态已经是 "missing"了。

解决:在命令行下用 "svn revert xxx.c",在图形界面下,右键--Revert,选中那个文件。这样就告诉SVN把这个文件退回到之前的状态 "unversioned",也就是不对这个文件做任何修改


ubuntu 安装rabbitSVN的方法,记录如下:

先下载一个包http://code.google.com/p/rabbitvcs/downloads/detail?name=rabbitvcs-0.15.0.5.tar.bz2&can=2&q=
解压并打开一个终端,输入cd ~/Download/rabbitvcs-0.15.0.5/

然后再运行:

sudo python setup.py install --install-layout=deb

sudo cp ./clients/nautilus-3.0/RabbitVCS.py /usr/share/nautilus-python/extensions

nautilus -q

pgrep -f service.py | xargs kill

nohup nautilus > /dev/null &

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SVN(Subversion)是一种版本控制系统,用于管理代码的变更历史。下面是使用SVN管理代码的一般步骤: 1. 安装SVN服务器:首先,你需要安装SVN服务器,并进行配置。可以选择使用独立的SVN服务器软件,如CollabNet SVN或VisualSVN Server,也可以使用SVN集成到其他版本控制软件中。 2. 创建代码仓库:在SVN服务器上创建一个代码仓库,这是存储代码和变更历史的地方。 3. 检出代码:在本地计算机上使用SVN客户端工具,如TortoiseSVN(Windows平台)或命令行工具svn(跨平台),从服务器上检出代码仓库到本地。 4. 进行代码修改:在本地进行代码的修改、添加和删除等操作。你可以根据需要创建不同的分支或标签来组织代码。 5. 提交代码变更:当你完成了代码的修改,使用SVN客户端将变更提交到SVN服务器上的代码仓库中。这样就记录下你的代码变更历史。 6. 更新代码:当其他人对代码进行了修改并提交到SVN服务器上时,你可以使用SVN客户端工具更新你本地的代码,以获取最新版本的代码。 7. 解决冲突:在多人合作开发中,有时出现代码冲突,即多个人对同一文件的同一部分进行了修改。在更新代码时,SVN尝试自动合并代码,但如果出现冲突,你需要手动解决冲突。 8. 查看历史记录:使用SVN客户端可以查看代码的变更历史记录,包括每个变更的作者、时间戳和变更的说明等信息。 以上是使用SVN进行代码管理的一般流程,希望对你有所帮助。如果有具体的问题或需求,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值