在mercurial中如何拉?

In mercurial how to pull?

我通过以下命令从 bitbucket 中克隆了一个分支名称 abc 到我的本地:

$ hg clone -b abc https://bitbucket.org/asda/da/

接下来我从 abc 分支创建了一个名为 xyz 的分支,它是我的工作分支。

$ hg branch <branch name>

现在我的问题是我可以通过以下命令直接将更改从远程 abc 拉到本地 xyz:

$ hg pull -b abc
$ hg update

我总是结账到 abc 分支,然后提取更改。当我拉动更改时,没有任何变化关于 this.After 拉动它显示更改的文件总数。但看不到更改。

另一个问题是,如果我在分支 abc 上拉取更改,并且当我结帐 xyz 分支时,所有更改都会在 xyz 自动分支?

请帮帮我。

画出树枝。当您提取新的变更集时,它们 总是 添加到同一个分支,并以相同的顺序添加到它们在上游存储库中占据的位置。换句话说,当您从 abc 拉取时,您扩展了 abc。拉之前不需要切换到abc,拉之后也不需要更新

a--a--a--a--a1--a2
          \
           x--x--x

(a = 分支 abca1,a2 = abc 上的新变更集;x = 分支 xyz)

您拉取的新变更集对分支的顶端没有影响xyz。要在您的分支中从中受益,请使用命令 merge.

hg update xyz
hg merge a2
hg commit

然后您将到达点 X',xyz 的新提示。

a--a--a--a---a1---a2
          \        \
           x--x--x--X'