{"id":35283206,"url":"https://github.com/shadowwalkerzh/gitflow-extension-tools","last_synced_at":"2025-12-30T15:05:27.893Z","repository":{"id":85339256,"uuid":"264398809","full_name":"shadowwalkerzh/gitflow-extension-tools","owner":"shadowwalkerzh","description":"Manage the branches and versions for your projects (Java/Node/Python...) based on extended gitflow workflow","archived":false,"fork":false,"pushed_at":"2025-07-09T07:11:21.000Z","size":18,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-09T08:28:36.320Z","etag":null,"topics":["bash","extension","giffow","git-flow","java","maven","node","npm","script","shell","tool","version"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shadowwalkerzh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-05-16T09:06:15.000Z","updated_at":"2025-07-09T07:11:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"9586d4af-6005-4fd4-b792-feada3417b50","html_url":"https://github.com/shadowwalkerzh/gitflow-extension-tools","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/shadowwalkerzh/gitflow-extension-tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shadowwalkerzh%2Fgitflow-extension-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shadowwalkerzh%2Fgitflow-extension-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shadowwalkerzh%2Fgitflow-extension-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shadowwalkerzh%2Fgitflow-extension-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shadowwalkerzh","download_url":"https://codeload.github.com/shadowwalkerzh/gitflow-extension-tools/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shadowwalkerzh%2Fgitflow-extension-tools/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28128470,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-30T02:00:05.476Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","extension","giffow","git-flow","java","maven","node","npm","script","shell","tool","version"],"created_at":"2025-12-30T15:01:36.993Z","updated_at":"2025-12-30T15:05:27.884Z","avatar_url":"https://github.com/shadowwalkerzh.png","language":"Shell","readme":"## gitflow-extension-tools\n\u003e Manage the branches and versions for your projects (Java/Node/Python...) based on extended gitflow workflow ...\n\n### Gitflow for node\n\u003e This is a tool for integrating git flow with node to manage your node project branches and versions, it's extended from two basic tools `git flow` and `npm version`. \n\n#### How to Install on MAC/Linux?\n- Step1: download `gitflow-npm/gffn.sh` file into your local directory and add execution permission `chmod +x gffn.sh` \n- Step2: `ln -sfn \"$(pwd)/gffn.sh\" /usr/local/bin/gffn`\n\n#### How to Install with One Command?\n- `curl \"https://raw.githubusercontent.com/shadowwalkerzh/gitflow-extension-tools/master/gitflow-npm/gffn.sh\" \u003e ~/gffn.sh \u0026\u0026 chmod +x ~/gffn.sh \u0026\u0026 ln -sfn ~/gffn.sh /usr/local/bin/gffn`\n\n#### How to use `gffn` to mange your node project version?\n\n\u003e **Have to checkout to the specific feature/release/hotfix branch before execute finish command**\n\n- ask for help: `gffn -h`\n\n- manage your feature version\n    - start a feature branch with a new patch version: `gffn -fs`\n    - commit your changes including the version number: `git commit -am 'start a feature'`, `git push origin {feature/branch name}`\n    - finish a feature branch: `gffn -ff`; this action will merge current feature branch into develop and delete the feature branch from local and remote repository.\n\n- manage your release version\n    - start a release branch with a new minor/major version: `gffn -rs`\n    - commit your changes including the version number: `git commit -am 'start a release'`, `git push origin {release/branch name}`\n    - finish a release branch: `gffn -rf`; this action will merge current release branch into develop and master branch, and delete the release branch from local and remote repository.\n\n- manage your hotfix version\n    - start a hotfix branch with a new patch version: `gffn -hs`\n    - commit your changes including the version number: `git commit -am 'start a hotfix'`, `git push origin {hotfix/branch name}`\n    - finish a hotfix branch: `gffn -hf`; this action will merge current hotfix branch into develop and master branch, and delete the hotfix branch from local and remote repository.\n\n#### What will it do when starting a new branch(feature/release/hotfix)?\n- feature\n    - create a new branch with prefix `feature/`\n    - switch to this feature branch\n    - update current version to next patch version\n\n- release\n    - create a new branch with prefix `release/`\n    - switch to this release branch\n    - update current version to next minor/major version\n\n- hotfix\n    - create a new branch with prefix `hotfix/`\n    - switch to this hotfix branch\n    - update current version to next minor/major version\n\n#### What will it do when finishing a new branch(feature/release/hotfix)?\n- feature\n    - validate current feature branch\n    - merge to develop branch\n    - fast commit changes\n    - push changes to remote develop branch\n    - delete current feature in local and remote repository\n\n- release\n    - validate current release branch\n    - merge current release branch to master branch\n    - fast commit changes\n    - create new tag with current version number from current release branch\n    - merge current tag into develop branch\n    - push local develop changes to remote develop branch\n    - push local master changes to remote master branch\n    - delete current release in local and remote repository\n\n- hotfix\n    - validate current hotfix branch\n    - merge current hotfix branch to master branch\n    - fast commit changes\n    - create new tag with current version number from current hotfix branch\n    - merge current tag into develop branch\n    - push local develop changes to remote develop branch\n    - push local master changes to remote master branch\n    - delete current hotfix in local and remote repository\n\n#### Example (locate in project root path)\n- create a feature branch and update to next feature version: `gffn -fs`\n- commit changes: `git commit -am \"start a feature branch\"`\n- push changes to remote branch: `git push origin {feature/feature_branch}`\n- finish feature branch: `gffn -ff`\n\n---\n\n### Gitflow for python\n\n\u003e This is a tool for integrating git flow with bump version to manage your python project branches and versions, it's extended from two basic tools `git flow` and `bumpversion`. \n\n#### How to Install on MAC/Linux?\n- Step1: download `gitflow-python/gffpy.sh` file into your local directory and add execution permission `chmod +x gffpy.sh` \n- Step2: `ln -sfn \"$(pwd)/gffpy.sh\" /usr/local/bin/gffpy`\n\n#### How to Install with One Command?\n- `curl \"https://raw.githubusercontent.com/shadowwalkerzh/gitflow-extension-tools/master/gitflow-python/gffpy.sh\" \u003e ~/gffpy.sh \u0026\u0026 chmod +x ~/gffpy.sh \u0026\u0026 ln -sfn ~/gffpy.sh /usr/local/bin/gffpy`\n\n#### Configuration for python project\n- install the latest version of bumpversion: `pip install --upgrade bumpversion`\n- add file `__version__.py` in root path of the project to manage version, `__version__.py`:\n```\nVERSION = '0.0.1'\n```\n- add bumpversion config file with name `.bumpversion.cfg`:\n```\n[bumpversion]\ncurrent_version = 0.0.1\ncommit = True\ntag = True\n\n[bumpversion:file:__version__.py]\n\n```\n\n#### How to use `gffpy` to mange your python project version?\n\n- ask for help: `gffpy -h`\n\n- manage your feature version\n    - start a feature branch with a new patch version: `gffpy -fs`\n    - push your changes including the version number: `git push origin {feature/branch name}`\n    - finish a feature branch: `gffpy -ff`; this action will merge current feature branch into develop and delete the feature branch from local and remote repository.\n\n- manage your release version\n    - start a release branch with a new minor/major version: `gffpy -rs`\n    - push your changes including the version number: `git push origin {release/branch name}`\n    - finish a release branch: `gffpy -rf`; this action will merge current release branch into develop and master branch, and delete the release branch from local and remote repository.\n\n- manage your hotfix version\n    - start a hotfix branch with a new patch version: `gffpy -hs`\n    - push your changes including the version number: `git push origin {hotfix/branch name}`\n    - finish a hotfix branch: `gffpy -hf`; this action will merge current hotfix branch into develop and master branch, and delete the hotfix branch from local and remote repository.\n\n#### What will it do when starting a new branch(feature/release/hotfix)?\n- feature\n    - create a new branch with prefix `feature/`\n    - switch to this feature branch\n    - update current version to next patch version\n    - commit changes\n\n- release\n    - create a new branch with prefix `release/`\n    - switch to this release branch\n    - update current version to next minor/major version\n    - commit changes\n\n- hotfix\n    - create a new branch with prefix `hotfix/`\n    - switch to this hotfix branch\n    - update current version to next minor/major version\n    - commit changes\n\n#### What will it do when finishing a new branch(feature/release/hotfix)?\n\n\u003e **Have to checkout to the specific feature/release/hotfix branch before execute finish command**\n\n- feature\n    - validate current feature branch\n    - merge to develop branch\n    - fast commit changes\n    - push changes to remote develop branch\n    - delete current feature in local and remote repository\n\n- release\n    - validate current release branch\n    - merge current release branch to master branch\n    - fast commit changes\n    - create new tag with current version number from current release branch\n    - merge current tag into develop branch\n    - push local develop changes to remote develop branch\n    - push local master changes to remote master branch\n    - delete current release in local and remote repository\n\n- hotfix\n    - validate current hotfix branch\n    - merge current hotfix branch to master branch\n    - fast commit changes\n    - create new tag with current version number from current hotfix branch\n    - merge current tag into develop branch\n    - push local develop changes to remote develop branch\n    - push local master changes to remote master branch\n    - delete current hotfix in local and remote repository\n\n#### Example (locate in project root path)\n- create a feature branch and update to next feature version: `gffpy -fs`\n- push changes to remote branch: `git push origin {feature/feature_branch}`\n- finish feature branch: `gffpy -ff`\n\n\n#### References\n\n- [npm version](https://docs.npmjs.com/cli/version)\n- [bumpversion](https://github.com/peritus/bumpversion)\n- [git-flow](https://github.com/nvie/gitflow)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshadowwalkerzh%2Fgitflow-extension-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshadowwalkerzh%2Fgitflow-extension-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshadowwalkerzh%2Fgitflow-extension-tools/lists"}