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,是的,我在谷歌上搜索过,找不到这个问题的答案 首先,我的团队和我都是hg、bitbucket等的noobs。我们的第一个任务是将我们的名字添加到read.txt上,每个成员都在自己的机器上完成。现在,我们所有人都添加了名称,主回购协议已更新为我们所有的名称 我自己的回购协议是主回购协议的分支。它只有一些名字,因为我是第一个添加名字的人。当我从主回购中提取时,它要求我使用“hg update”,这会用所有名称更新我的本地文件 我的问题是: 我的本地文件与主回购相同,但我的分叉回购不同。我试图将更新

是的,我在谷歌上搜索过,找不到这个问题的答案

首先,我的团队和我都是hg、bitbucket等的noobs。我们的第一个任务是将我们的名字添加到read.txt上,每个成员都在自己的机器上完成。现在,我们所有人都添加了名称,主回购协议已更新为我们所有的名称

我自己的回购协议是主回购协议的分支。它只有一些名字,因为我是第一个添加名字的人。当我从主回购中提取时,它要求我使用“hg update”,这会用所有名称更新我的本地文件

我的问题是:

我的本地文件与主回购相同,但我的分叉回购不同。我试图将更新后的更改推送到我的回购协议中,但它显示“未发现任何更改”


从主回购中提取变更,然后将其推送到我自己的回购中的正确方式是什么?

当您提取变更时,它会将变更推送到您的本地回购中
hg update
更新工作副本(您编辑的文件,而不是repo,这些更改在您的repo中已经存在,因为您提取了它们)

因此,一旦你将更改(提交给本地回购协议)并更新了工作副本(提交给本地回购协议),就没什么可做的了

您通常不需要将更改推送到本地回购协议(从其他回购协议推送更改除外)。你在回购之间推波助澜

如果您在工作副本中编辑了某些内容,则可以提交它

一般来说,你:

  • 使用
    hg pull…
  • 使用hg update更新本地回购协议
  • 更改工作副本中的某些内容
  • 使用
    hg commit…
  • 使用
    hg push…
  • 还要注意,推和拉是对称操作。

    跟进soulcheck

    • 您的推拉操作是回购方
    • 您可以从本地repo更新工作副本(可以看到的文件)
    • 您将自己的更改提交到本地回购
    使用
    hg fetch
    hg pull-u
    而不是普通的
    hg pull
    可以更快地获取工作副本中的远程数据