Bird
Raised Fist0
Gitdevops~5 mins

Tracking branches concept in Git - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a tracking branch in Git?
A tracking branch is a local branch that is linked to a remote branch. It helps you keep your local branch updated with changes from the remote branch.
Click to reveal answer
beginner
How do you create a local branch that tracks a remote branch?
You can create a tracking branch using: git checkout -b local_branch_name origin/remote_branch_name or simply git checkout remote_branch_name if it exists remotely.
Click to reveal answer
intermediate
What command shows the tracking branches and their status?
Use git branch -vv to see local branches, their tracking branches, and if they are ahead or behind.
Click to reveal answer
beginner
Why are tracking branches useful in teamwork?
Tracking branches help you easily fetch and merge changes from teammates by linking your local work to the remote branch they update.
Click to reveal answer
intermediate
How do you change the upstream branch a local branch tracks?
Use git branch --set-upstream-to=origin/branch_name to change the remote branch your local branch tracks.
Click to reveal answer
What does a tracking branch in Git do?
ALinks a local branch to a remote branch to track changes
BDeletes a remote branch automatically
CCreates a backup of your repository
DMerges two unrelated branches
Which command shows local branches with their tracking info?
Agit branch -vv
Bgit status
Cgit fetch
Dgit merge
How do you set a local branch to track a remote branch?
Agit clone branch_name
Bgit push origin branch_name
Cgit branch --set-upstream-to=origin/branch_name
Dgit init
What happens when you run git checkout remote_branch_name if the branch exists remotely but not locally?
APushes local changes to remote
BDeletes the remote branch
CShows an error
DCreates a local tracking branch for the remote branch
Why is it helpful to have tracking branches in a team project?
AThey prevent anyone from pushing changes
BThey simplify syncing your work with teammates' changes
CThey automatically resolve conflicts
DThey delete old branches
Explain what a tracking branch is and how it helps in managing code with a remote repository.
Think about how your local work stays updated with others' work.
You got /3 concepts.
    Describe the steps and commands to create a local branch that tracks a remote branch and how to check its status.
    Focus on commands that connect and show tracking info.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of a tracking branch in Git?
      easy
      A. To delete remote branches automatically
      B. To create a backup of the repository
      C. To link a local branch to a remote branch for easy syncing
      D. To merge two unrelated branches

      Solution

      1. Step 1: Understand tracking branch concept

        A tracking branch connects your local branch to a remote branch, making syncing easier.
      2. Step 2: Identify the main purpose

        This connection allows you to push and pull changes without extra typing.
      3. Final Answer:

        To link a local branch to a remote branch for easy syncing -> Option C
      4. Quick Check:

        Tracking branch = link local to remote [OK]
      Hint: Tracking branches link local and remote branches automatically [OK]
      Common Mistakes:
      • Thinking tracking branches delete remote branches
      • Confusing tracking branches with backups
      • Assuming tracking branches merge unrelated branches
      2. Which Git command correctly creates a new local branch feature that tracks the remote branch origin/feature?
      easy
      A. git branch feature origin/feature
      B. git checkout --track origin/feature feature
      C. git checkout origin/feature feature
      D. git branch --track feature origin/feature

      Solution

      1. Step 1: Recall correct syntax for tracking branch creation

        The command to create a local branch tracking a remote branch is git branch --track local_branch remote_branch.
      2. Step 2: Match the command with options

        git branch --track feature origin/feature matches this syntax exactly: git branch --track feature origin/feature.
      3. Final Answer:

        git branch --track feature origin/feature -> Option D
      4. Quick Check:

        Use --track with git branch to link branches [OK]
      Hint: Use 'git branch --track' to link local to remote branch [OK]
      Common Mistakes:
      • Omitting --track option
      • Using git checkout with wrong argument order
      • Confusing branch creation with checkout syntax
      3. Given the commands:
      git checkout -b feature origin/feature
      git branch -vv

      What will the output show about the feature branch?
      medium
      A. feature branch tracks origin/feature with commit info
      B. feature branch does not track any remote branch
      C. feature branch is deleted
      D. feature branch tracks origin/main

      Solution

      1. Step 1: Understand the checkout command

        git checkout -b feature origin/feature creates a local branch feature starting at origin/feature and sets it to track that remote branch.
      2. Step 2: Interpret git branch -vv output

        This command shows local branches with tracking info and commit details. The feature branch will show it tracks origin/feature.
      3. Final Answer:

        feature branch tracks origin/feature with commit info -> Option A
      4. Quick Check:

        Checkout -b with remote sets tracking branch [OK]
      Hint: Checkout -b with remote branch sets tracking automatically [OK]
      Common Mistakes:
      • Assuming no tracking is set by checkout -b
      • Thinking branch is deleted after creation
      • Confusing tracking branch with origin/main
      4. You ran git branch --track feature origin/feature but got an error: fatal: A branch named 'feature' already exists.
      What is the best way to fix this?
      medium
      A. Delete the existing feature branch first or use checkout to switch
      B. Rename the remote branch
      C. Run git branch --force feature origin/feature
      D. Use git push to update the remote branch

      Solution

      1. Step 1: Understand the error message

        The error says a local branch named 'feature' already exists, so you cannot create it again.
      2. Step 2: Choose the correct fix

        You can either delete the existing branch if not needed or switch to it using git checkout feature. Renaming remote or forcing branch creation is incorrect here.
      3. Final Answer:

        Delete the existing feature branch first or use checkout to switch -> Option A
      4. Quick Check:

        Existing branch blocks creation; delete or switch [OK]
      Hint: Existing branch blocks creation; delete or checkout instead [OK]
      Common Mistakes:
      • Trying to rename remote branch unnecessarily
      • Using --force incorrectly with git branch
      • Confusing push with branch creation errors
      5. You want to create a local branch dev that tracks origin/dev, but origin/dev does not exist yet. What happens if you run git checkout --track origin/dev?
      hard
      A. Git creates dev branch tracking origin/main instead
      B. Git errors out because origin/dev does not exist
      C. Git creates dev branch but does not track any remote
      D. Git creates dev branch tracking origin/dev anyway

      Solution

      1. Step 1: Understand tracking branch creation requirements

        To create a tracking branch, the remote branch must exist. If it doesn't, Git cannot link to it.
      2. Step 2: Predict Git behavior

        Running git checkout --track origin/dev when origin/dev does not exist causes Git to error out.
      3. Final Answer:

        Git errors out because origin/dev does not exist -> Option B
      4. Quick Check:

        Tracking branch requires existing remote branch [OK]
      Hint: Remote branch must exist before tracking branch creation [OK]
      Common Mistakes:
      • Assuming Git creates tracking branch without remote
      • Thinking Git tracks origin/main by default
      • Ignoring error messages about missing remote branch