Git has been the standard, it is more transparent in operations
then other source control systems and allows more flexibility in terms of
scipting and automating, logging etc. Git is also great for beginners
fostering a solid understanding of principals involved rather then
"black box" results. When things go wrong (and they will) you will have
the grounding nessesary to troubleshoot and deal with merge conflicts
and other low level issues. That being said, the terminology used in tools etc
is transferable to other systems.
Git is a distributed version-control system for tracking changes in source
code during software development.
It is designed for coordinating work among programmers, but it can be used to
track changes in any set of files.
Its goals include speed, data integrity, and support for distributed,
non-linear workflows.
git checkout B1 //Switch to a branch ==> B1
git reset --soft HEAD~1 // get the changes commited to B1 back in the Local system staging area
//EDIT as you need//
git add ,
git commit -m "new changes upon chnages"
git push origin B1
add a new git commit (edited)
#Best and wiser tool for a wise developer!!
#Here a tip to install it quick
# On Windows 10
https://git-scm.com/download/win
# On Linux
sudo dnf install git-all
# On a Debian-based distribution as Ubuntu
sudo apt install git-all
# On Mac
https://git-scm.com/download/mac
$ git clone url_of_your_remote_repository # Clone a repository from a remote repository
$ git add file1 file2 # will add those two files to the index if they were modified
$ git commit -m "Meaningful commit message" # will commit those two files (locally)
$ git add . # will add all of the modified files to the index at once
$ git commit -m "Other meaningful commit message" # will commit all of those files together
$ git push origin master # send all commit to the remote server