我一直在阅读有关mercurial标签的内容。我通常可以看到,我们标记了一个变更集来标记一个发布点,这些标签也是受版本控制的。
但我真的不明白拥有.hgtags
文件的想法。这个文件的目的是什么?
答案 0 :(得分:5)
拥有.hgtags
文件允许使用与记录所有其他文件更改相同的格式记录对.hgtags
文件的更改。它还允许以与传输文件更改相同的格式在存储库之间传输标记。
这允许Mercurial实现一个用于存储对目录的更改的系统,以及一个用于将一堆更改传输到目录并在传输文件更改时自动处理分支和标记信息的协议。
它还允许用户通过查看.hgtags
文件的历史记录来查看项目标记的历史记录。
答案 1 :(得分:0)
两个相关存储库中的标记名称可能存在冲突。
E.G。标签A可以在变更集ID X上的一个repo点中,并且在另一个repo中,相同的标签可以指向变更集ID Y.在合并期间,必须解决该冲突。
合并期间的冲突通过检查文件和相关修改来解决。
因此,标签必须存储在仓库中的普通文件中。
答案 2 :(得分:0)
我实际上看不到任何用于拥有单独标签文件的用法。应使用“log”命令很好地查看存储库历史记录(包括标记)。拥有标签文件也会破坏一个重要规则:严格与版本控制系统相关的更改不应以任何方式更改存储库。