Version 44 (modified by nicolasmartin, 7 years ago) (diff) |
---|
Welcome to the NEMO development area
You should find here everything regarding the development and the support of the NEMO reference.
Prerequisites
Become a NEMO developer
First and foremost, if you don't already have a user account then you have to create it.
For NEMO consortium members
If you have a user account or had a developer account before, | For external users
Submit your contribution to the NEMO System Team by
Keep in mind that, despite the help we can offer, a certain amount of |
Recommended development installation
After the global reorganisation of the repository, it is now advisable to entirely download the new default development organisation in your local computing architecture:
- NEMO/trunk: the main development branch
- NEMO/branches
- NEMO/branches/YYYY: yearly development branches intended to be merged into trunk by the end of the year
- NEMO/branches/{NERC,UKMO}: restricted to British operational activities
- NEMO/releases: all official NEMO releases, only the last one is maintained
The first checkout will be a bit longer than usual but the SVN commands will be much simpler: the modifications will be done locally and not directly to the repository by committing with former complex svn+ssh syntax. See SVN basics? for more.
# One step method: download directly a copy with write access or svn co svn+ssh://"ID"@forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/NEMO [...] # Two steps method: download a read-only copy and switch to developer when # * you have your developer access or # * a backup of the work is required by committing to the repository svn co http://forge.ipsl.jussieu.fr/nemo/svn/NEMO [...] ...... svn sw --relocate http://forge.ipsl.jussieu.fr svn+ssh://"ID"@forge.ipsl.jussieu.fr/ipsl/forge/projets
New build of the working copy
To facilitate the development work by simplifying the management and the sharing of the code in the repository, while ensuring the consistency of the working copies, we have introduced the SVN externals definitions in the building of the working copies.
We have identified the core code and the complementary codes of NEMO, the latter which are developing less rapidly have been extracted from the default development organisation of the repository (branches / releases / trunk) to different locations of the repository.
From now on, a working copy of the NEMO reference (WC) is the summation of few checkouts from different sources defined by the svn:externals properties of the working copy. To be conservative, all externals definitions will be blocked by default.
Here is an example which is not supposed to be up to date with the current external codes.
# Relative URL Path in WC Content # '^' for repository root ^/utils/build/arch"[@REV]" arch # FCM settings files for computing architectures ^/utils/build/makenemo"[@REV]" makenemo # Main script for building a NEMO configuration ^/utils/build/mk"[@REV]" mk # Sub-scripts and FCM input files for compiling ^/utils/tools"[@REV]" tools # User tools ^/vendors/AGRIF/dev"[@REV]" ext/AGRIF # Dependency for nesting ^/vendors/FCM"[@REV]" ext/FCM # "" for source code compilation ^/vendors/IOIPSL"[@REV]" ext/IOIPSL # "" for IO management
If you have to modify these properties to get external modifications, you can learn how to update your working copy in Developers/SVNHowTo?.
Development activities
Document your developments before coding by following the procedure described at Developers/DevelopingCodeChanges
Support
Forums
Discussion