Gitflow–a Git Workflow designed around Project Release



The main branches

  • master
  • develop

Supporting branches

  • Feature-*

    May branch off from: develop
    Must merge back into: develop
    Branch naming convention: anything except master, develop,release-*, or hotfix-*

  • Release-*
    • May branch off from: develop
      Must merge back into: develop and master
      Branch naming convention: release-*

  • Hotfix-*
    • May branch off from: master
      Must merge back into: develop and master
      Branch naming convention: hotfix-*


    Git Workflows Tutorial by Atlassian


    1. Centralized Workflow

    If your developers are already comfortable with Subversion, the Centralized Workflow lets you experience the benefits of Git without having to adapt to an entirely new process. It also serves as a friendly transition into more Git-oriented workflows.

    Learn more»


    2. Feature Branch Workflow

    The Feature Branch Workflow builds on the Centralized Workflow by encapsulating new features into dedicated branches. This enables the use of pull requests as a means to discuss changes before they’re integrated into the official project.

    Learn more»


    3. Gitflow Workflow

    The Gitflow Workflow streamlines the release cycle by using isolated branches for feature development, release preparation, and maintenance. Its strict branching model also lends some much needed structure to larger projects.

    Learn more»


    4. Forking Workflow

    The Forking Workflow is a distributed workflow that takes full advantage of Git’s branching and cloning capabilities. It provides a safe, reliable way to manage large teams of developers and to accept commits from untrusted contributors.

    Learn more»


    Git Tutorial by Atlassian


    1. Git Basics

    If you’ve never used Git before, this is the place to start. The Git Basics tutorial shows you how to configure your Git installation, set up a new repository, and use the fundamental Git workflow to record revisions of your project.

    Learn more»

    2. Undoing Changes

    Being able to record the history of a software project is useless without the ability to restore old revisions. This tutorial covers how to view old commits, revert the changes they contain, and reset uncommitted changes.

    Learn more»

    3. Git Branches

    Branches are a safe, reliable way to work on multiple versions of a project within a single repository. This tutorial discusses the differences between Git’s branching model and SVN’s, and shows you how to create, view, and merge independent lines of development.

    Learn more»

    4. Rewriting Git History

    Git affords a lot of flexibility when it comes to rewriting your project history, and this can lead to some dangerous situations. In this tutorial, we’ll learn how to clean up old commits without losing snapshots or destroying Git’s collaboration workflow.

    Learn More»

    5. Remote Repositories

    Git’s ability to communicate with remote repositories is the foundation of every Git-based collaboration workflow. This tutorial covers the fundamental commands for moving commits between repositories.

    Learn more»

    Azure – How to Use Service Bus Queues


    You will learn how to

    • Configure the Application to Use Service Bus
    • How to Create a Queue
    • How to Send Messages to a Queue
    • How to Receive Messages from a Queue
    • How to Handle Application Crashes and Unreadable Messages

    Now that you’ve learned the basics of Service Bus queues, follow these links to learn more.

    The Windows Azure Service Bus provides two comprehensive messaging solutions – one, through a centralized “relay” service running in the cloud that supports a variety of different transport protocols and Web services standards, including SOAP, WS-*, and REST. The client does not need a direct connection to the on-premises service nor does it need to know where the service resides, and the on-premises service does not need any inbound ports open on the firewall.

    The second messaging solution, new in the latest release of the Service Bus, enables “brokered” messaging capabilities. These can be thought of as asynchronous, or decoupled messaging features that support publish-subscribe, temporal decoupling, and load balancing scenarios using the Service Bus messaging infrastructure. Decoupled communication has many advantages; for example, clients and servers can connect as needed and perform their operations in an asynchronous fashion.

    Connecting Windows Azure Web Sites to On-Premises Databases Using Windows Azure Service Bus


    A common use-case for a web site is to collect data for storage in a database in an enterprise environment. Likewise, the first thing most customers want to move into the cloud is their web site. Ironically, the idea of moving a whole enterprise architecture into the cloud can appear to be a daunting task. So, if one wants to host their site in the cloud but keep their data in their enterprise, what’s the solution? This post will address that question and point out how the Windows Azure Service Bus between a Windows Azure Web Site and an on-premises database can be a great glue between your web site and your enterprise.