【发布时间】:2010-10-02 12:53:30
【问题描述】:
我们已经完全失去了我们的存储库,并且我们有 8 名开发人员进行了未提交的更改。假设无法从备份中恢复。
如果一个人可以访问所有工作副本(文件副本或远程共享),是否可以将我们工作副本中的更改合并到一个工作副本中?然后可以将最终的工作副本导入到新的存储库中。
简而言之,你可以在没有服务器的情况下合并两个不同的工作副本吗?
编辑:请不要因为没有备份而对我撒尿;那部分是我无法控制的。假设他们每晚都会备份。
跟进:这就是我们所做的:
- 从最新开始 所有开发人员的工作副本。
- 已将其导入新的存储库。
- 从最新的工作副本修订版到最旧的工作副本,仅复制到随后提交更改的文件中。
- 洗涤-漂洗-重复 6 次。 (2 个开发者没有未提交的更改)。
- 导出所有旧的工作副本,将它们拉上拉链并存储起来,以便在需要时妥善保管。
- 将发布管理数据库中的修订更新为现在非常年轻的存储库。
【问题讨论】:
-
当需要合并来自多个开发人员的工作时,我利用了 Git。 Git 非常擅长创建和合并分支。 git-svn 工作得很好。基本上,您在 SVN 中标记您“开始”的代码。使用 git-svn 基于该标签创建一个 git 存储库。复制您更改的文件。检查差异。提交更改。然后从 SVN 更新到最新版本(这会将 SVN 更改合并到本地更改中)。然后将您的更改推送回 SVN。一个 git repo 可用于执行多个合并和推送。雅各布