GitSFlow
GitSFlow is a tool that integrate Git custom commands with GitLab and it's inspired GitFlow
Installation
gem 'gitsflow', group: :development
$ gem install gitsflow
And in your application's:
$ sflow install
-> It will install the git alias
Flow Sugestion
Config
$ git sflow config
or
$ sflow config
In your project create or update file .env with variables below:
GITLAB_PROJECT_ID=
GITLAB_TOKEN=
GITLAB_URL_API=https://gitlab.com/api/v4
GITLAB_EMAIL=
GITLAB_LISTS=To Do,Doing,Next Release,Staging
GITLAB_NEXT_RELEASE_LIST=Next Release
GIT_BRANCH_MASTER=master
GIT_BRANCH_DEVELOP=develop
GIT_BRANCHES_STAGING=staging_1,staging_2
SFLOW_TEMPLATE_RELEASE=Version {version} - {date}
SFLOW_TEMPLATE_RELEASE_DATE_FORMAT=Y/m/d
Usage
For help:
$ git sflow help
or
$ sflow help
List of commands:
- git sflow feature start FEATURE DESCRIPTION
- git sflow feature [reintegration|finish] FEATURE_BRANCH
- git sflow feature codereview BRANCH
- git sflow feature staging SOURCE_BRANCH
- git sflow bugfix start BUGFIX DESCRIPTION
- git sflow bugfix [reintegration|finish] BUGFIX_BRANCH
- git sflow bugfix codereview BUGFIX_BRANCH
- git sflow bugfix staging BUGFIX_BRANCH
- git sflow hotfix start HOTFIX DESCRIPTION
- git sflow hotfix [reintegration|finish] HOTFIX_BRANCH
- git sflow hotfix staging HOTFIX_BRANCH
- git sflow release start RELEASE
- git sflow release finish RELEASE
- git sflow push origin BRANCH or git sflow push
Uninstall
$ git sflow uninstall
or
$ sflow uninstall
Get a GitLab Token
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/carloswherbet/GitSFlow. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
License
The gem is available as open source under the terms of the MIT License.
Code of Conduct
Everyone interacting in the SFlow project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.