Git Flow / GitHub Flow Setup for Team Website Development

Our company is engaged in the development, support and maintenance of sites of any complexity. From simple one-page sites to large-scale cluster systems built on micro services. Experience of developers is confirmed by certificates from vendors.
Development and maintenance of all types of websites:
Informational websites or web applications
Business card websites, landing pages, corporate websites, online catalogs, quizzes, promo websites, blogs, news resources, informational portals, forums, aggregators
E-commerce websites or web applications
Online stores, B2B portals, marketplaces, online exchanges, cashback websites, exchanges, dropshipping platforms, product parsers
Business process management web applications
CRM systems, ERP systems, corporate portals, production management systems, information parsers
Electronic service websites or web applications
Classified ads platforms, online schools, online cinemas, website builders, portals for electronic services, video hosting platforms, thematic portals

These are just some of the technical types of websites we work with, and each of them can have its own specific features and functionality, as well as be customized to meet the specific needs and goals of the client.

Showing 1 of 1 servicesAll 2065 services
Git Flow / GitHub Flow Setup for Team Website Development
Simple
~1 business day
FAQ
Our competencies:
Development stages
Latest works
  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1161
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1041
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    822
  • image_crm_chasseurs_493_0.webp
    CRM development for Chasseurs
    847
  • image_website-sbh_0.png
    Website development for SBH Partners
    999
  • image_website-_0.png
    Website development for Red Pear
    451

Git Flow / GitHub Flow Setup for Team Development

Without agreed branch strategy, teams of 3+ inevitably get main conflicts, unclear deployment timing, and regular "who broke production" incidents. Git Flow and GitHub Flow — two proven approaches with different trade-offs.

Git Flow: When It Fits

Git Flow makes sense with: infrequent releases (weekly or less), need to support multiple versions, complex hotfix processes.

Branch structure:

  • main — production-ready code only, version tags
  • develop — integration branch, source for feature branches
  • feature/ticket-123-user-auth — feature development
  • release/1.5.0 — release preparation (bugfixes, version updates)
  • hotfix/1.4.1-payment-fix — urgent production fixes
# Initialize Git Flow
git flow init

# Start feature
git flow feature start user-authentication

# Finish feature (merge to develop)
git flow feature finish user-authentication

# Create release
git flow release start 1.5.0
# ... final fixes, update CHANGELOG
git flow release finish 1.5.0

GitHub Flow: When It Fits

GitHub Flow is simpler and better for continuous delivery: deploy happens on every main merge.

Rules:

  1. main — always deployable
  2. Everything happens in branches from main
  3. Name branches clearly: feat/user-dashboard, fix/checkout-crash, chore/update-deps
  4. Open PR for any change
  5. Deploy from branch, merge only after production verification

Naming Conventions

Unified branch naming reduces cognitive load:

feat/JIRA-123-short-description    # new feature
fix/JIRA-456-bug-description       # bug fix
chore/update-node-20               # technical tasks
docs/update-api-reference          # documentation
refactor/extract-payment-service   # refactoring

Branch Protection Rules

In GitHub Settings → Branches configure main protection:

  • Require pull request before merging — direct push to main forbidden
  • Require approvals: 1 — minimum one approval from another developer
  • Require status checks to pass — CI must pass
  • Require branches to be up to date — branch must be current before merge
  • Do not allow bypassing the above settings — applies even to administrators

.gitconfig and Templates

Commit message template for team:

# .gitmessage
# Type: feat, fix, docs, chore, refactor, test, perf
# feat(auth): add OAuth via Google
#
# Body (optional): what and why, not how
#
# JIRA: PROJ-123
git config --global commit.template ~/.gitmessage

Timeline

Choosing and documenting process, configuring branch protection rules, templates and hooks for team — 0.5–1 day.