我有一些受版本控制的代码(使用 Mercurial),并且想分享其中的一些代码,同时隐藏我无法发布到公共领域的其他部分(至少在现阶段)。
理想情况下,我希望保持公共代码的修订历史记录完整,更重要的是,能够在公共存储库和包含公共和私有代码的存储库之间推/拉更改。但是,不应该能够从公共存储库历史记录中恢复任何私人信息。
从我到目前为止收集到的信息来看,应该可以使用以下命令提取公共内容hg convert http://mercurial.selenic.com/wiki/ConvertExtension with a filemap
并排除,尽管这会更改所有修订 ID 并排除两个存储库之间的任何交互。
为了完整起见,我想我应该补充一点,该存储库最初是从 cvs 转换而来的。
如有任何想法,将不胜感激
这并不总是实用,但如果您的存储库的公共部分可以限制(或移动到)当前存储库的子目录,那么您可以:
- 提取(例如,就像你提到的那样,hg convert http://mercurial.selenic.com/wiki/ConvertExtension)该子目录位于其自己的存储库中
- 将该新存储库引用为对于你的主要仓库。
然后您将管理两个存储库:
- 一个公共(其中仅包含公共文件)
- 一个私有的(将公共存储库作为子存储库引用)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)