Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/polarisation/svn-resolver
SVN plugabble resolver for Bower, overriding and enhancing the default functionality
https://github.com/polarisation/svn-resolver
bower svn
Last synced: about 2 months ago
JSON representation
SVN plugabble resolver for Bower, overriding and enhancing the default functionality
- Host: GitHub
- URL: https://github.com/polarisation/svn-resolver
- Owner: Polarisation
- License: mit
- Created: 2016-05-09T21:01:42.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-04-19T10:51:28.000Z (over 6 years ago)
- Last Synced: 2024-10-13T21:54:33.008Z (3 months ago)
- Topics: bower, svn
- Language: JavaScript
- Homepage:
- Size: 7.81 KB
- Stars: 1
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# svn-resolver
SVN [pluggable resolver](http://bower.io/docs/pluggable-resolvers/) for Bower. Bower has some support for SVN, but this resolver overrides the default to provide enhanced functionality to better support typical SVN workflows. So far it allows storage of credentials in `.bowerrc`, provides the capability to update from trunk, and allows SVN targets which do not use the typically trunk/tags structure.[![NPM](https://nodei.co/npm/svn-resolver.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/svn-resolver/)
## Install
Either install globally with npm:
npm install --global svn-resolver
or add as a local dependency in your package.json.
## Usage
Add the following to `.bowerrc`:
{
"resolvers": [
"svn-resolver"
],
"svnResolver": {
"username": "[USERNAME]",
"password": "[PASSWORD]"
}
}Credentials are optional, if not provided it will use the credentials saved by SVN (if any). There are clearly security considerations with storing credentials in plain text within `.bowerrc`, but it may be helpful to simplify a build process.
Now in bower.json we can use dependencies of the form:
"dependencies": {
"MyPrivateDependency": "svn+https://svn.example.com/my-private-dependency#",
}Typically the target directory in SVN will need to use the conventional trunk/branches/tags directory structure. Versions are mapped as follows:
- `#` for the latest revision from trunk (`bower update` works)
- `#trunk` for the trunk, but `bower update` will not pull down new revisions. This probably has little use but is provided to match the default Bower behaviour.
- `#[tag]` for `tags/[tag]` (`bower update` will not work but since tags should not change, this should not be an issue)
- `#[revision].0.0` or `#r[revision]` will use trunk at the specified `[revision]`.Alternatively, it is possible to use a target directory that does not use the trunk/branches/tags structure by appending `-no-trunk` to the version:
- `#-no-trunk` for the latest revision
- `#r[revision]-no-trunk` for a specific revision