Drush version control system, to manage a variety of Drush versions and provide the ability to switch to specific versions at any time.
It has been rewritten in Google's Golang as a pilot for the core maintainer to learn a new language and see what it would hold in professional development. It wasn't intended to stick or be released however the pilot program was extremely stable and efficient and it didn't make sense not to release it.
DVM will require the following to be available in the system depending on what you're trying to do:
- composer
- unzip
- wget
There are three ways to install DVM, but if you're at all familiar with Golang these are very standardised shipping methods.
- run
go get -u github.com/fubarhouse/dvm
- Use like any other Go binary.
- run
go get -u github.com/fubarhouse/dvm
- Build your own Go binary using the API's from the packages downloaded.
- Download one of the pre-compiled binaries.
- Copy to location in $PATH environment variable.
Configurations are loaded via Viper, an example is below.
The default values are in this example and should be overriden in ~/.dvm/config.toml
to suit your system.
[config]
path = "/usr/local/bin/drush"
dvm install 7.2.0
dvm uninstall 7.2.0
dvm use 7.2.0
dvm list available
dvm list installed
dvm package install registry_rebuild
dvm package list
Examples of each module can be found in the test functions of each test file of each package as tests have been written and passed for every function written.
- Drush package management, provides a way to install, reinstall, uninstall and list package objects.
- Drush version management, where a version can be installed, reinstalled, uninstalled and a variety of other utility methods.
- Provides Drush Version Management information, by displaying desired information on particular versions - installed or not.