Git Terminology Glossary
Branch
A branch represents an independent line of development. Branches serve as an abstraction for the edit/stage/commit process discussed in Git Basics, the first module of this series. You can think of them as a way to request a brand new working directory, staging area, and project history. New commits are recorded in the history for the current branch, which results in a fork in the history of the project.
Related Tutorials
Learn Git with Bitbucket Cloud: Use a Git branch to merge a file Comparing Workflows: Gitflow Workflow Using Branches: git branch Comparing Workflows: Feature Branch WorkflowCentralized Workflow
If your developers are already comfortable with Subversion, the Centralized Workflow lets you experience the benefits of Git without having to adapt to an entirely new process. It also serves as a friendly transition into more Git-oriented workflows.
Related Tutorials
Comparing Workflows: Feature Branch WorkflowFeature Branch Workflow
The Feature Branch Workflow builds on the Centralized Workflow by encapsulating new features into dedicated branches. This enables the use of pull requests as a means to discuss changes before they’re integrated into the official project.
Related Tutorials
Making a Pull Request: How it works Comparing Workflows: Gitflow Workflow Comparing Workflows: Feature Branch Workflow Why Git for your organization: Git for developersForking
Instead of using a single server-side repository to act as the “central” codebase, forking gives every developer a server-side repository. This means that each contributor has not one, but two Git repositories: a private local one and a public server-side one.
Related Tutorials
Comparing Workflows: Forking Workflow Making a Pull Request: How it worksGitflow Workflow
The Gitflow Workflow streamlines the release cycle by using isolated branches for feature development, release preparation, and maintenance. Its strict branching model also lends some much needed structure to larger projects.
Related Tutorials
Making a Pull Request: How it works Comparing Workflows: Gitflow WorkflowHEAD
Git’s way of referring to the current snapshot. Internally, the git checkout command simply updates the HEAD to point to either the specified branch or commit. When it points to a branch, Git doesn't complain, but when you check out a commit, it switches into a “detached HEAD” state.
Related Tutorials
Refs and the Reflog: Special Refs Git Hooks: Local Hooks Refs and the Reflog: The Reflog Reset, Checkout, and Revert: Commit-level OperationHook
A script that runs automatically every time a particular event occurs in a Git repository. Hooks let you customize Git’s internal behavior and trigger customizable actions at key points in the development life cycle.
Related Tutorials
Git Hooks: Conceptual Overview Git Hooks: Local Hooks Git Hooks: Server-side Hooks Git HooksMain
The default development branch. Whenever you create a git repository, a branch named "main" is created, and becomes the active branch.
Related Tutorials
Comparing Workflows: Gitflow Workflow Comparing Workflows: Feature Branch Workflow Git Stash Learn Git with Bitbucket Cloud: Use a Git branch to merge a filePull Request
Pull requests are a feature that makes it easier for developers to collaborate using Bitbucket. They provide a user-friendly web interface for discussing proposed changes before integrating them into the official project.
Related Tutorials
Making a Pull Request: How it works Making a Pull Request: Example Comparing Workflows: Feature Branch Workflow Learn about code review in Bitbucket Cloud: Create a pull requestRepository
A collection of commits, and branches and tags to identify commits.
Related Tutorials
Comparing Workflows: Forking Workflow Learn Git with Bitbucket Cloud: Create a Git repository Git LFSTag
A reference typically used to mark a particular point in the commit chain. In contrast to a head, a tag is not updated by the commit command.
Related Tutorials
Convert Undoing Changes: git reset Git Stash Saving changes: git addVersion Control
A system that records changes to a file or set of files over time so that you can recall specific versions later.
Related Tutorials
What is version control What is version control: Benefits of version control What is GitWorking Tree
The tree of actual checked out files, normally containing the contents of the HEAD commit's tree and any local changes you've made but haven't yet committed.