Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mercurial 通过克隆进行分支-我必须对默认值进行修改才能看到分支吗?_Mercurial - Fatal编程技术网

Mercurial 通过克隆进行分支-我必须对默认值进行修改才能看到分支吗?

Mercurial 通过克隆进行分支-我必须对默认值进行修改才能看到分支吗?,mercurial,Mercurial,我来自CVS的背景 我试图通过克隆来执行分支 当前的默认树与helloproject中的类似。 我尝试将一个项目从“hello”克隆到“hello branch by clone” 我对“hello branch by clone”进行了修改并提交 我没有对“你好”做任何修改 我执行从“克隆hello分支”到“hello”的推送 我希望看到一个分支,但我没有 这一次,我尝试了另一种方法 我对“hello branch by clone”进行了修改并提交 我对“hello”和“commit

我来自CVS的背景

我试图通过克隆来执行分支

当前的默认树与
hello
project中的类似。


  • 我尝试将一个项目从“hello”克隆到“hello branch by clone”
  • 我对“hello branch by clone”进行了修改并提交
  • 我没有对“你好”做任何修改
  • 我执行从“克隆hello分支”到“hello”的推送
  • 我希望看到一个分支,但我没有


    这一次,我尝试了另一种方法

  • 我对“hello branch by clone”进行了修改并提交
  • 我对“hello”和“commit”进行了修改
  • 我需要从“hello”拉到“hello branch by clone”,然后合并
  • 我执行从“克隆hello分支”到“hello”的推送
  • 这一次,只有我能看到分支



    通过应用克隆技术,是否有任何方法可以让我拥有一个分支视图,而不必显式修改默认存储库(
    hello

    因为没有两个变更集共享一个父变更集,所以没有fork

    克隆存储库在任何方面都不是特别的。它和原来的一模一样。对其的承诺与原始回购协议中的承诺相同。它们在概念上没有被标记为在树枝上。克隆只是拥有另一个工作区的好方法,您可以在不影响原始工作区的情况下执行某些工作(包括提交)

    当两个或多个提交具有相同的父级时,会发生分叉。通常在使用克隆时会发生这种情况,但可能不会。如果只有一个变更集具有相同的父项,则不存在fork

    在您的第一个序列之后,您只引入了一个变更集(4),它将旧的提示(3)作为其父项,因此它仍然是一条直线。只有在引入第二个变更集(3)时,您才会看到一个fork

    现在请记住,即使您“推”回变更集,并且原始的“Hello”repo包含所有4个变更集,它的工作目录仍然指向变更集(3)。它将一直保持这种状态,直到您在其中运行“hg update”。这意味着,如果要在“Hello”中进行提交,它将基于(3),然后将出现一个fork。什么时候做出这个承诺并不重要

    这就是你在第二个序列中所做的

    希望有帮助



    我在这里尝试使用“fork”一词,因为“branch”有很多含义,包括“hg branch”命令,它做一些稍微不同的事情。

    你说的“在一个单独的分支上”是什么意思?在标记为“修改主干”的提交之后只有一个提交,因此您的GUI客户端正确地显示了所有内容。你是说你想要一个有名字的分支吗?您能否绘制或指示输出的预期外观?只有在主存储库中有克隆中没有的变更集时,您才会看到。除非你有平行的分支,否则你不会看到像那样的分叉路径。既然你没有,历史就一直在向上发展。