몇 가지 다른 고객을 위해 몇 가지 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
이 모듈은 마스터 프로젝트의 자바 스크립트 디렉토리에 위치 하나의 자바 스크립트 파일에 하위 프로젝트를 컴파일 복사합니다.
예를를 들어, 디렉토리 :
validation_commons-sub-proj
v_file_attachment-sub-proj
z_business_logic-sub-proj
... 모든 결합 축소 된 있습니다 (같은 컴파일의 종류) 다른에_master-proj/js
디렉토리의 Javascript 파일 이름. 마지막 단계에서_master-proj
이 컴파일되어 서버에 배포됩니다.이제 hg로 설정하는 방법에 관해서는 마스터 프로젝트와 하위 프로젝트를 자체 기본 저장소에서 복제본으로 복제하는 것이 좋습니다. 클라이언트의 작업 복사본을 사용하여 모듈을 특정 고객의 작업 복사본에 추가 할 수 있습니다.
그러나 한 고객의 작업 복사본에서 버그를 수정/수정하는 경우 마스터 프로젝트/하위 프로젝트의 기본 저장소로 선택적으로 변경 사항/버그 수정을 푸시 할 수 있기를 바랍니다. 결국 변경/수정 사항을 수정해야하는 동일한 버그가 포함되어있을 수있는 다른 고객의 작업 복사본으로 가져 오기위한 것입니다.
이렇게하면 다른 클라이언트간에 동일한 버그 수정을 활용할 수 있습니다.
그러나 ... 나는 hg와 Eclipse를 사용하여이 작업을 수행하는 가장 좋은 방법이 확실치 않습니다.
I
--filemap
옵션을 사용하여 hg의 Convert Extension을 사용하여 하위 디렉토리를 별도의 프로젝트로 분할 할 수 있습니다.그러나 나는 여전히 Convert Extension을 사용하는 것이 더 좋을지 또는 각 모듈을 자체 저장소에 저장하고 단일 작업 공간으로 체크하는 것이 더 좋을지 혼란 스럽다. 각 클라이언트에 대해
여기서 설명/수행하려고하는 동사의 간결한 이름이 있습니까? – leeand00
내가 혼란스럽게 생각하는 또 다른 장소는 내가 어떻게 하나의 큰 저장소에 모든 것을 포함하지 않고도 자신의 개별 저장소에서 필요한 올바른 특정 모듈을 체크 아웃 할 수 있어야 할 것이라고 생각 하는가? – leeand00
대답은 여기에 있습니다. http://mercurial.selenic.com/wiki/subrepos – leeand00