正如标题所说,这是我的版本化顺序。我使用的是乌龟SVN客户端。存储库是网络共享上的文件。
我有Trunk和Branch文件夹。
我从Branch签出,做了很多修改,然后又签回了Branch。
但是,由于不熟悉与Trunk的合并,我总是直接从Branch将我良好的项目代码发布到生产环境中。
上一次发布产品是在3个月前。修订版是380。
我的开发版本现在是400。
上周我不得不修复R380中的一些bug。所以我检查了R380,修复了错误并再次发布了它。
但是,我需要将所有代码都转移到开发版本R400,但我不想抹去我最后3个月的工作成果。
此外,在R400中有一些我无法签入的错误代码部分。谁能告诉我如何正确地完成这项工作?
我创建了一个修复错误的文件夹,并尝试将R380签入到该文件夹中,但SVN客户端不允许我使用SWITCH或RELOCATE。
它只允许我签入Branch文件夹。我担心如果我签入修改后的R380 to Branch文件夹,它会清除我的R400版本。谢谢。
发布于 2011-04-05 13:41:17
正如在"Subversion feature branch requires changes from another feature branch“中提到的,您只能将精确的修订范围合并回您的分支。
您可以从您在trunk中所做的修改中执行generate a patch。
如果需要,你可以首先从r380创建一个临时分支,删除你不想要的buggy部分,然后生成补丁,并将其应用于'Branch‘。
svn diff -r448:449 > ~/global.patch
patch -p0 < ~/global.patch(尽管问题"How to make svn diff produce file that patch would apply, when svn cp or svn mv was used?“报告了一些不起作用的情况,特别是当分支之间有属性更改时)
https://stackoverflow.com/questions/5545980
复制相似问题