Git Qa
Git Qa
We have multiple branches called master, release, develop, hotfix and feature
branches.
where master is the main branch where we kept our deployed code or the code
currently in production environment,
from master we will create a branch called release and from release we will create
a branch called develop,
developers will be working on the feature branches which got created from develop
branch, once develpoers
completes the coding they will create merge request to develop branch ,
reviewer/approver will review the
code and they merge to develop branch if there is no conflicts, from the develp
branch our CICD job will
get trigger and will deploy to lower environments for testinng from develop
branch, if qa teams reports any bugs,
developers will fix it in the develop branch, once QA team sign ofs with no bugs,
we will merge the code from
develop to release branch and will deploy the code to preprod environment, once
everything is good we will merge the
code to master and will deploy to prod environment and wil create a tags for the
release, if we found any bugs in the
prod environment, we will fix it in the hotfix environment and will merge the code
back to master, release and develop.
5 * PR Approval process ?
6 * Diff between Git pull and git fetch
-7 * Types of branching strategy?-
https://www.abtasty.com/blog/git-branching-strategies/
GitFlow
* The main and develop branches are considered to be the main branches, with an
infinite lifetime,
while the rest are supporting branches that are meant to aid parallel development
among developers, usually short-lived.
* Perhaps the most obvious benefit of this model is that it allows for parallel
development to protect
the production code so the main branch remains stable for release while
developers work on separate branches.
*It is also ideal when handling multiple versions of the production code.
GitHub Flow
* This strategy is particularly suited for small teams and web applications and it
is ideal when you need to maintain a single production version.
* This strategy is not suitable for handling multiple versions of the code.
* You start off with the main branch then developers create branches, feature
branches that stem directly from the master,
to isolate their work which are then merged back into main.The feature branch is
then deleted.
GitLab Flow
Trunk-based development
17* creating branch and merging and push , pulling how you do it.
18* git diff -tree?
git-diff-tree is a git command that compares the content and mode of blobs found
via two tree objects.
20* what is git rebase ? why cant u use rebase instead of merge?
README files typically include information on: What the project does. Why the
project is useful. How users can get started with the project.
-23* Where do you fix bug , vl u create a new branch and later how you manage with
next release
develop — this branch contains pre-production code. When the features are finished
then they are merged into develop.
feature-* — feature branches are used to develop new features for the upcoming
releases.
May branch off from develop and must merge into develop.
hotfix-* — hotfix branches are necessary to act immediately upon an undesired
status of master.
May branch off from master and must merge into master anddevelop.
release-* — release branches support preparation of a new production release.
They allow many minor bug to be fixed and preparation of meta-data for a release.
May branch off from develop and must merge into master anddevelop.