{"id":13454010,"url":"https://github.com/petervanderdoes/gitflow-avh","last_synced_at":"2025-12-16T19:32:11.038Z","repository":{"id":2088870,"uuid":"3028781","full_name":"petervanderdoes/gitflow-avh","owner":"petervanderdoes","description":"AVH Edition of the git extensions to provide high-level repository operations for Vincent Driessen's branching model","archived":true,"fork":false,"pushed_at":"2023-08-17T11:06:35.000Z","size":1794,"stargazers_count":5425,"open_issues_count":170,"forks_count":527,"subscribers_count":156,"default_branch":"develop","last_synced_at":"2024-12-28T14:34:43.389Z","etag":null,"topics":["git","git-flow","shell","workflow"],"latest_commit_sha":null,"homepage":"http://nvie.com/posts/a-successful-git-branching-model/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/petervanderdoes.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2011-12-21T18:31:32.000Z","updated_at":"2024-12-28T06:15:06.000Z","dependencies_parsed_at":"2022-07-08T18:53:48.039Z","dependency_job_id":"f47b6cc3-534e-4986-a801-b3e042b975f9","html_url":"https://github.com/petervanderdoes/gitflow-avh","commit_stats":{"total_commits":1006,"total_committers":77,"mean_commits":"13.064935064935066","dds":0.5129224652087475,"last_synced_commit":"40fc2df960d034cb57dd277af7501be6884f767e"},"previous_names":["petervanderdoes/gitflow"],"tags_count":34,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petervanderdoes%2Fgitflow-avh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petervanderdoes%2Fgitflow-avh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petervanderdoes%2Fgitflow-avh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petervanderdoes%2Fgitflow-avh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/petervanderdoes","download_url":"https://codeload.github.com/petervanderdoes/gitflow-avh/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234563117,"owners_count":18853053,"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","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":["git","git-flow","shell","workflow"],"created_at":"2024-07-31T08:00:50.271Z","updated_at":"2025-09-28T20:31:42.190Z","avatar_url":"https://github.com/petervanderdoes.png","language":"Shell","readme":"# git-flow (AVH Edition)\n\nA collection of Git extensions to provide high-level repository operations\nfor Vincent Driessen's [branching model](http://nvie.com/git-model \"original\nblog post\"). This fork adds functionality not added to the original branch.\n\n\n## Getting started\n\nFor the best introduction to get started with `git flow`, please read Jeff\nKreeftmeijer's blog post:\n\n[http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/](http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/)\n\nOr have a look at one of these screen casts:\n\n* [How to use a scalable Git branching model called git-flow](http://buildamodule.com/video/change-management-and-version-control-deploying-releases-features-and-fixes-with-git-how-to-use-a-scalable-git-branching-model-called-gitflow) (by Build a Module)\n* [A short introduction to git-flow](http://vimeo.com/16018419) (by Mark Derricutt)\n* [On the path with git-flow](https://vimeo.com/codesherpas/on-the-path-gitflow) (by Dave Bock)\n\nA quick cheatsheet was made by Daniel Kummer:\n\n[http://danielkummer.github.io/git-flow-cheatsheet/](http://danielkummer.github.io/git-flow-cheatsheet/)\n\n## Installing git-flow\n\nSee the Wiki for up-to-date [Installation Instructions](https://github.com/petervanderdoes/gitflow-avh/wiki/Installation).\n\n\n## Integration with your shell\n\nFor those who use the [Bash](http://www.gnu.org/software/bash/) or [ZSH](http://www.zsh.org)\nshell, you can use my [fork of git-flow-completion](https://github.com/petervanderdoes/git-flow-completion)\nwhich includes several additions for git-flow (AVH Edition), or you can use the\noriginal [git-flow-completion](http://github.com/bobthecow/git-flow-completion)\nproject by [bobthecow](http://github.com/bobthecow). Both offer tab-completion\nfor git-flow subcommands and branch names with my fork including tab-completion\nfor the commands not found in the original git-flow.\n\n\n## FAQ\n\n* See the [FAQ](http://github.com/petervanderdoes/gitflow-avh/wiki/FAQ) section\nof the project Wiki.\n* Version Numbering Scheme.  \nStarting with version 1.0, the project uses the following scheme:\n\\\u003cMAJOR\\\u003e.\\\u003cMINOR\\\u003e.\\\u003cREVISION\\\u003e\\\n* AVH is the acronym of \"A VirtualHome\"\n\n## Please help out\n\nThis project is under constant development. Feedback and suggestions are very\nwelcome and I encourage you to use the [Issues\nlist](http://github.com/petervanderdoes/gitflow-avh/issues) on Github to provide that\nfeedback.\n\nFeel free to fork this repository and to commit your additions. For a list of\nall contributors, please see the [AUTHORS](AUTHORS) file.\n\nAny questions, tips, or general discussion can be posted to the Google group:\n[http://groups.google.com/group/gitflow-users](http://groups.google.com/group/gitflow-users)\nThis is the original group set up to support the nvie branch, but I am monitoring\nthe list as well for any questions related to my version.\nWhen you do post a question on the list please indicate which version you are,\nusing the complete version number.\n\n## Contributing\n\nFork the repository.  Then, run:\n\n```shell\ngit clone -b master git@github.com:\u003cusername\u003e/gitflow-avh.git\ncd gitflow-avh\n```\n\nThe `-b master` switch has to be added since the fork operation automatically\nclones the `develop` branch of the official gitflow repository and cloning it\nresults in a local repository with just a `develop` branch.\n\nIf you do not have gitflow installed yet install it by running `make \u0026\u0026 make install`.\n\nAfter that initialize the local gitflow repository with gitflow itself:\n\n```shell\ngit flow init -d\ngit flow feature start \u003cyour feature\u003e\n```\n\nThen, do work and commit your changes.\n\n```shell\ngit flow feature publish \u003cyour feature\u003e\n```\n\nWhen done, open a pull request to your feature branch.\n\n## License terms\n\ngit-flow is published under the FreeBSD License, see the\n[LICENSE](LICENSE) file. Although the FreeBSD License does not require you to\nshare any modifications you make to the source code, you are very much\nencouraged and invited to contribute back your modifications to the community,\npreferably in a Github fork, of course.\n\n\n## git flow usage\n\n### Initialization\n\nTo initialize a new repo with the basic branch structure, use:\n\n    git flow init [-d]\n\nThis will then interactively prompt you with some questions on which branches\nyou would like to use as development and production branches, and how you\nwould like your prefixes be named. You may simply press Return on any of\nthose questions to accept the (sane) default suggestions.\n\nThe ``-d`` flag will accept all defaults.\n\n![Screencast git flow init](http://i.imgur.com/lFQbY5V.gif)\n\n### Creating feature/release/hotfix/support branches\n\n* To list/start/finish/delete feature branches, use:\n\n```shell\ngit flow feature\ngit flow feature start \u003cname\u003e [\u003cbase\u003e]\ngit flow feature finish \u003cname\u003e\ngit flow feature delete \u003cname\u003e\n```\n\n  For feature branches, the `\u003cbase\u003e` arg must be a branch, when omitted it defaults to the develop branch.\n\n* To push/pull a feature branch to the remote repository, use:\n\n```shell\ngit flow feature publish \u003cname\u003e\ngit flow feature track \u003cname\u003e\n```\n\n* To list/start/finish/delete release branches, use:\n\n```shell\ngit flow release\ngit flow release start \u003crelease\u003e [\u003cbase\u003e]\ngit flow release finish \u003crelease\u003e\ngit flow release delete \u003crelease\u003e\n```\n\n  For release branches, the `\u003cbase\u003e` arg must be a branch, when omitted it defaults to the develop branch.\n\n* To list/start/finish/delete hotfix branches, use:\n\n```shell\ngit flow hotfix\ngit flow hotfix start \u003crelease\u003e [\u003cbase\u003e]\ngit flow hotfix finish \u003crelease\u003e\ngit flow hotfix delete \u003crelease\u003e\n```\n\n  For hotfix branches, the `\u003cbase\u003e` arg must be a branch, when omitted it defaults to the production branch.\n\n* To list/start support branches, use:\n\n```shell\ngit flow support\ngit flow support start \u003crelease\u003e \u003cbase\u003e\n```\n\n  For support branches, the `\u003cbase\u003e` arg must be a branch, when omitted it defaults to the production branch.\n\n### Share features with others\n\nYou can easily publish a feature you are working on. The reason can be to allow other programmers to work on it or to access it from another machine. The publish/track feature of gitflow simplify the creation of a remote branch and its tracking.\n\nWhen you want to publish a feature just use:\n```shell\ngit flow feature publish \u003cname\u003e\n```\n\nor, if you already are into the `feature/\u003cname\u003e` branch, just issue:\n```shell\ngit flow feature publish\n```\n\nNow if you execute `git branch -avv` you will see that your branch `feature/\u003cname\u003e` tracks `[origin/feature/\u003cname\u003e]`. To track the same remote branch in another clone of the same repository use:\n```shell\ngit flow feature track \u003cname\u003e\n```\n\nThis will create a local feature `feature/\u003cname\u003e` that tracks the same remote branch as the original one, that is `origin/feature/\u003cname\u003e`.\n\nWhen one developer (depending on your work flow) finishes working on the feature he or she can issue `git flow feature finish \u003cname\u003e` and this will automatically delete the remote branch. All other developers shall then run:\n```shell\n    git flow feature delete \u003cname\u003e\n```\n\nto get rid of the local feature that tracks a remote branch that no more exist.\n\n### Share hotfixes with others\n\nYou can publish an hotfix you are working on. The reason can be to allow other programmers to work on it or validate it or to access it from another machine.\n\nWhen you want to publish an hotfix just use (as you did for features):\n```shell\ngit flow hotfix publish \u003cname\u003e\n```\n\nor, if you already are into the `hotfix/\u003cname\u003e` branch, just issue:\n```shell\ngit flow hotfix publish\n```\n\nOther developers can now update their repositories and checkout the hotfix:\n```shell\ngit pull\ngit checkout hotfix/\u003cname\u003e\n```\nand eventually finish it:\n```shell\ngit flow hotfix finish\n```\n\n\n### Using Hooks and Filters\n\nFor a wide variety of commands hooks or filters can be called before and after\nthe command.  \nThe files should be placed in .git/hooks  \nIn the directory hooks you can find examples of all the hooks available.\n\n## Showing your appreciation\n\nOf course, the best way to show your appreciation for the git-flow tool itself\nremains contributing to the community.  If you'd like to show your appreciation\nin another way, however, consider donating through PayPal:\n\n[![PayPal][2]][1]\n\n[1]: https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=S85FXJ9EBHAF2\u0026lc=US\u0026item_name=gitflow\u0026item_number=gitflow\u0026no_note=0\u0026cn=Add%20special%20instructions%20to%20the%20seller\u0026no_shipping=1\u0026rm=1\u0026return=https%3a%2f%2fgithub%2ecom%2fpetervanderdoes%2fgitflow\u0026cancel_return=https%3a%2f%2fgithub%2ecom%2fpetervanderdoes%2fgitflow\u0026currency_code=USD\u0026bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted\n\n[2]: https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif\n","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=S85FXJ9EBHAF2\u0026lc=US\u0026item_name=gitflow\u0026item_number=gitflow\u0026no_note=0\u0026cn=Add%20special%20instructions%20to%20the%20seller\u0026no_shipping=1\u0026rm=1\u0026return=https%3a%2f%2fgithub%2ecom%2fpetervanderdoes%2fgitflow\u0026cancel_return=https%3a%2f%2fgithub%2ecom%2fpetervanderdoes%2fgitflow\u0026currency_code=USD\u0026bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted"],"categories":["Shell","git","workflow","Command Line Utilities","🌊 Git Flow","shell"],"sub_categories":["Tools","Clean Ignored Files"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetervanderdoes%2Fgitflow-avh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpetervanderdoes%2Fgitflow-avh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetervanderdoes%2Fgitflow-avh/lists"}