Git (Process): Use Rebase or Double QA?

Our store has a fairly fast deployment cycle (1-2 weeks between when the code was written and when it was released). So, after a little experiment, we used the following template for our use of Git:

  • The developer creates a host-based branch for his specific ticket (that is, the "bug-5555" branch)
  • Developer executes fix code for this thread
  • The supervisor reinstalls our "pre-master" branch (a copy of the master with the current release candidates) on top of the error branch.
  • The supervisor is merged (fast forward), fixed from the error branch in the pre-master branch
  • QA team - fixes in the pre-master branch
  • If the patch does not comply with QA, it is canceled from the pre-master branch
  • (After the QA error correction is completed, steps 3-5 are repeated)
  • When we are ready to release, the pre-master branch becomes the new main branch

This style has a number of advantages for us: it makes the QA team accurately test what is going to go live, this allows us to easily insert things and extract material from QA, this keeps the code for a specific fix all beautiful and neat in its branch and etc.

, rebase ( , pre-master, pre-master - ). , , .

, , , , - pre-master , QA. , , , master. , QA , , ( master) ( ), , , .

, , ... , :

  • , , : , QA-, , ( ) () ?
  • - , , ​​ , , ?
+3
2

, , , ( SCM, , ), , , .

( ) 2+ , Git.

Git " " ( pu), pre-master. . , . reset. ( , / Git). pu pu reset - .

next . , , . pre-master next, pu. next, . .

, master.

, , Git "What Cooking". , Git, a script cook, .

, QA Git; , QA, .

  • (3) . .
  • , , , Driessen, --no-ff, .
  • QA pre-master , .
  • master, , . , , QA (, git diff integration pre-master ). master ( , --no-ff, , ).
  • pre-master , git checkout pre-master; git reset --hard master, ( , git checkout pre-master; git merge -s recursive -X theirs master).
  • , , QA pre-master.

, , , , . , ( QA) .

, , , , -, , ( ) .

+2

, master QA - . , , QAed, diff ( , , QAed, QA ):

git diff pre-master master
+2

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


All Articles