Git Reset Selected Features

I am trying to introduce a git thread to my team. We are a rather small team and quite mobile. We want to release once a day, and that means we have limited time to test all the changes of the day. A business group wants to be able to control features released, although not perfect.

Git thread doesn't seem to fit very well. After you have cut the liberation branch, work out what is the best way to combine the selected functions for mastering. Cherry chose the only option? Is there a better way?

+7
source share
2 answers

Standard git flow processing is not ideal if a business group wants to control what features are in the next version. But you will have the same problem with other branching mechanisms.

The default structure for git flow is that you create a function branch for each new function. After you finish creating (and testing) a new function, you merge the branch back into your development branch and then delete the function branch. This feature will then be included in the next release.

If the function should not be included in the next version, you should not merge the function branch back into the development branch. This is the best way to ensure that it will not be turned on. It also prevents other developers from creating code that uses (or otherwise requires) a new function.

I would not recommend cherry picking. First, a function can (and often will) have several commits, and it is easy to forget. Secondly, if function B uses code that has been added to function A, and management wants to release function B without releasing function A, you will most likely find that function B is broken. And these dependencies are not always easy to detect.

It makes sense that management wants to prioritize new functions, but each function should be merged back into the development branch shortly after its completion (and tested).

+7
source

If each function has its own branch, simply merge this function branch.

0
source

All Articles