2010-10-12 59 views
5

希望這不是一個加載的問題。我是一位長期使用hg的用戶,它很好地滿足了我們的需求。最近我一直在和一位顧問一起工作,他一直在關於'管理多個回購和推/拉/合併他們比hg更容易'。更具體地說,我認爲他意味着將更改推向遠程回購更容易。對Git不太瞭解,我不想告訴他沒有太大的區別。我的印象是,在這兩個系統中,如果來自多個源的更改發生在同一個文件中,則推拉幾乎總是涉及合併。合併到Git中比在Mercurial中合併嗎?

任何人都可以幫助澄清他可能是什麼意思?在我開始考慮要求他擴展他所說的內容之前,他的合同就結束了。

PS我讀過這些比較,他們沒有具體討論我的問題:

Important Shock: Git vs. Mercurial, Please Relax

Rockstar Programmer : The differences between mercurial and git

Steve Losh: The real differences between mercurial and git

回答

3

我想在他的發言的關鍵詞,「管理幾個回購和推/拉/合併他們更容易,「是。在Git中,創建一系列「命名」遙控器非常簡單 - 您可以使用名稱引用遠程遙控器。從遠程引入分支也很容易,並將其保存在回購站中;這些分支實質上是以遠程名稱命名的,所以很容易將遠程分支分組在一起等等。換句話說,很容易跟蹤多個遠程回購,並從他們的變化拉入自己的回購。

我從v1.0開始就沒有使用過Mercurial,所以我不知道Mercurial現在是否可行;就我所知,這不是我最後一次檢查Mercurial。

+2

在mercurial中,您可以在'[paths]'部分添加命名路徑,並用'hg paths'列出它們。 Git人通常想要一種不使用文本編輯器的方式來添加它們,但在'.hg/hgrc'或'〜/ .hgrc'中添加一行可以正常工作。 – 2010-10-12 16:43:30

+0

您是否可以將指定遙控器的所有狀態(分支,標籤等)存儲在Hg回購中? – mipadi 2010-10-12 16:52:40

+0

@mipadi,請你舉個例子嗎?我不知道git,但我有一種感覺,你可以用最接近你的描述(也有一種感覺,它足夠接近,但我有偏見:)是克隆遠程回購,然後添加在你自己的回購庫的[[paths]下面的一個條目,指向你的克隆。你不能在一個單獨的hg repo AFAIK中保留遠離你自己的東西(我認爲這就是你說的git可以做的)。但是,是的,一個單獨的克隆將跟蹤所有遠程分支,標籤等。 – shambulator 2010-10-12 17:52:18