Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sritchie/sbt-gitflow
Helping SBT and "git flow release" play nice.
https://github.com/sritchie/sbt-gitflow
Last synced: 2 months ago
JSON representation
Helping SBT and "git flow release" play nice.
- Host: GitHub
- URL: https://github.com/sritchie/sbt-gitflow
- Owner: sritchie
- Created: 2013-02-11T08:50:24.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2013-02-11T08:56:49.000Z (almost 12 years ago)
- Last Synced: 2024-05-02T00:35:23.487Z (8 months ago)
- Language: Scala
- Size: 104 KB
- Stars: 6
- Watchers: 4
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## sbt-gitflow
Slight extensions to the [sbt-release](https://github.com/sbt/sbt-release) plugin to make it more compatible with [git flow](https://github.com/nvie/gitflow).
## Requirements
* sbt 0.12.0 for *sbt-gitflow* 0.1.
* The version of the project should follow the semantic versioning scheme on [semver.org](http://www.semver.org) with the following additions:
* The minor and bugfix part of the version are optional.
* The appendix after the bugfix part must be alphanumeric (`[0-9a-zA-Z]`) but may also contain dash characters `-`.
* These are all valid version numbers:
* 1.2.3
* 1.2.3-SNAPSHOT
* 1.2beta1
* 1.2
* 1
* 1-BETA17
* A [publish repository](https://github.com/harrah/xsbt/wiki/Publishing) configured. (Required only for the default release process. See further below for release process customizations.)
* git [optional]## Usage
For anything other than the basic instructions provided here, refer to the [sbt-release](https://github.com/sbt/sbt-release) documentation.
### Adding the plugin dependency
Add the following line to `./project/build.sbt`. See the section [Using Plugins](https://github.com/harrah/xsbt/wiki/Getting-Started-Using-Plugins) in the xsbt wiki for more information.
addSbtPlugin("com.twitter" % "sbt-gitflow" % "0.1")
### Including sbt-release settings
**Important:** The settings `releaseSettings` need to be mixed into every sub-projects `settings`.
This is usually achieved by extracting common settings into a `val standardSettings: Seq[Setting[_]]` which is then included in all sub-projects.Setting/task keys are defined in `sbtrelease.ReleasePlugin.ReleaseKeys`.
#### build.sbt (simple build definition)
releaseSettings
#### build.scala (full build definition)
import sbgitflow.ReleasePlugin._
object MyBuild extends Build {
lazy val MyProject(
id = "myproject",
base = file("."),
settings = Defaults.defaultSettings ++ releaseSettings ++ Seq( /* custom settings here */ )
)
}## Author
* Sam Ritchie
## License
Copyright 2012 Twitter, Inc.
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0