Skip to content
bartaz edited this page Sep 13, 2010 · 20 revisions

This is a document for Taskboard developers that describes development practices. It’s intended to show how do we use Kanban methodology with Git repository.

Repository branches

  1. story branches – each story or issue should be developed in it’s own branch. This branch should remain local. If there is a need to share the changes with other developers patches should be used (or pulls between developers’ repositories)
  2. dev – development branch is intended for code that is still in progress (not yet checked by Product Owner). If the implementation of story/issue is completed it’s branch should be merged do dev branch.
  3. done – this should store only fully completed stories/issues. The stories/issues that where in dev branch and where successfully checked by Product Owner should be merged to done branch.
  4. master – we use master branch as a release branch – we merge the dev branch to master when we do a release

Development Process

Setting up workspace

  1. Clone the repository:
    git clone git@github.com:CognifideLabs/taskboard.git
  2. Go into taskboard directory (all the other commands are done there):
    cd taskbaord
  3. Pull dev and done branches:
    git pull origin dev:dev
    git pull origin done:done
  4. Go to dev branch:
    git checkout dev
  5. Delete local master branch (just not to merge something by accident):
    git branch -d master

Choosing a story/issue to develop

  1. Take the first card from the Queue column
  2. Move it into In progress column
  3. Add a tag with you initials to assign this issue to yourself

Developing

Create a local branch for the issue (from done branch).

  1. Make sure you are in done branch:
    git checkout done
  2. Create a branch for the story (let’s call it story-branch):
    git branch story-branch
  3. Move to the story branch:
    git checkout story-branch

Do all your development in the story-branch. Here is the list of some git commands that may be useful:

  1. To check what files are changed:
    git status
  2. To add files to next commit:
    git add 
  3. To commit your changes to your local repo (please add issue number to commit message):
    git commit -m “#666 this is some evil comment”

When you’ve developed a useful piece of code (implemented a story, fixed a bug) that is ready to be checked by Product Owner, merge your changes to dev branch.

  1. Go to dev branch:
    git checkout dev
  2. Make sure it’s up to date:
    git pull origin dev:dev
  3. If it’s OK merge your story-branch:
    git merge story-branch
  4. Push your changes to remote repository:
    git push origin dev:dev
  5. After few minutes check your email to see if you haven’t broken the build ;)

Clone this wiki locally