我最近将一个 CVS 存储库转换为 Mercurial。从外观上看,一切都很完美。除了每个行尾字符都是 Unix 风格,我希望它们是 Windows 风格。
我知道该hg convert
命令可用于将 Mercurial 存储库“转换”为 Mercurial 存储库。我可以用它在 repos 上什么都不做,但修复行尾吗?
它们如何存储在 repo 中并不是非常重要,因为您使用签出的工作目录进行实际工作,您可以在更新时使用以下任一扩展来控制其行尾:
此处提供更多详细信息:https ://www.mercurial-scm.org/wiki/EOLTranslationPlan
我认为没有一种简单的方法可以让 hg convert 做你想做的事情(没有编写插入 convert 代码的代码。不幸的是,由于广义模型 convert,convert 的 hg 到 hg 转换也不完全干净有。不过,如果您来自 CVS,这可能不是问题。
一种方法是使用任何工具来规范化行尾并在签出副本中的每个文件上运行它,然后提交每个文件。但这应该被认为是最后的解决方案,因为它会使历史“变脏”(文件似乎已被更改,而实际上并未更改)。