How to work with Git branches during development - exam105/backend GitHub Wiki

Team will follow following development workflow

  • Developer will checkout Master branch and create a new Feature branch.
  • Developer can either create the new feature branch on remote repo and pull the branch on local machine OR, can perform the same steps on local machine and push this new feature branch to remote repo.
  • Development will be done on local branch and all commits will be done on local machine.
  • Once the feature is complete and ready for push, the developer will push it to remote repo. If there is a need to push the code to remote for testing purpose before the feature is completely finished, that is also fine.
  • The developer will open the Jenkins page and run the relevant job.
  • The job will test, build and deploy the code to the target server (Development, Test)
  • Feature will be tested thoroughly by the QA staff and report the result.
  • If QA passes the test, the feature code is ready to be merged to master branch.
  • The owner of the feature will merge the code to the master branch of the repo.
  • Master branch should only have stable code because code will be moved to production server from master branch only