簡體   English   中英

用補丁維護Hg存儲庫的Git Fork

[英]Maintaining Git Fork of Hg Repository with Patches

我正在維護帶有一些其他補丁的hg存儲庫的git fork。 這意味着,我已經克隆了汞庫,然后推該庫以下面一個Git倉庫這些方向

然后,我克隆了git存儲庫,應用了一些提交,然后將這些提交推送到git存儲庫。

我的歷史記錄如下:

hg-head\      /git-head
    A-B-C-F'-G'

F'G'是我的補丁。

hg開發人員現在將一些補丁推送到hg倉庫,我想將這些更改合並到我的fork中。 我想這樣做,以保持汞史完整。 換句話說,我希望我在git中的最終歷史看起來像:

hg-head\        /git-head
    A-B-C-E-F'-G'

其中E是對hg的新提交。

在git的術語來說,這個會說“我要rebase我的主分支到原點/主”。

我的問題是我應該在hg和/或git中執行哪些命令來實現此目的?

  • 如果您沒有將(補丁)從Git拉到本地HG-repo,您​​在HG端將無能為力
  • 如果從Git中拉出,則從上游存儲庫中拉出E后,您將在本地存儲庫中獲得其他頭(“匿名分支”)。 為了線性化歷史記錄(如果需要,而“調解員”不需要它),您將在Mercurial中使用相同的(按名稱)命令: hg rebase

只需注意 :您可以簡化工作流程,如果您嘗試使用Git中的Mercurial橋 (現在是Git的一部分)代替中間的HG節點,以便從Git直接訪問上游Mercurial存儲庫

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM