Keeping releases / branches in a moving rhythm?

We have a software product that is developing in the rhythm of customer needs and a more general roadmap.

Since we are in the SCRUM project environment, the question often arises that a new function makes its way to the product, and then we are faced with a choice:

  • implementation of this function in an already released branch (not really a point with a branch, then)
  • creating a new branch - but then we have a branch every three weeks, and it is no longer supported.

Not releasing a new function, this is not an option, customers do not want to wait for the long-term milestone plan to get the functions they need, and it is not always able to move this function in the client module - sometimes we need to change the product core ...

Does anyone have any feedback on good practice given such limitations?

+3
source share
4 answers

I would suggest the following that we use in my current environment: consider an unplanned function as if you fixed a security problem.

  • Each planned release (e.g. 3.0, 3.1) gets its own version number and its own tag in the source code. After its release, you do not touch it.
  • New features after the planned release will move to the next planned version (for example, 3.2).
  • If you must change the released version of the code, this is an “unplanned release” and will receive the patch version number (for example, 3.1.1, 3.1.2). All changes:
    • , (, 3.1.1 3.1.0, 3.1.2 3.1.1)
    • ,
  • ( ) .

, , , . - - .

+7

, ('new_feature_branch'), , (, 'release_branch')

, release_branch , ( , , , , )

, ( 3 ) , . , release_branch (, ). .

, .

, , , , , .

+1

3 .

  • : , , . - , . (.. 1.19.0 → 1.19.1).
  • QA: , , . , , QA .
  • : .

, (- ), . , , .

​​ .

+1

, Scrum. Scrum , , ( , - ). , , , , . .

The only way I know this is to have comprehensive, fully automated test suites for both clients and developers (for example, Extreme Programming prescribes).

I am not sure why in this case you will need branches, but I also do not understand why it will not be served. In my experience, a shorter branch is better.

+1
source

Source: https://habr.com/ru/post/1698924/


All Articles