hgit
v0.47.19
Published
Streamline and Simplify complex git processes
Downloads
41
Maintainers
Readme
:zap: [[ Poject moved to npm/mxflow ]]
hgit
:rocket: a beautiful unopinionated config based workflow engine
Streamline and Simplify complex processes
a CICD for local machines
Requirements
- Node 16.x
Sample Config
config_version: 0.47.0
graph_git_log_limit: 40
issue_tracker: jira
issue_tracker_tenant: metaory
sleep_between_commands: 1000
workflows:
foo:
description: example placeholder
pattern: '{branchType}/{taskId}-{description}'
steps:
- git fetch origin
- git checkout master
- git merge origin/master
- git checkout -b {branchName}
- git status
- confirm git push --set-upstream origin {branchName}
- list logs
bar:
description: example placeholder
branch: xorg/{description}
steps:
- git fetch origin
- git checkout master
- git merge origin/master
- autocomplete checkout xorg
- git checkout -b {branchName}
- git status
- confirm git push --set-upstream origin {branchName}
- list logs
xorg:
description: example placeholder
steps:
- echo hello word
- echo goodbye cruel world
- confirm echo goodbye
Config Behaviours
Special commands:
list logs
list last n pretty graph logautocomplete checkout {pattern}
prompt checkout the pattern branchconfirm {commandName}
adds confirmation step to command
Features
- check for
conflict
between multiple remote branch - start new workflows from a
config
file - ALL commands are read from the config file in
~/.config/hgit/config.yml
dynamic branch checkout
in workflows with command:prompt_checkout__{pattern}
branchNamePattern
from config:{branchType}.branch_pattern
- add
confirm
to commands for a confirmation prompt before the command
npx
npx hgit
Installation
npm i -g hgit
Usage
hgit
hgit --trigger foobar
Options
--verbose | verbose logs
--trigger <workflow-name> | non-interactive workflow trigger
Roadmap
- [X] project based config file
- [ ] plugin system for dynamic lists
- [ ] aurgument mode
- [ ] argument autocomplete
___ ___
/__/\ / /\ ___ ___
\ \:\ / /:/_ / /\ / /\
\__\:\ / /:/ /\ / /:/ / /:/
___ / /::\ / /:/_/::\ /__/::\ / /:/
/__/\ /:/\:\ /__/:/__\/\:\ \__\/\:\__ / /::\
\ \:\/:/__\/ \ \:\ /~~/:/ \ \:\/\ /__/:/\:\
\ \::/ \ \:\ /:/ \__\::/ \__\/ \:\
\ \:\ \ \:\/:/ /__/:/ \ \:\
\ \:\ \ \::/ \__\/ \__\/
\__\/ \__\/