version control - Clean git deployment workflow -
we trying implement automated workflow deployment based on git. currently, have 3 environments: development/staging/production. idea mark environments branches of same name (except production=master), have developed small cli takes commands this:
cli deploy -e production -t patch
this runs bunch of internal tasks and, final step, merges local branch correct environment branch (in case master), bumps version in package.json
according semver specification (in case, patch level version increment major.minor.patch part) , tags commit appropriately.
this works well: know deployed in environment, can rollback , have taken steps out of individual developers mistakes.
however, results in less pretty git log. first off, branch master comprised of merge commits (merge branch 'hotfix'
, merge branch release-2.0.0
, etc.), since decided keep branch history intact. way supposed in git flow model?
also, bump version after merge, master branch looks like: merge branch 'hotfix'
, bumping version 2.3.1
.
this looks quite ugly and, project grows, starts becoming more confusing. i'm sure there must cleaner way this, can't figure out adjust.
Comments
Post a Comment