Monday, December 29, 2014

Git Flow finishing a hotfix

Once the hotfix development / fix is completed, we have to finish the hotfix branch, while finishing a hotfix the updates (commits) from this branch will be merged with develop and master branches and the hotfix branch will be deleted.

In the post Git flow starting a new Hotfix, we saw on how to start a new hotfix using git flow, and in the post “Git flow adding commits to a new Hotfix” we saw on how to add / update changes to the new hotfix. In this post we shall see on how to finish the changes made to the new hotfix.

Git flow adding commits to a new Hotfix

In the post Git flow starting a new Hotfix, we saw on how to start a new hotfix using git flow, in this post we shall see on adding / updating changes to the new hotfix.
In this post I will be adding a new file to an existing hotfix branch. Let me add a new file “Git Hotfix.docx” to the new hotfix branch Hotfix1.

Sunday, December 28, 2014

Git flow starting a new Hotfix

A Hotfix is started when there are bugs / issues in production. Starting a hotfix creates a new hotfix branch from the master branch. The testing and big fixing activities will be carried out in the hotfix branch. Once the code is stable without any issues, the hotfix is finished; this will merge the changes made to the hotfix branch to develop and main branches and delete the hotfix branch.

In this post we shall see on how to create a new release (branch) and start working on the new release. In the post Creating a Git-Flow branching structure usingSource Tree, we have seen on how to setup Git-flow. Once the setup is done you can follow the below steps to create a new release branch.

Git Flow finishing a release

Once the release development / fix is completed, we have to finish the release branch, while finishing a release the updates (commits) from this branch will be merged with develop and master branches and the release branch will be deleted.

In the post Git flow starting a new Release, we saw on how to start a new release using git flow, and in the post Git flow adding commits to a new Release, we saw on how to add / update changes to the new release. In this post we shall see on how to finish the changes made to the new release.

1.  Open Source Tree.
2. Click on the Git Flow icon in the tool bar.


3.   A pop-up window appears, with the available options.


4. In our case we have a release branch “Release1”, we will finish changes done in this branch by clicking on the Finish Release button.

5.  Select the release to be finished, in our case the release is Release1


6.  Make sure that the delete branch checkbox is checked, this will delete the release branch post-merger and will make a clean branching structure. Click Ok.
7. Notice that the new release branch is removed, the changes done in this branch are now merged to the develop and master branches and the release branch is deleted.


8.   Push the changes, so that the branch merger and deletion updates are pushed to the remote repository.

9. If the release branch is not deleted from the remote repository, you can manually delete this branch from the remote repository since the changes are already merged to the develop and master branches.



10.  That’s it the new release is now merged with the main develop and master branches and is now ready for production deployment.

Git flow adding commits to a new Release

In the post Git flow starting a new Release, we saw on how to start a new release using git flow, in this post we shall see on adding / updating changes to the new release.

In this post we will add a new file to an existing release branch. Let me add a new file “Git Release.docx” to the new release branch Release1.

1.    Open Source Tree.
2.    Make sure that the new release branch to which changes are to be make is checked out as the current branch.
3.    Add a new file / update an existing file in the local working folder.
4.    I am going to add a new file “Git Release.docx” to the working folder.
5.    Stage and commit the new file to the repository.

6.    Push the changes to the remote repository.



7.    This will push the added / updated changes to the remote repository.

Git flow starting a new Release

A release is started when a feature development is completed and merged with the develop branch, once this is done a new release is created from the develop branch. The testing and big fixing activities will be carried out in the release branch. Once the code is stable without any issues, the release is finished; this will merge the changes made to the release branch to develop and main branches and delete the release branch.

In this post we shall see on how to create a new release (branch) and start working on the new release. In the post Creating a Git-Flow branching structure using Source Tree, we have seen on how to setup Git-flow. Once the setup is done you can follow the below steps to create a new release branch.
1. Open Source Tree.
2. Click on the Git Flow icon in the tool bar.



3. A pop-up window appears, with the available options.



4. Click on the Start new Release button.
5. Give a name to the new release, I have given the name as “Release1”, select the latest development branch option and click Create.



