---
title: New Release
layout: guides
---
Note:
Only owners can release new versions of the gem to RubyGems.org.
## 1. Pull latest development
```bash
git checkout development
git pull origin development
```
## 3. Start release
This assumes you are using [the git-flow gem](https://github.com/nvie/gitflow):
```bash
git flow release start vX.X.X # Replace X.X.X. with new version
```
## 2. Update version
You can use [the bump gem](https://github.com/gregorym/bump) to easily update the gem version:
```bash
# Version Format: MAJOR.MINOR.PATCH
# Choose one of the following
bundle exec bump patch # to bump X in 1.1.X
bundle exec bump minor # to bump X in 1.X.1
bundle exec bump major # to bump X in X.1.1
git commit -am "Publish version X.X.X"
```
## 3. Publish version
```bash
git flow release publish vX.X.X # Replace X.X.X. with new version
```
## 4. Create PR
Create a PR in the github repo with `master` as the base.
## 5. Wait for review and tests to pass.
All releases should be approved and NOT merged using github.
## 6. Merge release
Merge the release using git-flow:
```bash
git flow release finish vX.X.X # Replace X.X.X. with new version
git push origin --tags
```
## 7. Deploy new version to rubygems
```bash
git checkout master
bundle exec build
bundle exec release
```
## That's it!
The version will now be available [on rubygems](https://rubygems.org/gems/ledger_sync).