Using Branches
There may be many different branches within a repository
at any given time, but there is at most one âactiveâ or
âcurrentâ branch. The active branch determines what files
are checked out in the working directory. Furthermore, the current
branch is often an implicit operand in Git commands, such as the target
of the merge operation. By default, master
is the active branch, but you can make any branch the
current branch.
Tip
In Chapter 6, I presented commit graph diagrams containing several branches. Keep this graph structure in mind when you manipulate branches because it helps establish the elegant and simple object model underlying Gitâs branches.
A branch allows the content of the repository to diverge in many directions, one per branch. Once a repository forks at least one branch, each commit is applied to one branch or the other, whichever is active.
Each branch in a specific repository must have a unique name, and the name always refers to the most recent revision committed on that branch. The most recent commit on a branch is called the tip, or head, of the branch.
Git doesnât keep information about where a branch originated.
Instead, the branch name moves incrementally forward as new commits are
made on the branch. Older commits must therefore be named by their hash
or via a relative name such as dev~5
. If you want to keep track of a particular commitâbecause it represents a stable point in the project, say, or is a version you want to testâyou ...
Get Version Control with Git now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.