J'ai quelques projets ANT pour plusieurs clients différents; la structure du répertoire que j'ai pour mes projets ressemble à ceci:Meilleures pratiques pour les sous-modules de fonctionnalités de projet avec Mercurial et 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
Dans la CdT les modules compilez le sous-projet dans un seul fichier Javascript qui est placé dans le répertoire Javascript du projet maître.
Par exemple, les répertoires:
validation_commons-sub-proj
v_file_attachment-sub-proj
z_business_logic-sub-proj
... tous sont combinés et minified (une sorte de compilation) dans un autre Nom de fichier Javascript dans le répertoire _master-proj/js
; et dans la dernière étape, le _master-proj
est compilé pour être déployé sur le serveur. Maintenant, en ce qui concerne la façon dont je voudrais mettre en place avec hg, ce que je voudrais pouvoir faire est de cloner le projet maître et ses sous-projets à partir de leurs propres référentiels de ligne de base dans un copie de travail du client, de sorte que les modules peuvent être ajoutés (en utilisant hg) à la copie de travail d'un client particulier. En outre, lorsque je modifie/corrige des bogues dans la copie de travail d'un client, je souhaite également pouvoir transférer les modifications/corrections de bogues dans le référentiel de base du projet principal/sous-projet. , à des fins de tirer éventuellement les modifications/corrections dans les copies de travail d'autres clients qui pourraient contenir les mêmes bogues qui doivent être corrigés.
De cette façon, je serai en mesure d'utiliser les mêmes correctifs de bugs entre différents clients.
Cependant ... Je ne suis pas sûr de la meilleure façon de le faire en utilisant hg et Eclipse.
I que vous pouvez utiliser hg's Convert Extension pour diviser un sous-répertoire dans un projet distinct en utilisant l'option --filemap
.
Cependant, je suis encore un peu confus quant à savoir s'il serait préférable d'utiliser le Convert Extension ou s'il serait préférable de simplement loger chacun des modules dans leur propre référentiel et les vérifier dans un seul espace de travail pour chaque client.
Existe-t-il un nom court et succinct pour le verbe que j'essaie d'expliquer/d'exécuter ici? – leeand00
Je pense qu'un autre endroit où je suis confus sur ce devrait être comment puis-je vérifier les modules spécifiques corrects dont j'ai besoin de leurs dépôts individuels, sans inclure le tout dans un grand référentiel? – leeand00
Je pense que j'ai peut-être trouvé la réponse ici: http://mercurial.selenic.com/wiki/subrepos – leeand00