Version control 使用不同的;“路径”;在Mercurial中,也称为分支

Version control 使用不同的;“路径”;在Mercurial中,也称为分支,version-control,mercurial,Version Control,Mercurial,在Mercurial中,有没有可能在不克隆我的项目的情况下从给定的点获得不同的开发“路径”?我目前有2-3个不同的项目实现选项,我想尝试一下。如果我可以使用一个,然后在任何时候返回并开始另一个“路径”,而不丢失旧路径的数据,那将是很好的,但我甚至不确定这是否可能 谢谢这正是分支设计的目的: 在Mercurial中创建分支的最简单的方法是简单地签出旧版本,然后使用与第一次提交后不同的内容再次提交。您不会丢失旧的以下提交,新的提交将简单地分支到一个新的开发行中,而原始的提交将保留在上一个开发行中。

在Mercurial中,有没有可能在不克隆我的项目的情况下从给定的点获得不同的开发“路径”?我目前有2-3个不同的项目实现选项,我想尝试一下。如果我可以使用一个,然后在任何时候返回并开始另一个“路径”,而不丢失旧路径的数据,那将是很好的,但我甚至不确定这是否可能


谢谢

这正是分支设计的目的:


在Mercurial中创建分支的最简单的方法是简单地签出旧版本,然后使用与第一次提交后不同的内容再次提交。您不会丢失旧的以下提交,新的提交将简单地分支到一个新的开发行中,而原始的提交将保留在上一个开发行中。

这正是分支设计的目的:


在Mercurial中创建分支的最简单的方法是简单地签出旧版本,然后使用与第一次提交后不同的内容再次提交。您不会丢失旧的后续提交,新的提交只会扩展到新的开发行,原始提交将保留在上一个开发行。

是的,您可能需要为此添加书签-它们是一种轻量级的方式,可以标记不同的头,而无需在修订版中永久记录名称(哪些分支可以。)有关更多详细信息,请参阅


可能也会有帮助-它本质上是Mercurial中有关分支机构管理策略的规范性文档。

是的,您可能需要为此设置书签-它们是一种轻量级的方式,可以标记不同的标题,而无需在修订版中永久记录名称(分支机构有)。有关更多详细信息,请参阅


可能也有帮助-它本质上是Mercurial中关于分支管理策略的规范性文档。

啊,我明白了。运行Repository Explorer时,是否有一种方法可以让它更直观地显示出来?我以前做过这件事,但在图表摘要中,所有内容看起来都是“连接”的,我认为它只是在某种程度上遵循了上一步“分支”。如果存储库资源管理器中显示了某些内容,那么它仍然是存储库的一部分。:)如果您尚未提交分歧代码,那么您将得到一个直截了当的图形。我创建了一个项目,然后进行了提交。我添加了一个打印行,并进行了另一个名为“branch1”的提交“。然后我恢复到初始提交,并进行了不同的打印ln,将其提交到“branch2”。我在这里遗漏了什么?当你说你“还原”到初始提交时,你是真的使用了“revert”命令,还是仅仅用“hg update 0”将你的工作目录更新回初始提交?所以你想要做的不是还原(因为它继续相同的分支),而是简单地
update
到旧版本(检查该提交)然后再进行操作,在之后提交-这将创建一个分支。还原实际上是在同一个分支中提交一个变更集,该变更集将撤消您的更改。啊,我明白了。在运行存储库资源管理器时,是否有一种方法可以使其更加直观?我以前已经这样做过,但在图表摘要中,所有内容看起来都是“连接的”我认为它只是在某种程度上遵循了最后一个“分支”。如果存储库资源管理器中出现了某些内容,那么它仍然是存储库的一部分。:)如果您尚未提交发散的代码,那么您将得到一个直截了当的图。我创建了一个项目,然后进行了提交。我添加了一个打印行,并提交了另一个名为“branch1”的提交。然后我返回到初始提交,并进行了不同的打印ln,将其提交到“branch2”。我在这里遗漏了什么?当你说你“还原”到初始提交时,你是真的使用了“revert”命令,还是仅仅用“hg update 0”将你的工作目录更新回初始提交?所以你想要做的不是还原(因为它继续相同的分支),而是简单地
update
到旧版本(签出提交)然后处理它,在之后提交-这将创建一个发散的分支。还原实际上是在同一分支中提交一个更改集,该更改集将撤消您的更改。