布拉斯科
我发现了同样的问题。我想更改文件并在需要时合并它们,而不是等待其他开发人员解锁它。对我有用的解决方案是:
1)获取一个VSS项目的最新版本(我把所有VSS项目都放在vss下):
c:\vss\projectA
2A) 使用 Mercurial 初始化
cd vss\projectA
C:\vss\projectA>hg init
2B)将项目克隆到可以随意更改的地方
hg clone vss\projectA myProjects\projectA
3) 从 VSS 副本中获取最新更改(如果您来自 1 和 2,请跳过)
C:\myProjects\projectA>hg pull
C:\myProjects\projectA>hg update
(solve conflicts if any)
4) 随意使用克隆版本。稍后,将您的工作推送到 vss 副本:
C:\myProjects\projectA>hg push
(don't run hg update yet, wait for VSS latestes version)
5) 现在,将所有文件签出到 VSS 项目
6) 在 VSS 项目上运行“hg update”以将您的更改合并到最新的 VSS 更改。
C:\vss\projectA>hg update
(if there are conflicts, resolve them)
7) 提交更改
C:\vss\projectA>hg commit
8) 执行 VSS 签入(将锁释放给其他人)返回第 3 步。然后永远重复第 3-8 步... ;-)
通过这种方式,您可以使用良好的版本控制系统,同时仍然能够与遗留项目“对话”。您还可以享受:a)锁定文件没问题 b)您可以与知道如何使用 Hg 的其他人共享您的存储库 c)制作分支等
请注意首先更新/解决冲突,测试然后执行 VSS 签入
干杯,路易斯