6. This will create a new release and set the new release branch as the current working branch.



7.    Any updates, commits done will be added to this branch.
8. Push the changes, so that the new branch gets added to the remote repository, so that other developers working on the new release can also use the same branch.



9.    Now the new release is ready for development / bug fixing.



Monday, December 22, 2014

Git Flow finishing a release

Once the release development / fix is completed, we have to finish the release branch, while finishing a release the updates (commits) from this branch will be merged with develop and master branches and the release branch will be deleted.

In the post Git flow starting a new Release, we saw on how to start a new release using git flow, and in the post “Git flow adding commits to a new Release” we saw on how to add / update changes to the new release. In this post we shall see on how to finish the changes made to the new release.
         

         1.  Open Source Tree.
         2. Click on the Git Flow icon in the tool bar.
         
        3.           A pop-up window appears, with the available options.
        4.            In our case we have a release branch “Release1”, we will finish changes done in this                branch by clicking on the Finish Release button.

        5. Select the release to be finished, in our case the release is Release1

        6.  Make sure that the delete branch checkbox is checked, this will delete the release                   branch post-merger and will make a clean branching structure. Click Ok.

       7. Notice that the new release branch is removed, the changes done in this branch                      are now merged to the develop and master branches and the release branch is                      deleted.               

        8. Push the changes, so that the branch merger and deletion updates are pushed to                       the remote repository.                 


        9.  If the release branch is not deleted from the remote repository, you can manually                  delete this branch from the remote repository since the changes are already merged                to the develop and master branches.

           10.            That’s it the new release is now merged with the main develop and master                             branches and is now ready for production deployment.




Git flow adding commits to a new Release

In the post Git flow starting a new Release, we saw on how to start a new release using git flow, in this post we shall see on adding / updating changes to the new release.

In this post I will be adding a new file to an existing release branch. Let me add a new file “Git Release.docx” to the new release branch Release1.

1.    Open Source Tree.
2.    Make sure that the new release branch to which changes are to be make is checked out as the current branch.
3.    Add a new file / update an existing file in the local working folder.
4.    I am going to add a new file “Git Release.docx” to the working folder.
5.    Stage and commit the new file to the repository.
               6. Push the changes to the remote repository.


7.    This will push the added / updated changes to the remote repository.

Git flow starting a new Release

A release is started when a feature development is completed and merged with the develop branch, once this is done a new release is created from the develop branch. The testing and big fixing activities will be carried out in the release branch. Once the code is stable without any issues, the release is finished; this will merge the changes made to the release branch to develop and main branches and delete the release branch.

In this post we shall see on how to create a new release (branch) and start working on the new release. In the post Creating a Git-Flow branching structure using Source Tree, we have seen on how to setup Git-flow. Once the setup is done you can follow the below steps to create a new release branch.

1. Open Source Tree.
2. Click on the Git Flow icon in the tool bar.


3. A pop-up window appears, with the available options.


4. Click on the Start new Release button.
5. Give a name to the new release, I have given the name as “Release1”, select the latest development branch option and click Create.

6.    This will create a new release and set the new release branch as the current working branch.

7.    Any updates, commits done will be added to this branch.
8. Push the changes, so that the new branch gets added to the remote repository, so that other 
developers working on the new release can also use the same branch.

9.    Now the new release is ready for development / bug fixing.

Sunday, December 21, 2014

Git Flow finishing a feature

Once the feature development is completed, we have to finish the feature branch, while finishing a feature the updates (commits) from this branch will be merged with develop branch and the feature branch will be deleted.

In the post Git flow starting a new Feature, we saw on how to start a new feature using git flow, and in the post Git flow adding commits to a new Feature we saw on how to add / update changes to the new feature. In this post we shall see on how to finish the changes made to the new feature.

1.    Open Source Tree.
2.    Click on the Git Flow icon in the tool bar.


3.    A pop-up window appears, with the available options.

4.    In our case we have a feature branch “Feature1”, we will finish changes done in this branch by clicking on the Finish Feature button.

5.    Select the feature to be finished, in our case the feature is Feature1

