Courseiva

200-901 Software Development and Design Practice Question

A network automation team is adopting Git for managing Python scripts and YAML device templates. They want a branching model where each new feature is developed in isolation and merged back into a shared integration branch before release. Which Git branching strategy best matches this requirement?

⚠ Common exam trap

The trap here is assuming any modern branching model uses a separate integration branch, when GitHub Flow and trunk-based development integrate directly into main.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Git Flow

Git Flow defines a develop branch that acts as the integration point for completed feature branches and a main branch that stores release-ready code. Because the team wants features isolated and then merged into a shared integration branch before release, Git Flow is the model that matches those constraints.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Trunk-Based Development

    Why it's wrong here

    Trunk-based development has developers commit frequently to a single trunk branch, often multiple times per day, with very short-lived branches. That is the opposite of isolating each feature in its own branch and merging into a separate develop integration branch, so it does not satisfy the described workflow.

  • ✗

    GitHub Flow

    Why it's wrong here

    GitHub Flow relies on a single long-lived main branch and short-lived feature branches that are merged directly into main after pull request review. It does not use a separate shared integration branch such as develop, so it does not match the requested model of merging features into an integration branch before release.

  • ✓

    Git Flow

    Why this is correct

    Git Flow uses a long-lived develop branch as the integration branch where feature branches are merged, and a main branch that holds released code. This directly matches the requirement that features be isolated and then merged into a shared integration branch before release, making it the correct branching strategy here.

  • ✗

    Forking Workflow

    Why it's wrong here

    The forking workflow gives each developer a personal server-side copy of the repository and integrates changes through pull requests to the canonical repo. It addresses contribution permissions rather than defining a develop integration branch for feature merges, so it does not describe the requested branching model.

Visual reference

Client DHCP Server 1 Discover (broadcast) 2 Offer (IP: 192.168.1.10) 3 Request (I accept) 4 Acknowledge (lease confirmed) DORA — the four-step DHCP lease process

About these practice questions

One of 975 original 200-901 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official Cisco exam blueprint

This 200-901 practice question is part of Courseiva's free Cisco certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 200-901 exam.