Git workflow discussion
伊谢尔伦
伊谢尔伦 2017-05-02 09:37:28
0
3
649

After looking at several git workflows, I feel that none of them are in line with my current process. Currently we have three environments: production environment, test environment, and local environment. Developers develop locally, push to the test environment, and testers test and accept in the test environment.

At present, we only have a small team of more than a dozen people. We do not have a specific version release process, so we do not have a specific version to be released on a certain day or a task to be completed at what time. Everyone’s work is more like doing Hotfix, after completing a small function or fixing a small bug, push it directly to the develop branch. The task is directed to the tester to test the test environment. If there is no problem, directly merge develop into the master and release it! This process is okay when there are few people. If there are a little more people, it will involve that I have a function that is going online and another function is still in the testing stage. Master and develop cannot be merged, and I can only wait for the test to end...

Based on the function branch model, it seems that the above problems can be solved. Cut a branch to do functions or fix bugs, merge it into develop for testing, and merge it into the master after passing the test. At this time, the master can be pushed to the production environment at any time. But another problem is that the level of members in the team is uneven. Everyone cannot be given permission to merge into master. Someone needs to review the code. In other words, the operation of merging into master can only be performed by one or a few people. Not all, but there may be many branches generated every day. Even modifying a line of text may be a branch. Manually merging these small branches is a huge workload. This is somewhat similar to the way of submitting a PR, but it is not enough. Efficient...

Is there any way to allow testers to see your modifications in time for testing, anytime and anywhere! Be selective! Merge code into production environment?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

reply all(3)
仅有的幸福

It is very similar to our workflow, but we have stipulated a specific time to release the version. After the version is released, the developers will develop on their own branches, and then when merging, they will send a merge-request to the supervisor. If the supervisor agrees, they will go to the develop branch. , and then test develop as well. After testing, if there is no problem, go to the main branch.

世界只因有你

I think your question is normal. For example, if A makes a function, he must test it himself and there is no problem before he can push the develop branch and then test whether the overall function is complete. No matter who releases this version, he needs to go through this process. If there is a code being tested on develop, but there is an urgent bugfix to be pushed, there are generally two methods. One is to cherry-pick the code being tested on develop, and the other is to use the emergency branch.

阿神

git cherry-pick
This command can selectively merge commits. For notification testing, you can configure GitHub to automatically send emails to the specified email address after the merge.

git cherry-pick

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template