6.    Make sure that the delete branch checkbox is checked, this will delete the feature branch post-merger and will make a clean branching structure. Click Ok.
       7. Notice that the new feature branch is removed, the changes done in this branch are
now merged to the develop branch and the feature branch is deleted.

8.    Push the changes, so that the branch merger and deletion updates are pushed to the remote repository.


9. If the feature branch is not deleted from the remote repository, you can manually delete this branch from the remote repository since the changes are already merged to the develop branch.


10. That’s it the new feature is now merged with the main develop branch and is now ready for release.


Git flow adding commits to a new Feature

In the post Git flow starting a new Feature, we saw on how to start a new feature using git flow, in this post we shall see on adding / updating changes to the new feature.

In this post I will be adding a new file to an existing feature branch. Let me add a new file “Git Feature.docx” to the new feature branch feature1.

1.    Open Source Tree.
2.    Make sure that the new feature branch to which changes are to be make is checked out as the current branch.
3.    Add a new file / update an existing file in the local working folder.
4.    I am going to add a new file “Git Feature.docx” to the working folder.
5.    Stage and commit the new file to the repository.
          6. Push the changes to the remote repository.



7. This will push the added / updated changes to the remote repository.

Git flow starting a new Feature

A feature is started when we want to develop a new module to an application, creating a feature creates a new branch from the develop branch, all additions/changes done for the feature will be committed to the feature branch, finally when the feature development is completed, the feature is finished, this will merge the changes (commits) made to the develop branch and delete the feature branch.

In this post we shall see on how to create a new feature (branch) and start working on the new feature. In the post Creating a Git-Flow branching structure usingSource Tree, we have seen on how to setup Git-flow. Once the setup is done you can follow the below steps to create a new feature branch.

1. Open Source Tree.
2. Click on the Git Flow icon in the tool bar.


3. A pop-up window appears, with the available options.

4.    Click on the Start new Feature button.
5.    Give a name to the new feature, I have given the name as “Feature1”, select the latest development branch option and click Create.


6.  This will create a new feature and set the new feature branch as the current working branch.

7.    Any updates, commits done will be added to this branch.
8. Push the changes, so that the new branch gets added to the remote repository, so that other developers working on the new feature can also use the same branch.


9.    Now the new feature is ready for development.

Creating a Git-Flow branching structure using Source Tree

Git Flow is an add-on package to Git, which provides a set of commands to create and manage the branches. SourceTree supports Git Flow, it provides as icon in the tool bar to create and manage Git Flow.

Let us create a branch structure proposed by Git-flow for one of the repository, I have a repository called GitDocuments, and there is only one branch origin/master, now let us use Source Tree and create a Git-flow based branching model for this repository.

Git-flow working branches

Git Flow is an add-on package to Git, which provides a set of commands to create and manage the branches. By default Got flow creates the following 2 branches

What is Git Flow

Git flow is a branching model proposed by Vincent Driessen, this model aims in standardizing the branching and merging operations for a project. If there is not fixed model then, every project will have its own set of branched which will not be easy for others to understand, hence it is advisable to go for a standard set of branches to make the version control clean and reusable.

Git flow, abstracts the development team from the underlying Git commands, they can work on the repository using the Git-flow commands instead of directly using the underlying Git commands.

Git flow defines the following the following branches for a repository.

Pull in SourceTree

The pull command in Git/Source Tree is used to get the changes (commits) from remote repository to the local repositories, the changes are fetched and merged with the local working folder.

Pull can be done on a specific branch or on all the branches, by selecting the appropriate option. Use the following steps to pull the latest details (commits) from a remote branch to the local working folder using Source tree.

Fetch in SourceTree

The fetch command in Git/Source Tree is used to get the changes (commits) from remote repository to the local repositories, the local working copy is not affected as a result of executing the Fetch command, this gives an opportunity to get the remote changes and do a comparison with the local version before we merge and commit the local changes.

Fetch can be done on a specific branch or on all the branches, by selecting the appropriate option. Use the following steps to fetch the latest details (commits) from a remote branch to the local branch using Source tree.