2016-12-01 63 views
1

我是善變的滿意用戶,我想用它在github上一些回購工作。我已經安裝了hg-git(仍然有連接問題,但是這不是問題),並看了看文檔和各種questions這裏SO,但我仍然不確定如何完整的解決方案提供。使用水銀與HG-混帳作爲github上的客戶端

  1. 是混帳/ github上爲其hg + hg-git支持是不可用的,有限的,或容易發生問題的存在重要的特點?我使用分支和合並,標籤,偶爾使用mercurial的commit --amend命令。我並不需要書籤,subrepos,自定義鉤子或mercurial補丁隊列。

  2. 由於githg的分支模型不同,是否存在問題或限制? (This六歲的問題表明,這是一個低於當時無縫的體驗。)

  3. hg-git現場我讀的「從理論上講,變更ID應該不會改變[在汞 - >混帳 - > hg轉換],雖然這可能不適用於複雜的歷史。「我應該對此有多擔心?如果我只是在github和單個hg回購之間同步(雙向),會發生這種情況嗎?

我在看兩個用例:

A)使用hg作爲github上的客戶提供大十歲上下的項目,有很多分支,即通常由git的用戶開發(master分支,等)

B)使用github主辦,我與善變的發展我自己的(小)項目。

我不期待100%的完全替代。我有和使用git,我只是喜歡每天與hg一起工作。如果這很重要,我會在OS X上完成大部分工作。

回答

1
  1. hg-git的使用有限制,如git-lfs。使用大型文件的存儲庫不起作用。有一些角落案例,如章魚合併(與兩個以上的祖先合併),這將在Mercurial方面造成麻煩,並且它們在Mercurial中也沒有等效。但是在日常工作中,很少遇到這些限制。在大多數情況下,hg-git只會工作得很好。
  2. 水銀分支機構不能正確地反映到Git的作爲Git並不具有相同的概念。我認爲hg-git是將分支映射到書籤,所以你應該繼續使用書籤。如果你想將一個命名分支推送到一個git倉庫,然後在git端重命名,你不能重命名Mercurial中的命名分支,所以避免命名分支。
  3. 在你的情況下,它很可能會很好。 hg-> git-> hg錯誤是由於例如名稱分支的轉換,失蹤章魚合併等