Skip to content

Instantly share code, notes, and snippets.

@nodamu
Forked from truemagic-coder/hubflow_workflow
Created July 29, 2020 12:25
Show Gist options
  • Save nodamu/377f604eef7f9d65f93dd9e29c4dbde6 to your computer and use it in GitHub Desktop.
Save nodamu/377f604eef7f9d65f93dd9e29c4dbde6 to your computer and use it in GitHub Desktop.

Revisions

  1. @truemagic-coder truemagic-coder revised this gist Nov 5, 2014. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions hubflow_workflow
    Original file line number Diff line number Diff line change
    @@ -8,19 +8,19 @@ git hf pull - this will pull the remote commits into your local branch (don't us
    Feature Branch:
    gif hf feature start "my-feature" - this will create a feature branch on origin and local will be based off the latest develop branch (make sure to git hf update before or you will get an error if local develop and remote develop have divereged)
    git hf feature finish "my-feature" - this will delete the local and remote branches (only do this after a PR has been merged)
    git hf feature cancel "my-feature" - this will delete the local and remote branches (only do this if the feature branch was created in error)
    git hf feature cancel -f "my-feature" - this will delete the local and remote branches (only do this if the feature branch was created in error)
    git hf feature checkout "my-feature" - this will checkout the feature branch

    Hotfix Branch:
    git hf hotfix start "release-version" - this will create a hotfix branch on origin and local will be based off the latest develop branch (make sure to git hf update before or you get an error if local develop and remote devleop have divereged)
    git hf hotfix finish "release-version" - this will delete the local and remote branches and merge the commits of the hotfix branch into master and develop branches - it will also create a release tag that matches the release version on master
    git hf hotfix cancel "release-version" - this will delete the remote and local branch (only do this if the hotfix was created in error)
    git hf hotfix cancel -f "release-version" - this will delete the remote and local branch (only do this if the hotfix was created in error)
    git checkout hotfix/"release-version" - this will checkout the hotfix branch (make sure to git hf update first)

    Release Branch:
    git hf release start "release-version" - this will create a release branch on origin and local will be based off the latest develop branch (make sure to git hf update before or you get an error if local develop and remote devleop have divereged)
    git hf release finish "release-version" - this will delete the local and remote branches and merge the commits of the release branch both into develop and master - it will also create a release tag that matches the release version on master
    git hf release cancel "release-version" - this will delete the local and remote branch (only do this if the release was created in error)
    git hf release cancel -f "release-version" - this will delete the local and remote branch (only do this if the release was created in error)
    git checkout release/"release-version" - this will checkout the release branch (make sure to git hf update first)

    Preparing a PR:
  2. @truemagic-coder truemagic-coder revised this gist Nov 5, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion hubflow_workflow
    Original file line number Diff line number Diff line change
    @@ -3,7 +3,7 @@ Git Hubflow Workflow:
    Sync Branch:
    git hf update - this will update master and develop and sync remote branches with local ones (be sure not to put commits into develop or master as it will push these up)
    git hf push - this will push your commits in your local branch to the matching remote branch
    git hf pull - this will pull the remote branch commits into your local branch
    git hf pull - this will pull the remote commits into your local branch (don't use if the remote branch has been rebased - use git pull origin "your-branch" instead)

    Feature Branch:
    gif hf feature start "my-feature" - this will create a feature branch on origin and local will be based off the latest develop branch (make sure to git hf update before or you will get an error if local develop and remote develop have divereged)
  3. @truemagic-coder truemagic-coder revised this gist Nov 5, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion hubflow_workflow
    Original file line number Diff line number Diff line change
    @@ -1,7 +1,7 @@
    Git Hubflow Workflow:

    Sync Branch:
    git hf update - this will update master and develop and sync remote branches with local ones (only create and delete)
    git hf update - this will update master and develop and sync remote branches with local ones (be sure not to put commits into develop or master as it will push these up)
    git hf push - this will push your commits in your local branch to the matching remote branch
    git hf pull - this will pull the remote branch commits into your local branch

  4. @truemagic-coder truemagic-coder revised this gist Nov 4, 2014. 1 changed file with 2 additions and 1 deletion.
    3 changes: 2 additions & 1 deletion hubflow_workflow
    Original file line number Diff line number Diff line change
    @@ -33,7 +33,8 @@ Squashing Commits:
    - checkout the branch you want to squash
    - git merge-base "my-branch" develop (returns merge-base-hash)
    - git rebase -i "merge-base-hash"
    - change all commit types to "squash" from "pick" (except first) & save file
    - change all commit types to "squash" from "pick" in the text file (except first) & save file
    - if you get a no-op message in the text file and still have multiple commits then use the command git rebase -i (without the hash)
    - fix any merge conflicts
    - you should have one commit
    - force update your remote branch: git push origin "my-branch" -f
  5. @truemagic-coder truemagic-coder revised this gist Nov 4, 2014. 1 changed file with 3 additions and 1 deletion.
    4 changes: 3 additions & 1 deletion hubflow_workflow
    Original file line number Diff line number Diff line change
    @@ -23,7 +23,9 @@ git hf release finish "release-version" - this will delete the local and remote
    git hf release cancel "release-version" - this will delete the local and remote branch (only do this if the release was created in error)
    git checkout release/"release-version" - this will checkout the release branch (make sure to git hf update first)

    Preparing a PR for merging (review):
    Preparing a PR:
    - put the Aha! Ticket # in PR title with a description
    - assign to the proper reviewer
    - don't squash the commits until after reviewed
    - after review - squash the commits

  6. @truemagic-coder truemagic-coder revised this gist Nov 4, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion hubflow_workflow
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@ Git Hubflow Workflow:

    Sync Branch:
    git hf update - this will update master and develop and sync remote branches with local ones (only create and delete)
    git hf push - this will push your commits in your local branch to the matching origin branch
    git hf push - this will push your commits in your local branch to the matching remote branch
    git hf pull - this will pull the remote branch commits into your local branch

    Feature Branch:
  7. @truemagic-coder truemagic-coder renamed this gist Nov 4, 2014. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  8. @truemagic-coder truemagic-coder created this gist Nov 4, 2014.
    46 changes: 46 additions & 0 deletions hubflow_commands
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,46 @@
    Git Hubflow Workflow:

    Sync Branch:
    git hf update - this will update master and develop and sync remote branches with local ones (only create and delete)
    git hf push - this will push your commits in your local branch to the matching origin branch
    git hf pull - this will pull the remote branch commits into your local branch

    Feature Branch:
    gif hf feature start "my-feature" - this will create a feature branch on origin and local will be based off the latest develop branch (make sure to git hf update before or you will get an error if local develop and remote develop have divereged)
    git hf feature finish "my-feature" - this will delete the local and remote branches (only do this after a PR has been merged)
    git hf feature cancel "my-feature" - this will delete the local and remote branches (only do this if the feature branch was created in error)
    git hf feature checkout "my-feature" - this will checkout the feature branch

    Hotfix Branch:
    git hf hotfix start "release-version" - this will create a hotfix branch on origin and local will be based off the latest develop branch (make sure to git hf update before or you get an error if local develop and remote devleop have divereged)
    git hf hotfix finish "release-version" - this will delete the local and remote branches and merge the commits of the hotfix branch into master and develop branches - it will also create a release tag that matches the release version on master
    git hf hotfix cancel "release-version" - this will delete the remote and local branch (only do this if the hotfix was created in error)
    git checkout hotfix/"release-version" - this will checkout the hotfix branch (make sure to git hf update first)

    Release Branch:
    git hf release start "release-version" - this will create a release branch on origin and local will be based off the latest develop branch (make sure to git hf update before or you get an error if local develop and remote devleop have divereged)
    git hf release finish "release-version" - this will delete the local and remote branches and merge the commits of the release branch both into develop and master - it will also create a release tag that matches the release version on master
    git hf release cancel "release-version" - this will delete the local and remote branch (only do this if the release was created in error)
    git checkout release/"release-version" - this will checkout the release branch (make sure to git hf update first)

    Preparing a PR for merging (review):
    - don't squash the commits until after reviewed
    - after review - squash the commits

    Squashing Commits:
    - checkout the branch you want to squash
    - git merge-base "my-branch" develop (returns merge-base-hash)
    - git rebase -i "merge-base-hash"
    - change all commit types to "squash" from "pick" (except first) & save file
    - fix any merge conflicts
    - you should have one commit
    - force update your remote branch: git push origin "my-branch" -f

    Resolving merge conflicts with the develop branch that are not squashing related (generally on PRs - auto-merge will show as disabled):
    - git hf update
    - git rebase develop (while in your branch)
    - resolve any merge conflicts

    Rules to remember:
    - don't ever git merge branches together manually (should never run command - git merge)
    - squash only after review and before merging PR into develop