Svn 如何使用Subversion进行分支
我正试图用Subversion做一个分支。书中描述的方法不起作用。我发现了,但它只是反映了这本书。这项技术失败了。也许我做错了什么 我使用工作目录中的Svn 如何使用Subversion进行分支,svn,Svn,我正试图用Subversion做一个分支。书中描述的方法不起作用。我发现了,但它只是反映了这本书。这项技术失败了。也许我做错了什么 我使用工作目录中的svn copy命令创建分支: svn copy https://server.com/svn/iRP85_V2/trunk https://server.com/svn/iERP85_V2/branches/backlog -m "comment" 这似乎奏效了。然后按照说明,我使用checkout命令更改工作副本中的代码: svn check
svn copy
命令创建分支:
svn copy https://server.com/svn/iRP85_V2/trunk https://server.com/svn/iERP85_V2/branches/backlog -m "comment"
这似乎奏效了。然后按照说明,我使用checkout
命令更改工作副本中的代码:
svn checkout https://server.com/svn/iERP85_V2/branches/backlog
它看起来像是复制了所有东西,但我不确定它到底在做什么。我进行了更改,然后进行另一次签出:
svn checkout https://server.com/svn/iERP85_V2/trunk
但是没有零钱我是拿不到原件的。我得到了相同的代码。如果我再次从分支机构签出,我会再次得到相同的代码
通过发出svn info
命令,我看到无论我传递什么到签出,我总是在主干中。这个命令显然不符合这本书的意思。它不会更改工作目录的源。它甚至不会从参数中指定的目标替换工作目录中的模块。它有什么作用
然后我进一步看了看,看到了switch命令,所以我尝试了以下方法:
svn switch https://server.com/svn/iERP85_V2/branches/backlog
我得到一个错误:
svn:E155025:“”
与存储库不同
''
如果我发出两个info命令,则存储库id相同
G:\Code\intential Projects\Projects>svn info路径:
工作副本根路径:G:\Code\intential Projects\Projects
URL:
存储库根:
存储库UUID:b4595441-a089-b54f-bc08-6f65ce278a35
修订:48
节点类型:目录
日程安排:正常
上次更改作者:JohnM
上次更改版本:48
最后更改日期:2013-05-16 13:35:06-0400(2013年5月16日星期四)
G:\Code\intential Projects\Projects>svn info
路径:待办事项
URL:
存储库根:
存储库UUID:b4595441-a089-b54f-bc08-6f65ce278a35
修订:57
节点类型:目录
上次更改作者:JohnM
上次更改版本:57
最后更改日期:2013-05-20 13:00:38-0400(2013年5月20日星期一)
我甚至删除了分支并重新创建它,以防我做了什么,但我得到了相同的结果
我一直在开发主干,希望使用分支功能。特别是当发现bug时,我必须告诉人们他们必须等待,或者有选择地选择要投入生产的模块。您尝试如何做到这一点的原则看起来是正确的。看来你只是被一些细节绊倒了。如果不能访问您的存储库和硬盘,或者输入更详细的命令,很难说您做错了什么 第一个想法:创建新分支后,是否尝试签出到旧签出所在的目录?那不行。您必须签出到其他地方,或者使用“svn开关”更改当前工作副本以查看新分支
开关出现的问题表明您没有指向您认为是的存储库。vm006.corp.rotair.com是另一个存储库,还是您的本地机器,还是什么?首先,我要感谢大家的帮助。问题似乎是“v”。使用iERP85_V2对副本有效。Visual SVN还报告iERP85_V2。但是,switch命令仅适用于iERP85_v2。没有两个存储库,只有一个。svn服务器将其显示为V2,svn info将其显示为V2。这是一个对用户非常不友好的工具:)
再次感谢不要使用
签出
从主干切换到分支--使用svn开关
。在签入更改之前,请使用svn info
确保您的工作树确实位于分支上。在您进行更改之前,我们将从中获得svn info
输出,我们不知道您是否真的成功地更改了分支。至于声称由于存储库ID不匹配而无法切换的系统,请在切换过程中使用相对URL来模拟这方面的任何可能性:svn switch'^iERP85\u V2/branchs/backlog'
,而不是完整的URL。您描述问题的方式,似乎您还没有完全了解SVN分支的工作方式。(尤其是分支中的更改必须合并到主干中才能显示在那里)。我建议你多读一些。@Charles-谢谢你的回复。我甚至不能让我的工作目录指向分支。我尝试了以下三种语句:G:\Code\intential Projects\Projects>svn开关^iERP85\u V2/branchs/backlog svn:E125002:“iERP85\u V2/branchs/backlog”似乎不是URL G:\Code\intential Projects\Projects>svn开关“^iERP85\u V2/branchs/backlog”svn:E125002:“^iERP85\u V2/branchs/backlog”似乎不是URL G:\Code\inuitive Projects\Projects>svn开关“^iERP85\u V2/branchs/backlog”svn:E125002:“iERP85\u V2/branchs/backlog”似乎不是URLURL@mad-我不想在分支到主干之间进行任何更改。我正在尝试编辑一个分支。这就是全部。你描述的步骤都是在我无法通过的步骤之后。你是对的,我不明白这是怎么回事。关于分支和合并的部分我已经读了两遍。再读一遍也无济于事。我按照指示做了,但还是失败了。去年我尝试过这个方法,但因为它不起作用而不得不放弃。我删除了大多数声明中的服务器名称,因为我认为在公共论坛上发布服务器名称是不明智的。你指出的那个是我错过的。我在每一条语句中都显式地命名服务器,但它们并不存在于我的本地计算机上。这里还有别的问题。我可能没有指向存储库,我想我是这样的,那么如果显式命名它不起作用,我如何将它放到那里呢?啊,这是一个骗局。旁注:可能是他