Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Process for updating an external

tcraig

Member
Is this the appropriate procedure to update an "external" version,
check it in, then use it.

> svn co $SVNREPO/cam1/trunk mycam
> cd mycam/models
> svn propget svn:externals
> edit SVN_EXTERNAL_DIRECTORIES
> svn propset svn:externals -F SVN_EXTERNAL_DIRECTORIES
> svn propget svn:externals
> cd ..
> svn commit -m "updated external versions"
> cd ..
> svn co $SVNREPO/cam1/trunk mycam_new

To summarize
- check out model
- go to directory with SVN_EXTERNAL_DIRECTORIES
- check the external property with propget
- edit SVN_EXTERNAL_DIRECTORIES, change the path
- set the external property with propset
- check that the external property has changed with propget
- cd to the head of the model
- commit the changes
- check out the updated version, verify the externals are updated
as expected.

One final clarification. "svn update" does not seem to update externals
after changing the SVN_EXTERNALS_DIRECTORIES. The only way to
verify externals are set correctly is to check the code out fresh, is that
correct?

tony....
 

mvr

Member
to clarify...you want to update cam to use a new version of clm and this version has already been commited to the clm project...in that case your procedure is close, but i'd recommend a few things...

after you run 'svn propset' you should be able to run 'svn update' to repopulate the external directories of your sandbox from their new repository locations...this will allow you to test cam before any commit is done...your observation that 'svn update' wasn't working after changing the file SVN_EXTERNAL_DIRECTORIES is probably because you only edited this file and hadn't used it to actually set the property in your sandbox via 'svn propset'...

the command 'svn info' is handy when you want to know exactly what a directory of your sandbox (including external ones) is pointing to in the repository...

one other note, your command for 'svn propset' requires a . (dot) at the end to specify that your current working directory is the target for the property

-mathew
 
Top