Updating a Baselibs Component: Difference between revisions
m →Importing NCO 4.2.3: Cleanup newlines |
|||
Line 34: | Line 34: | ||
$ bcvs import -kk -m 'MAT: import NCO 4.2.3 retrieved 2012-NOV-13 from http://nco.sourceforge.net/#Source' Baselibs/src/nco NCO release-4_2_3 | $ bcvs import -kk -m 'MAT: import NCO 4.2.3 retrieved 2012-NOV-13 from http://nco.sourceforge.net/#Source' Baselibs/src/nco NCO release-4_2_3 | ||
39 conflicts created by this import. | 39 conflicts created by this import. | ||
Use the following command to help the merge: | Use the following command to help the merge: | ||
cvs -d :ext:mathomp4@progressdirect:/cvsroot/baselibs checkout -j<prev_rel_tag> -jrelease-4_2_3 Baselibs/src/nco | cvs -d :ext:mathomp4@progressdirect:/cvsroot/baselibs checkout -j<prev_rel_tag> -jrelease-4_2_3 Baselibs/src/nco | ||
Revision as of 07:49, 3 January 2013
Process of Importing A New Component to Baselibs
This example document will detail the process that was used importing NCO 4.2.3 into GMAO Baselibs.
Set up the new tag
In this case, we were adding NCO 4.2.3 to GMAO-Baselibs-3_3_0. So, the "internal" tag we went to was 3_3_1. In a temporary directory (say, ImportCheckout) you checkout Baselibs and tag relative so you know where you started from. You also make sure the tag you're making doesn't exist:
$ cd /gpfsm/dswdev/mathomp4/Baselibs/ImportCheckout $ bcvs co Baselibs $ cd Baselibs/src $ bcvs tag -r GMAO-Baselibs-3_3_0 Internal-3_3_1-before-NCO-4_2_3 $ bcvs tag -d Internal-3_3_1
Importing NCO 4.2.3
4. Move to /gpfsm/dswdev/mathomp4/Baselibs/NewImports
$ cd /gpfsm/dswdev/mathomp4/Baselibs/NewImports
a. Untar nco-4.2.3.tar.gz (from http://nco.sourceforge.net/#Source)
$ tar xzf nco-4.2.3.tar.gz
b. Move into netcdf directory:
$ cd nco-4.2.3/
c. Test import netcdf package
$ bcvs -nq import -kk -m 'MAT: import NCO 4.2.3 retrieved 2012-NOV-13 from http://nco.sourceforge.net/#Source' Baselibs/src/nco NCO release-4_2_3
d. Really import the package
$ bcvs import -kk -m 'MAT: import NCO 4.2.3 retrieved 2012-NOV-13 from http://nco.sourceforge.net/#Source' Baselibs/src/nco NCO release-4_2_3 39 conflicts created by this import. Use the following command to help the merge: cvs -d :ext:mathomp4@progressdirect:/cvsroot/baselibs checkout -j<prev_rel_tag> -jrelease-4_2_3 Baselibs/src/nco
e. Check out model anew
$ cd /discover/swdev/mathomp4/Baselibs $ mkdir NewBaselibs $ cd NewBaselibs $ bcvs co -kk Baselibs/src <snip checkout> $ bcvs -q checkout -kk Baselibs/src/nco
f. Update to new release
$ bcvs -nq update -kk -jrel-4_0_3-20100627 -jrelease-4_2_3 Baselibs/src/nco
(remove -nq and run again once satisfied)
g. Move into nco
$ cd Baselibs/src/nco
h. Check for conflicts
$ bcvs -nq upd -kk | grep -r '^[C|M]'TmpBaselibs cvs update: New directory `autom4te.cache' -- ignored cvs update: New directory `debian' -- ignored cvs update: New directory `src/nco++/.deps' -- ignored M doc/ANNOUNCE M doc/ChangeLog M doc/MANIFEST M doc/Makefile.in M doc/README M doc/TODO M doc/VERSION M doc/debian.txt M doc/i18n.txt M doc/index.shtml M doc/man_end.txt M doc/nco.dvi M doc/nco.html M doc/nco.info M doc/nco.pdf M doc/nco.ps M doc/nco.texi M doc/nco.txt M doc/nco.xml M doc/nco_news.shtml M doc/nco_src_frg.txt M doc/opendap.sh M man/Makefile.in M man/ncap.1 M man/ncap2.1 M man/ncatted.1 M man/ncbo.1 M man/ncdiff.1 M man/ncea.1 M man/ncecat.1 M man/ncflint.1 M man/ncks.1 M man/nco.1 M man/ncpdq.1 M man/ncra.1 M man/ncrcat.1 M man/ncrename.1 M man/ncwa.1
i. Fix conflicts
No conflicts found.
j. Commit changes
$ bcvs commit -m "MAT: merge new NCO release 4.2.3, no conflicts found"
5. Tag new release at src level
$ cd .. $ bcvs tag -r GMAO-Baselibs-3_3_0 Internal-3_3_1
6. UNTAG nco and retag the new vendor release
$ cd nco/ $ bcvs tag -d Internal-3_3_1 $ bcvs tag -r release-4_2_3 Internal-3_3_1
7. Edit Changelog and VERSION and commit
8. Push tag on new files
$ bcvs tag -F Internal-3_3_1 ChangeLog INSTALL VERSION
11. Checkout new tag and build
a. Try doing a cvscmp to the "before" tag. Make sure the difference looks okay
12. If all works, delete the "before" tag
13. If all *really* works, rename Internal-3_3_1 to GMAO-Baselibs-3_3_1