被svn给搞死了 2009-11-21 02:45:22 | 0个评论

今天被svn给搞晕了。需要merge一个东西,就是把branch里的东西merge回trunk中;原来以为是很简单的一个事情,跟把trunk merge到branch一样,直接用svn merge -r N:M http://host/code/branches/branch就可以了。于是一晚上都在折腾这东西,一方面也要拜托beijing网络之慢,merge一次基本就要花上半个多小时,然后最终报了一个"svn: Attempt to add tree conflict that already exists
svn: Error reading spooled REPORT request response"

的错误,连续多次都是这样,最终崩溃;转用windows,Tortoise Svn同样不好用,给我merge了好多不该merge的修改...最终不得已,向大牛eden求救,15分钟把我的一晚上的commit全部revert,并且重新merge成功。幸而把我解脱了。

哎,只怪我开始没有仔细阅读svn merge的用法;只需google一下,再用下脑子,就会发现一开始的svn merge被我错用了。

svn merge有两种用法:

svn merge sourceURL1[@N] sourceURL2[@M] [WCPATH]
svn merge -r N:M SOURCE [PATH]

我要把branch merge过来,就应该使用第一种;因为conflict 基本已经解决,只需比较当前trunk的版本与branch当前的版本,把不同之处merge过来就可以了;当然,这里,branch要是更trunk同步好的最新的;第二种用法则是将source中N到M版本的变化merge到当前目录下来,适用于trunk到branch的merge。

悲哀啊,害我这么晚还没睡,还饿了一晚上。哭。算了,只怪我自己办事不利,不懂利用google这种强大无比的工具。吃一堑长一智,记着了。

添加评论
分类
  • Linux相关

    linux菜鸟,不断学习中……

  • Web技术相关

    ruby, python, javascript, css...

  • windows相关

    windows下面的一些东西...为了玩游戏,没办法

  • 人生感悟

    人生就是放屁。低调做人,不做臭屁,不做响屁。

  • 模式识别

    现在做什么都要模式识别。

  • 游戏

    dota...我现在只玩dota。当然,如果三国杀也算的话,那就也包括了。

  • 网站点评

    把这个类别加进来了,但不知道会不会真的写,不管,先写上再说。