0

我很难进入 Mercurial,即使查看了几个指南/教程。(我一看到命令行参数就惊慌失措并没有帮助)。如果有人可以帮助我解决这些非常基本的问题,我将不胜感激:/

我想做什么: - 获取现有项目的副本。(我现在将此副本称为“我的”项目,将现有项目称为“主”项目)。- 然后,对我现在的项目进行更改。我不会上传到主项目,但是,如果主项目有变化,我希望将它们集成到我的项目中。- 我希望能够在多台计算机上处​​理我的项目,所以它不能只是在本地。- 我猜是这张照片:我想在不同的计算机上用“我的”代码(绿色版本)做各种各样的事情,同时仍然可以访问红色版本。最好是没有其他人可以访问我的绿色版本。

分支示例

我认为我应该做什么: - 从现有项目中克隆。我应该能够将以后的更新集成到我的分支中,对吧?- 以某种方式将克隆保存在某个地方,它仍然知道它与主项目相关......

TL;DR:我想我的问题是:如何创建一个仍然可以接收更新的在线分支?

4

1 回答 1

2

在不同的克隆中工作

首先创建功能克隆并进行一些更改

$ hg clone project feature1
$ cd feature1
$ hg update 3
$ echo 'print("Hello feature1")' > hello.py
$ hg commit -m "Greet feature1"

现在检查当你从 feature1 拉取时会出现什么,就像你可以在提交之前使用 diff 一样。拉动的相应命令传入

$ cd ../project
$ hg incoming ../feature1

注意:如果您想查看差异,您可以使用 hg incoming --patch 就像使用 hg log --patch 一样查看存储库中的更改。

如果您喜欢这些更改,请将它们拉入项目中

$ hg pull ../feature1

编辑:

在 Mercurial 中,每个存储库都是独立的。当您克隆存储库时,新存储库将成为克隆时现有存储库的精确副本,但是除非您通过拉取或推送显式传输它们,否则其中任何一个的后续更改都不会显示在另一个中。

来自 mercurial guide

于 2012-08-30T09:05:01.537 回答