我已升级到Ubuntu服务器10.04 - 但它删除了我一直用于分布式vc需求的SVK,因为我的旧项目仍然包含在各种服务器上的自托管subversion存储库中。这在我的各种系统之间暂时有效。我决定迁移到Bazaar,我已经在新项目中进行了评估。
我已安装 bzr-svn 插件以允许使用 svn-import - 并在/ var / bzr / repos /中成功设置存储库所有项目被导入到他们自己的集合中(使用自动检测到的trunk2布局)。 bzr log确认成功导入所有项目。
不幸的是,我的一些项目在工作文件夹中有几个未提交的更改 - 我想重新回到中央 / var / bzr / repos / projectname 存储库。我希望这些是在新导入的存储库之上进行的新修订。
我应该怎么做?
这些工作文件夹是/ var / www / projectname / htdocs - 有些在开发服务器上,有些在Windows笔记本电脑上(已安装了bazaar和subversion)
我尝试过运行bzr init和bzr merge file:// var / bzr / repos / projectname / trunk - 这会产生大量的冲突;或者我尝试过:bzr init; bzr add,和bzr merge。
在每种情况下,我都尝试从合并中删除新生成的文件 - 并重命名.moved文件,然后提交 - 这会导致修订号从1开始,然后向后运行到-301。另一个不同的结果是当我试图“bzr push”本地提交的更改备份时,完全丢失了日志历史记录。幸运的是,我每次都能够从原始的subversion源重置和重新导入存储库。
漫长的路径是简单地分支/签出到新文件夹,并对新的更改进行差异/重做,但我希望避免重新编码更改或运行kdiff目录合并操作。
期望的结果是将新更改应用到中央/ var / bzr / repos / projectname分支,同时保留修订号和日志。
答案 0 :(得分:0)
如果我理解正确,我会: 将.bzr目录从您想要的其他更改(主线/主要)基础上的.bzr目录复制到其他更改的workingdir中。 然后你可以在那里做一个bzr提交并将它推送到你的主线/主分支。 对每个工作树重复进行未提交的更改。
答案 1 :(得分:0)
如果您没有在bzr存储库上提交,则可以提交svn工作文件夹(因此将这些更改放在SVN存储库中),并使用bazaar重复svn-import操作。它只会添加缺少的修订版。