refresh-camp - refresh various components within a campVERSION
The following options are available:
This help message.
The number of the camp to refresh; if not specified, attempts to determine the camp number from the current working directory.
Rebuild the templated configuration files of the specified camp.
Rebuild the database of the specified camp.
Refresh the non-versioned files of the specified camp.
Perform an update on your camp for the version control system appropriate to that camp.
Note that while use of "--usage" will short-circuit anything else, the other options may be combined as one sees fit in a single call.DISCUSSION
As camps are an intersection of version control and factory-generated configuration files, it makes sense to understand the implications of a "refresh" before attempting one.
It is assumed that you're using some kind of version control, and that the version control repository amounts for the bulk of the project. Performing a "--vcs" refresh will simply call the version control system's "up" command on the camp/working-copy.
The database is not so easily managed with version control, and it is assumed that there is always a canonical database schema in existence from which new camp databases are constructed. Performing a "--db" refresh will wipe out your camp's existing database and replace it with a freshly-built one. It doesn't refresh things by merging changes, it merely replaces whatever's in your camp with what's in the canonical database source. So, this is a destructive refresh; it isn't potentially additive or a merge the way a "--vcs" refresh is.
It is commonly the case that certain files in a system do not apply readily to version control, for whatever reason, and are managed differently. The "copy paths" portion of Camp::Master accounts for this, and using the "--file" refresh will cause all files managed through the copy-paths.yml config for your camp type to be updated appropriately (typically via rsync) from the canonical source. This probably means that any custom files you had in these paths would be lost.AUTHOR
Ethan Rowe and other contributorsLICENSE AND COPYRIGHT
Copyright (C) 2006-2015 End Point Corporation, https://www.endpoint.com/
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see: http://www.gnu.org/licenses/
© 2006–2019 End Point Corporation