我工作的Java中有一个项目。
要在 Mercurial 中拥有该项目,我知道我必须为所有类创建一个存储库。
由于有很多类,我想如果我可以拥有一个由存储库副本加上我必须做的修改组成的 jar 副本。
所以用 Mercurial 术语来说有:
- 一个包含所有类的主仓库
- 一个带有修改和新类的小仓库
我想从 B 回购合并到 A 回购。然后我只想提取和更新 B 存储库中存在的类 (*.java)。
我试过这个没有成功:
- 要创建 B 存储库,我克隆 A 存储库并删除所有文件。
- 当我必须修改 .java 时,我会
wget
在我的本地机器中的 mercurial 服务器上执行特定文件。当文件是新文件时,我只运行 hg add。 - 为了完成我
hg commit -I file1 -i file2 ... -i fileN
对 B repo 工作文件夹中存在的所有文件的提交。
然后是不成功的部分:
- 我不能只对现有文件进行 hg 更新。
- 当 B 存储库合并到 A 存储库时,一切正常。但是我不能运行带有
-I
参数的合并状态的 hg commit。它的全部或全部。 - 当我从 A repo 中提取并尝试更新时,我遇到了同样的问题 4。
我知道hg pull -f
从 B 回购的不相关回购开始,而不是克隆。但它有同样的更新问题。而且看起来很丑。
我认为移植插件可能会有所帮助。我还阅读了如何在 Mercurial 中结合两个项目?.
必须在 A Repo 中保留文件的历史记录,即使此历史记录是在 B Repo 中生成的。
您知道实现这一目标的最佳方法吗?
谢谢