Creating a branch from another branch in Git
This article explains how to create a branch from another branch in Git.
Git is a distributed version control system and is a suitable tool for version control in a collaborative development environment. In Git, we create repositories, and in repositories, we create branches to track various development work.
We often create a new branch from the mainline to fix bugs or develop new features. After completing the task, we usually merge this branch back to the mainline branch for release.
Git provides us with the ability to create a branch from another existing branch. Also, we can merge branches using Git commands.
git checkout
To create a branch from another branch in Git,
use the command
Git is a distributed version control system and a useful tool for tracking changes to a project repository.
We have multiple team members or teams working in a collaborative development environment using the same project repository. Different team members or teams can create different branches from an existing branch to work on that branch.
Suppose we have a mainline branch called in our project repository main
. The bug fixing team will create a new branch called on top of that branch bugfixes
. Another team or team member will create a branch feature
to develop a new feature.
Once the team or team members are satisfied with the changes made in the new branch, the new branch is usually merged back into the mainline branch.
Suppose we want main
to create a branch from the mainline branch feature
to develop a feature. We can use git checkout
the command.
The syntax for creating a new branch of an existing branch is as follows.
git checkout -b <new-branch> <existing-branch>
In our example, we will execute the following command.
$ git checkout -b feature main
Switched to a new branch 'feature'
main
Thus, we have created a new branch on
the existing branch feature
. git checkout
The option of the command -b
causes the new branch to be created. Furthermore, it causes the new branch to be checked out.
Now we will develop new features and make changes in a new branch ie feature
.
After we finish developing a feature and commit our changes to a new branch feature
, we want to main
merge this branch with the mainline branch.
We can use git merge
the command to merge feature
the branch with the mainline branch main
.
First, we will git checkout
switch to the mainline branch using the command main
.
$ git checkout main
Switched to branch 'main'
We will use git merge
the command to merge feature
the branch with main
the branch.
We will execute the command as follows.
$ git merge --no-ff feature
Updating ea1b23a..05e9201
(Summary of changes)
git merge
The -m option of
the command --no-ff
always forces the creation of a new commit object, even if a fast-forward merge is performed. It causes a merge commit to be created in all cases, even if the merge could be resolved as a fast-forward.
This is useful because when we browse the Git history, we see feature
information about the existence of the branch. It also causes feature
all commits for the branch to be grouped together.
Furthermore, when we want to feature
revert a merge of the -branch into main
the -branch, this is much easier due to the presence of the merge commit.
In case of a fast-forward merge, no merge commit is created. Only an update of the branch pointers occurs to match the branch being merged.
Finally, we need to push our changes to the remote repository.
$ git push origin main
$ git push origin feature
So, we showed how to create a branch from another branch in Git.
For reprinting, please send an email to 1244347461@qq.com for approval. After obtaining the author's consent, kindly include the source as a link.
Related Articles
Git installation and establishment of local warehouse service
Publish Date:2025/04/05 Views:89 Category:Git
-
Git is a distributed version control system: the client does not only extract the latest version of the file snapshot, but also completely mirrors the original code repository. It has the following advantages: a. Since every extraction oper
git remote operation——multiple remote repositories for one project
Publish Date:2025/04/05 Views:131 Category:Git
-
Multiple remote repositories for a git project In our git project, the command to operate the remote repository information is $ git remote # 查看当前所有的远程仓库的名称 $ git remote -v # 查看远程仓库的名称和远程仓
Git cherry pick command usage
Publish Date:2025/04/05 Views:190 Category:Git
-
git cherry-pick is a powerful command that allows us to select an arbitrary Git commit by reference and attach it to the HEAD of the current working branch. Cherry picking is the act of picking a commit from one branch and applying it to an
Comparison between Git merge and Git rebase
Publish Date:2025/04/05 Views:171 Category:Git
-
The git rebase command may seem like Git wizardry to beginners, but if used carefully, it can actually make life easier for your development team. In this article, we compare git rebase with the related git merge command and identify all th
How to fix Git error Error: src refspec master does not match any
Publish Date:2025/04/05 Views:124 Category:Git
-
When using Git, we may encounter the error "src refspace master does not match any". Here's what the error means and how to fix it. What does src refspec master does not match any Mean in Git mean? We may encounter this error when we try to
Rebase local branch when pulling changes from remote repository branch in Git
Publish Date:2025/04/05 Views:144 Category:Git
-
This article will cover the basics of rebasing your local branch when pulling changes from a remote repository branch in Git. We use the version control system Git to track changes made to files. We commit changes in a local branch in our l
Undo Git Stash
Publish Date:2025/04/04 Views:187 Category:Git
-
This article explains how to make and save changes to a repository. Git allows you to save changes locally and push them to a server when needed. In Git, we don't use the term save , but commit . We use git add , git commit , and git stash
View a list of cache entries in Git
Publish Date:2025/04/04 Views:59 Category:Git
-
We often need to pause our work and focus on something else in our development environment. Therefore, we may need to temporarily save our current work and focus on a different one. We may want to resume our original work later. git stash T
Git stores specific files
Publish Date:2025/04/04 Views:115 Category:Git
-
This article will cover storing changes to only specific files in Git. In Git, when we make some changes in our working tree, we may have some changes which may or may not be staged in our local repo. We may now wish to save these changes f