How does git manage the code?

Pure newcomer, I am now working like this. If there is a problem with any step, please give me some advice.
what I have come across so far is
Git workflow

1. In the Master branch, there is a requirement A:
Git checkout-b A
Git push origin avatar A
(is there any other way to create a new branch locally and form a mapping remotely? )
then start developing the A requirements.

2. In this process, there is another requirement B:
git checkout master
git checkout-b B
git push origin BazaB
after the development of B.
while testing A, developing B.

3.A to launch:
git checkout master
git pull origin master / / pull the latest master
git checkout A
git merge master / / merge the latest master
A branch in advance and launch.
git checkout master
git merge A / / merge the latest A
git push origin master

4.B should be launched as A

5. Change the existing requirements C
git checkout-b C origin/C or git pull origin C
(which of these two methods is better? )
change Code
merge master
launch
git checkout master
git merge C
git push origin master

is there anything inappropriate or superfluous above? There is also the question of parentheses.
has a problem recently, that is, I haven"t touched the code of master, but master has the code of D. I"ve never had a merge, and I haven"t changed it. What went wrong?

Aug.28,2021
Menu