Gitflow-inspired, but flexible and customizable project management tool.
Quick demo:
$ git barry start feature awesome # Create and switch to feature branch
$ git barry finish # Merge with master then delete branch, switch to master
$ git barry start release v0.9.8 # Create and switch to release branch
$ git barry finish # Tag branch, merge with master
$ python3 setup.py install
$ pip install gitbarry
git barry <reason> <type> [name]
- reason - start or finish
- type - one types from ini
- name - name of task when start
$ git barry start feature <name>
$ git barry finish
$ git barry switch feature 22
$ git barry switch release v2.1
Store your configuration in {PROJECT_ROOT}/gitbarry.ini.
Example
[task-feature]
branch-from=master
finish-action=merge
finish-branch-to=master
We create task named feature
- branch-from - branch from who we checking out when start feature
- finish-branch-to - merge action-parameter. Target-branch for merge.
name in configfile: merge
Merge current task-branch to finish-branch-to parameter. Then check out to finish-branch-to.
name in configfile: pull-request
Send http-request, that created pull-request to finish-branch-to
Request-parameters:
- finish-pull-request-url - url template. http://gitlab.com/example/tree/{branch} for example
- finish-pull-request-method - request method. Default is GET
name in configfile: tag
Tag branch
Request-parameters:
- branch-from - branch from who we checking out when start feature
- finish-branch-to - merge action-parameter. Target-branch for merge.
name in configfile: open-browser
Open browser when finish
Parameters:
- finish-open-browser-url - url template. http://gitlab.com/example/tree/{branch} for example