2009-08-27 95 views
3

背景:我已經繼承了一些MATLAB代碼來分析我的博士學位數據。研究。爲了幫助我更好地理解代碼,我將代碼縮減爲運行示例測試用例代碼所需的最小文件子集。維護開發分支,其中一個分支是另一分支的子集

問題:我想提交此代碼版本控制系統爲兩個分支,一個master分支包含所有的代碼,並且minimal分支包含的代碼我刪節過的版本,並能夠在這些分支之間來回地合併變化。我怎樣才能做到這一點?

我寧願在單個工作目錄中執行此操作,並在Git或Mercurial中命名分支,但我願意接受其他建議。

編輯:我認爲我看到沿着這些路線以前的堆棧溢出的問題, 我只是覺得:Pushing updates to a pruned Mercurial branch。在 對接受的答案的評論,它是 提到,我想 試圖做的是「狹窄的克隆」和 這是Git 和Mercurial的工作正在進行中。

回答

4

git和mercurial都應該可以正常工作。創建主分支,然後將其複製到最小分支,然後剝離最小分支,使其看起來像您已有的實現(刪除所有額外文件,複製已更改的文件)。

從此,在分支之間使用常規合併命令。主要從最小分支合併到主分支可能是最好的。 「合併另一種方式」更有可能讓您抱怨合併失敗(與衝突),因爲某些文件適用於已刪除的文件/已刪除的功能。

+1

請注意,您也可以在單個存儲庫中進行兩次初始提交,這將爲您節省提交操作,從而刪除大量文件,但另一方面在初始提交之間會有冗餘信息。 – Cascabel 2009-08-27 22:09:18

相關問題