我如何开始使用Mercurial?

时间:2011-07-11 02:02:55

标签: version-control mercurial

我有一个关于Mercurial的新手问题。

我和一位朋友刚刚开始合作完成一个项目。我们使用BitBucket。

但是我们怎样才能以良好的方式使用mercurial和BitBucket?我的意思是,如果我编辑文件而我的朋友编辑同一个文件?每次提交后,我们如何更新我们当地的工作回购?

3 个答案:

答案 0 :(得分:2)

您应该能够将远程更改拉入本地存储库。请参阅Pulling Changes into a Bitbucket Repository作为实际执行方式的起点。

答案 1 :(得分:1)

每次提交后,您的本地工作回购都会更新。 如果您希望反映本地工作仓库中的(一组)更改 在中央或主回购中,你应该使用hg push

如果您想从主仓库获取朋友的更新,您应该使用hg pull。

可能的做法是:

在本地工作之前

hg pull
hg update
在本地进行更改后

hg commit

当您确定希望其他人看到您的更改时

hg push

答案 2 :(得分:0)

您将能够每个克隆存储库,在本地工作并重新合并。但是,您应该遵循这一过程以取得成功:

在开始任何新事物之前:

hg pull -u

在一个命令中执行pull和update操作。

做你的工作:

hg commit -m "Some commit message"

如果您现在想要将更改推送到远程仓库,则需要先检查是否有任何传入更改:

hg incoming

这将为您提供有关传入提交的一些信息,但不会删除任何内容。

hg pull
hg merge

这将提取更改并将您的提交与刚下拉的提交合并。由于这是另一个更改(合并操作),您需要另一个:

hg commit -m "Merged my changes with remote"
hg push

最后,推送会将更改推送到远程仓库。

我建议阅读Hg Book,这将深入研究指定要合并的修订版本的更复杂主题(例如,使用hg merge -r12345)。