Atlassian Stash Command Line Tools

Installing this tool

This command line helper for Stash is written in Ruby and is deployed as a Ruby Gem. Installation is easy, simply run the following command

#!text
$> gem install atlassian-stash

(Protip: you might need to sudo)

Once the gem is installed, the command stash will be in your $PATH

Configuration and usage

Run stash configure. This will prompt for details about your Stash instance. If no password is provided, then you will be prompted for a password when executing commands to Stash. Currently, the password is stored in plain text in a configuration file, ~/.stashconfig.yml which is protected with a permission bit of 0600.

Creating a pull request

Use the pull-request command to create a pull request in Stash. For example:

#!text
$> stash pull-request topicBranch master @michael
Create a pull request from branch 'topicBranch' into 'master' with 'michael' added as a reviewer

See the usage for command details

#!text
$> stash help pull-request

Opening the Stash web UI

Use the browse command to open the Stash UI for your repository in the browser.

#!text
$> stash browse -b develop
Open the browser at the Stash repository page for the branch 'develop'

For more options, see the help

#!text
stash help browse

Configuration options

Running stash configure will prepopulate ~/.stashconfig.yml with a variety of options. Complete options are:

#!yaml
username: seb # username to connect to stash server.
password: s3cr3t # password for user. If ommitted, you will be prompted at the terminal when making a request to Stash
stash_url: https://stash.server.com # fully qualified stash url
open: true # opens newly created pull requests in the browser
ssl_no_verify: true # do not check ssl certificates for the configured stash server

Troubleshooting

Q: I installed the gem, but the stash command doesn't work.
A: Do you have another command called stash or do you have an alias? Have a look where the command maps to

#!text
$> which -a stash

Then check the value of your $PATH

I want to contribute

Thanks! Please fork this project and create a pull request to submit changes back to the original project.

Build instructions

Building this gem is easy. To get started, run the following commands:

#!text
$> gem install bundler
$> bundle install

Now start hacking, and run the stash command by invoking ./bin/stash command

Testing

Easy:

$> rake test

Releasing

Bumping versions

Use rake version:

version             -- displays the current version
version:bump:major  -- bump the major version by 1
version:bump:minor  -- bump the a minor version by 1
version:bump:patch  -- bump the patch version by 1
version:write       -- writes out an explicit version

Releasing

$> rake release