Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/metaory/hgit-cli
:rocket: Streamline and Simplify complex processes (a beautiful unopinionated config based workflow engine)
https://github.com/metaory/hgit-cli
ci ci-cd cli command-line conflict-detection console git git-flow hgit pipeline pipelines script-engine task task-runner terminal tui workflow workflow-automation workflow-engine
Last synced: about 18 hours ago
JSON representation
:rocket: Streamline and Simplify complex processes (a beautiful unopinionated config based workflow engine)
- Host: GitHub
- URL: https://github.com/metaory/hgit-cli
- Owner: metaory
- License: mit
- Archived: true
- Created: 2022-08-12T07:09:34.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2022-09-24T15:16:06.000Z (about 2 years ago)
- Last Synced: 2024-09-18T03:49:30.891Z (about 2 months ago)
- Topics: ci, ci-cd, cli, command-line, conflict-detection, console, git, git-flow, hgit, pipeline, pipelines, script-engine, task, task-runner, terminal, tui, workflow, workflow-automation, workflow-engine
- Language: JavaScript
- Homepage: https://npmjs.com/package/hgit
- Size: 2.54 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# :zap: [[ Poject moved to [npm/mxflow](https://www.npmjs.com/package/mxflow) ]]
---
---
---# hgit
### :rocket: a beautiful unopinionated config based workflow **engine**
# Streamline and Simplify complex processes## a CICD for local machines
---
![hgit v0.47.15](https://raw.githubusercontent.com/wiki/metaory/hgit-cli/assets/gifcast_220923200431.gif)
Requirements
============
- Node 16.x# Sample Config
sample-generated-config-file
```yaml
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
```[sample-git-workflow](https://github.com/metaory/hgit-cli/wiki/Git-Workflow-Sample)
---
Config Behaviours
=================### Special commands:
- `list logs` _list last n pretty graph log_
- `autocomplete checkout {pattern}` _prompt checkout the pattern branch_
- `confirm {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 hgitInstallation
============
npm i -g hgitUsage
=====
hgit
hgit --trigger foobarOptions
=======
--verbose | verbose logs
--trigger | non-interactive workflow triggerRoadmap
=======- [X] project based config file
- [ ] plugin system for dynamic lists
- [ ] aurgument mode
- [ ] argument autocomplete***
___ ___
/__/\ / /\ ___ ___
\ \:\ / /:/_ / /\ / /\
\__\:\ / /:/ /\ / /:/ / /:/
___ / /::\ / /:/_/::\ /__/::\ / /:/
/__/\ /:/\:\ /__/:/__\/\:\ \__\/\:\__ / /::\
\ \:\/:/__\/ \ \:\ /~~/:/ \ \:\/\ /__/:/\:\
\ \::/ \ \:\ /:/ \__\::/ \__\/ \:\
\ \:\ \ \:\/:/ /__/:/ \ \:\
\ \:\ \ \::/ \__\/ \__\/
\__\/ \__\/