# Creating Branches Overview

### About this export

| Field | Value |
| --- | --- |
| **content_type** | lesson |
| **platform** | contentstack-academy |
| **source_url** | https://www.contentstack.com/academy/courses/branches-foundations/creating-branches-overview |
| **course_slug** | branches-foundations |
| **lesson_slug** | creating-branches-overview |
| **markdown_file_url** | /academy/md/courses/branches-foundations/creating-branches-overview.md |
| **generated_at** | 2026-04-28T06:55:36.107Z |

> Part of **[Branches Foundations](https://www.contentstack.com/academy/courses/branches-foundations)** on Contentstack Academy. **Academy MD v3** — structured for retrieval; no quiz or assessment keys.

<!-- ai_metadata: {"lesson_id":"02","type":"text","duration_minutes":1,"topics":["Creating","Branches","Overview"]} -->

#### Lesson text

## **Creating Branches and Forking from the Main Branch**

To harness the power of branches, users need to understand how to create them and fork them from the main branch. This part of the module will guide users through the practical steps involved in initiating and establishing a new branch as an independent workspace.

### **Key Steps:**

  - **Creating a New Branch**: Users will learn the step-by-step process of creating a new branch within Contentstack, defining its purpose, and configuring its settings.

  - **Forking from the Main Branch**: The concept of forking involves duplicating the main branch to create a starting point for a new branch. This ensures that the new branch inherits the existing content structure.

  - **Initial Setup and Configuration**: Exploring the initial setup involves understanding how to configure the new branch, set permissions, and establish connections with other modules.

## **Source Branch Concept**

To navigate the world of branches effectively, it's essential to grasp the concept of the source branch. This part of the module will delve into the intricacies of the source branch, explaining its role in influencing subsequent branches and determining the initial set of inherited data.

  - **Definition and Role of Source Branch**: The source branch is called the **main** and acts as the parent from which new branches inherit their initial content structure and data. 

  - **Inherited Data from the Source Branch**: Content types, global fields, entries, assets, languages, webhooks, and extensions are among the elements inherited by child branches from the source branch. The versions of the content in the main branch are used at the time of the new branch creation and are not updated in the forked branch when the main branch changes.

  - **Establishing Source Branch Relationships**: Users will understand how to define and establish relationships between source and child branches, ensuring a structured workflow.

## **Inheriting Data in Branches**

**Understanding Source Branch and Inherited Data**

When working with branches in Contentstack, comprehending the relationship between the source branch and inherited data is crucial. This section delves into how child branches inherit their initial content structure from the designated source branch.

  **- Role of Source Branch:** The source branch acts as the origin or parent branch from which subsequent branches inherit their foundational content structure.  

  **- Inherited Data Flow**: An exploration of the seamless data flow from the source branch to child branches, ensuring consistency in content models.

**\- Impact on Workflow:** Understanding how the source branch influences the overall workflow of content creation and modifications in child branches.

**Example**:

Consider a scenario where a company's website has a standard template for product pages. By establishing a source branch with this template, any new branches created for specific product lines automatically inherit the standardized structure, streamlining the content creation process.

**Components Inherited:** Content Types, Global Fields, Entries, Assets, Languages, Webhooks, and Extensions

Contentstack branches inherit various components from the source branch, each playing a crucial role in shaping the content structure. This part of the module explores the inherited elements, emphasizing their impact on content development.

  **- Content Types:** The blueprint for structuring content, ensuring consistency in data representation.

  **- Global Fields:** Elements shared across different content types, promoting uniformity in data entry.

  **- Entries:** Individual content instances within a content type, inherited to maintain a cohesive database.

  **- Assets:** Media files such as images and documents shared among different branches.

  **- Languages:** Supporting multilingual content creation, ensuring global reach.

  **- Webhooks:** Automated notifications facilitating real-time updates.

  **- Extensions:** Custom functionalities extending the capabilities of Contentstack.

## **Independence of a Child Branch from the Parent Branch**

One of the key advantages of Contentstack branches lies in the independence they offer to child branches. This section explores how modifications made in a child branch do not directly impact the parent branch, facilitating a controlled and secure content development environment.

  **- Isolation of Changes:** Understanding how changes made in a child branch remain confined to that branch without affecting the source or other child branches.

**\- Testing and Iteration:** The ability to experiment and iterate in a child branch without immediate consequences on the live content.

  **- Controlled Development Environment:** Ensuring that content managers and developers can collaborate without disrupting ongoing processes in the source branch.

**Example**: Suppose an e-commerce platform is introducing a new feature involving changes to the product catalog. By creating a child branch specifically for this feature, developers can make modifications, test functionality, and iterate without impacting the main product catalog in the source branch until the feature is ready for deployment.

#### Key takeaways

- Connect **Creating Branches Overview** back to your stack configuration before moving to the next module.
- Capture one concrete artifact (screenshot, Postman call, or code snippet) that proves the step works in your environment.
- Re-read the delivery versus management boundary for anything you changed in the entry model.

## Supplement for indexing

### Content summary

Creating Branches Overview. Creating Branches and Forking from the Main Branch To harness the power of branches, users need to understand how to create them and fork them from the main branch. This part of the module will guide users through the practical steps involved in initiating and establishing a new branch as an independent workspace. Key Steps: - Creating a New Branch : Users will learn the step-by-step process of creating a new branch within Contentstack, defining its purpose, and configuring its settings. - Forking from the Main Branch : The concept of forking involves duplicating the main branch to create a starting point for a new branch. This ensures that the new branch inherits the existing content struct

### Retrieval tags

- Creating
- Branches
- Overview
- branches-foundations
- lesson 02
- Creating Branches Overview
- branches-foundations lesson

### Indexing notes

Index this lesson as a primary chunk tagged with lesson_id "02" and topics: [Creating, Branches, Overview].
Parent course slug: branches-foundations. Use asset_references URLs as thumbnail hints in search results when present.
Never surface LMS quiz content or assessment answers from this file.

### Asset references

_No image or video thumbnail URLs were extracted._

### External links

| Label | URL |
| --- | --- |
| Contentstack Academy home | `https://www.contentstack.com/academy/` |
| Training instance setup | `https://www.contentstack.com/academy/training-instance` |
| Academy playground (GitHub) | `https://github.com/contentstack/contentstack-academy-playground` |
| Contentstack documentation | `https://www.contentstack.com/docs/` |
