我有什麼似乎是一個獨特的情況。我需要一箇中央Mercurial存儲庫,它可以從Subversion服務器獲取,其克隆也可以從同一個Subversion服務器獲取更新。這些更新將會通過Mercurial提交給Mercurial存儲庫以及提交的更改。如何克隆hgsubversion庫並保留Subversion版本信息?
現在,hgsubversion 似乎首先運行良好,克隆Subversion存儲庫,允許我通過Mercurial提交更改,並正確地從Subversion存儲庫中提取更新。但是,當我克隆hgsubversion存儲庫時,克隆會嘗試重新整個Subversion存儲庫,儘管它已經存在於存儲庫中。
有沒有辦法解決這個問題?有沒有更好的方法來設置它?
僅供參考,我當前的設置是存儲在Mercurial存儲庫中的Subversion存儲庫。 Mercurial提交也提交了.svn文件夾,因此克隆存儲庫的任何人都可以簡單地在該文件夾上運行SVN Cleanup,然後SVN Update從Subversion服務器獲取最新文件。然後他們運行hg Commit,然後將文件推送到中央Mercurial存儲庫。這工作適度,但我更喜歡找到更好的解決方案。
注意:我不需要將更改推回到Subversion服務器。我只需要改變。
對不起,我不明白你的答案。克隆的hgsubversion存儲庫再次拉動整個SVN存儲庫,通過版本修訂,不會浪費很多時間,_and_會導致一個_huge_新頭。我們正在做的事情是不能接受的。中央存儲庫正確地只提取所需的修訂版。我也需要這種行爲與存儲庫的克隆。 – Josh
另外,雖然我同情你對SVN/Mercurial設置的響應,但我發現這是我需要的唯一解決方案:克隆也可從SVN存儲庫中提取的Mercurial存儲庫的能力。 Mercurial克隆_必須能夠從SVN存儲庫中提取。如果你有更好的解決方案,我非常樂於接受建議。 – Josh
@Josh - 好吧,我會在一段時間後測試你的設置(現在必須在我最喜歡的廚房上工作)。但我還是不明白兩件事:1。爲什麼你(想要)從克隆中提取SVN-repo,*如果* svn-revision已經在中央Mercurial repo上,這是所有克隆上的默認目標。2.當你看到「Mercurial repo內的SVN-repo」時 - SVN超過hgsubversion,初始克隆的結果是** Mercurial repo **。 [與Subversion交互](http://mercurial.aragost.com/kick-start/en/hgsubversion/)來自aragost Trifork的「Mercurial Kick Start」很有用 –