有公共回購mercurial(不是我的)。它包含兩個subrepos。我已經爲主repo和兩個subrepos做了一個分支。我想不時創建pull請求,但我無法使subrepos正常工作。 當我克隆我的分叉回購,它將被下載,但兩個subrepos將保持原來的,不是我的分叉。如果我將它們替換爲分叉,我將無法提出請求,因爲我不想將原始倉庫切換到我的子倉庫。但是我想改變回購和subrepo。 一旦我找到了解決方案。我修改了subrepo的.hg文件夾中的hgrc文件。TortoiseHG,叉與subrepos - 強制提交和推.hgsubstate只有
It was:
[paths]
default = ssh://[email protected]/originator/subrepo
它變成:
[paths]
Me = ssh://[email protected]/Me/subrepo
Original = ssh://[email protected]/originator/subrepo
這是工作,正是因爲它應該。我更改了代碼,推送到我的subrepo,爲subrepo創建了請求。然後,我推動了我的主要回購協議中的更改,並且它很簡單。 .hgsubstate現在正在嘗試在分叉的repo上存在,但不是原始的。當orignator將megre都拉請求,一切都會工作。
我說過,它以前有效,但不是現在。出於某種奇怪的原因,我不能只推送指向分叉子文件夾中存在的新子版本修訂的.hgsubstate。我根本無法將它包含在提交中。我點擊「提交」,但在結果提交它不包括在內。我不知道如何強制包括 - HG太「聰明」了。另外TortoiseHG將我的subrepo標記爲髒。但是,如果我嘗試添加.hgsubstate和我的髒回購,它出於某種原因試圖將更改推送到發件人的回購。看起來像我的HG不能提交.hgsubstate而不會將更改推送到subrepo本身。 有什麼辦法解決這個問題?我想要的一切就是提交併推送.hgsubstate而不做其他任何事情。
這將幫助我使用我的回購,但它不是一個現實問題。問題是,如果我修改.hgsub,修改後的版本將在拉取請求中提供。這是一個問題 - 我不能只修改.hgsub。 –