-
Notifications
You must be signed in to change notification settings - Fork 0
Topic
Vasily Makarov edited this page Mar 21, 2018
·
2 revisions
Topic is a sequence of commits grouped by purpose of its changes and merged into develop branch. Topics are versioned. User can continue topic "a" and when finished, updated topic will be called "a_v2". Same topic may be present in multiple iterations. It is up to user to keep same versions of a topic to have corresponding contents across iterations. Typical topic lifecycle looks like:
- Developers start topics with
git af start TopicName
. This creates iteration/TopicName branch in developers local repo - When intended changes are done, developer finishes topic development with
git af topic finish
. This command merges topic branch into iteration/develop branch. - Developer pushes his changes via
git af push
. - Maintainer merges topics he consider good (useful for project/passing code review/not breaking things. Depends on the exact workflow) into staging branch via
git af checkout staging && git af merge TopicName
. - Later, maintainer merges topics he consider ready for end-user into master branch (e.g.: maintainer could stabilize staging and take all its topic into master via
git checkout master && git af merge -a
). - Release manager could take a topic from master, staging or develop into it's release branch. E.g:
git af merge TopicName -s staging
. - If at some point it turned out that topic is flawed (buggy/underdone), developer could try to fix it by continuing (
git af continue TopicName
) the topic and merging new version again into develop branch. The staging-master-release sequence has to be repeated for this new version.