我有幾個不同的客戶ANT項目;目錄結構我有我的項目是這樣的:使用Mercurial和Eclipse的項目特徵子模塊的最佳實踐?
L___standard_workspace
L___.hg
L___validation_commons-sub-proj <- JS Library/Module
| L___java
| | L___jar
| L___old_stuff
| L___src
| | L___css
| | L___js
| | L___validation_commons
| L___src-test
| L___js
L___v_file_attachment-sub-proj <- JS Library/Module
| L___java
| | L___jar
| L___src
| | L___css
| | L___js
| L___src-test
| L___js
L___z_business_logic-sub-proj <- JS Library/Module
| L___java
| | L___jar
| L___src
| L___css
| L___js
L____master-proj <- Master web-deployment module where js libraries are compiled to.
L___docs
L___java
| L___jar
| L___src
| L___AntTasks
| L___build
| | L___classes
| | L___com
| | L___company
| L___dist
| L___nbproject
| | L___private
| L___src
| L___com
| L___company
L___remoteConfig
L___src
| L___css
| | L___blueprint
| | | L___plugins
| | | | L___buttons
| | | | | L___icons
| | | | L___fancy-type
| | | | L___link-icons
| | | | | L___icons
| | | | L___rtl
| | | L___src
| | L___jsmvc
| L___img
| | L___background-shadows
| | L___banners
| | L___menu
| L___js
| | L___approve
| | L___cart
| | L___confirm
| | L___history
| | L___jsmvc
| | L___mixed
| | L___office
| L___stylesheets
| L___swf
L___src-standard
內的工作拷貝模塊編譯子項目成被放置在主項目的JavaScript的目錄中的一個JavaScript文件。
例如,目錄:
validation_commons-sub-proj
v_file_attachment-sub-proj
z_business_logic-sub-proj
...所有組合和精縮(有點像編譯)成不同Javascript文件名在_master-proj/js
目錄中;並在最後一步編譯_master-proj
以部署到服務器。
現在關於我想用hg進行設置的方式,我希望能夠做的就是將主項目及其子項目從他們自己的基線存儲庫克隆到客戶的工作副本,以便可以將模塊添加(使用hg)到特定客戶的工作副本。
此外,當我在一個客戶的工作副本中修改/修正錯誤時,我希望能夠選擇性地將修改/錯誤修復推回到主項目/子項目的基線存儲庫,目的是最終將更改/修復引入其他客戶的工作副本,這些副本可能包含需要修復的相同錯誤。
通過這種方式,我將能夠在不同的客戶端上使用相同的錯誤修復。
但是......我不確定使用hg和Eclipse來做到這一點的最佳方式。
我您可以使用hg的Convert Extension使用--filemap
選項將子目錄拆分爲單獨的項目。
但是,我仍然有點困惑,以至於如果最好使用Convert Extension或者將每個模塊放在自己的存儲庫中並將它們檢出到單個工作區中爲每個客戶。
是否有一個簡短的名字,我試圖解釋/在這裏執行的動詞? – leeand00 2010-05-17 19:07:31
我認爲我對此感到困惑的另一個地方是如何才能從他們各自的存儲庫檢出我需要的正確特定模塊,而不必將整個事件包含在一個大型存儲庫中? – leeand00 2010-05-17 19:17:49
我想我可能在這裏找到答案: http://mercurial.selenic.com/wiki/subrepos – leeand00 2010-05-17 20:02:10