Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何组合SVN提交?_Svn - Fatal编程技术网

如何组合SVN提交?

如何组合SVN提交?,svn,Svn,如何在我的SVN存储库中获取一系列提交并将它们组合起来 例如,存储库中存在修订版4-10,我想将它们合并到一个新的修订版4中,其中包含先前4-10中的所有更改 我不想破坏任何通过svn copy创建的现有标记 这是因为存储库以前在ClearCase中,Polarion的迁移工具留下了大量需要清理的单个文件提交,这应该允许您运行一个本地存储库,然后立即向主存储库提交大量更改。如果不创建新存储库,您就无法做到这一点,所以最好还是放弃它 如果您真的需要这样做,您可以使用“svnadmin dump”和

如何在我的SVN存储库中获取一系列提交并将它们组合起来

例如,存储库中存在修订版4-10,我想将它们合并到一个新的修订版4中,其中包含先前4-10中的所有更改

我不想破坏任何通过svn copy创建的现有标记


这是因为存储库以前在ClearCase中,Polarion的迁移工具留下了大量需要清理的单个文件提交,这应该允许您运行一个本地存储库,然后立即向主存储库提交大量更改。

如果不创建新存储库,您就无法做到这一点,所以最好还是放弃它

如果您真的需要这样做,您可以使用“svnadmin dump”和“svnadmin load”来完成


编辑:如果您只是想将提交从主干的历史记录中推出来,但可以将它们保留在存储库的其他位置,那么类似于Manu的建议是一个可行的解决方案:将主干重命名为旧主干,在要合并到主干的范围之前复制修订,然后合并范围内的修订并提交。

如果确实需要,可以在修订3处创建分支,并将修订4-10合并到分支中,然后签出每个修订(而不是单个文件提交)从ClearCase,然后使用WinMerge等工具通过新的SVN签出手动复制文件,以确保所有文件添加和删除以及更改都被复制。然后执行SVN提交

如果由于CurraseCasts提交的数量太多而手动操作(尽管您可能不需要太多的自动化),那么请考虑手动修改对SN(例如,点发布)的主要修订。p>


如果这是不可行的,那么考虑不要从Cycase-带来任何修订历史——只要从SVN开始。出于历史目的,可能会提交一个带有ClearCase旧更改日志的文本文件,这样,如果有人需要返回并获取一些旧代码,他们就可以找出要查找的修订版本。

为什么要这样做?你想干什么?无论你真正想做什么,都可能有更好的方法。这种组合的优点是什么,目的是什么?这是因为以前的回购是在clearcase中进行的,polarion的迁移工具留下了大量需要清理的单个文件提交。IIRC你不能用svnadmin dump和load来做这件事,因为没有办法在转储中合并提交。可能需要做很多工作,但恐怕这是唯一或多或少干净的方法