https://github.com/marcobarcelos/svn-polling
🕓 A SVN Log Polling mechanism for NodeJS
https://github.com/marcobarcelos/svn-polling
log nodejs polling svn svn-polling
Last synced: 7 months ago
JSON representation
🕓 A SVN Log Polling mechanism for NodeJS
- Host: GitHub
- URL: https://github.com/marcobarcelos/svn-polling
- Owner: marcobarcelos
- License: other
- Created: 2017-01-05T03:42:08.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-01-07T17:40:48.000Z (over 8 years ago)
- Last Synced: 2024-04-24T00:40:05.980Z (over 1 year ago)
- Topics: log, nodejs, polling, svn, svn-polling
- Language: JavaScript
- Homepage:
- Size: 6.84 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
README
# svn-polling
[](https://www.npmjs.com/package/svn-polling)
> 🕓 A SVN Log Polling mechanism for NodeJS.
## Install
```
$ npm install --save svn-polling
```or
```
$ yarn add svn-polling
```## Requirements
You need to have the `svn` command installed.
## Usage
```js
const SvnPolling = require('svn-polling');const polling = new SvnPolling({
remoteUrl: 'svn://your-svn-project-url.com/code/trunk'
});// Will be called as soon as new changes are commited into the repository
polling.on('data', (data) => {
console.log(data);
});// Start polling from svn log history
polling.start();
```**Result:**
```js
{
"revision": 2,
"logs": [
{
"revision": "1",
"author": "marcobarcelos",
"date": "2017-01-05T03:29:42.036677Z",
"msg": "Add index.js",
"changes": [
{
"action": "A",
"path": "/index.js"
}
]
},
{
"revision": "2",
"author": "marcobarcelos",
"date": "2017-01-05T03:30:20.881618Z",
"msg": "Add readme.md",
"changes": [
{
"action": "A",
"path": "/readme.md"
}
]
}
]
}
```## Config
You can configure some options by passing it into the constructor:
```js
const options = {
remoteUrl: 'svn://your-svn-project-url.com/code/trunk',
pollInterval: 1000,
logsLimit: 10,
username: 'marcobarcelos',
password: 'ultrasecret'
};const polling = new SvnPolling(options);
```### remoteUrl
Type: `string`
The remote repository's url.
### pollInterval
Type: `number`
Default: `15000`The interval between a svn log history fetch and another.
### logsLimit
Type: `number`
Default: `5`How many logs/commits to retrieve by the first time.
### username
Type: `string`
Optional *(in case authentication is not required or is already saved)*The svn user's username.
### password
Type: `string`
Optional *(in case authentication is not required or is already saved)*The svn user's password.
## License
MIT © [Marco Barcelos](http://marcobarcelos.com)