Bird
Raised Fist0
Gitdevops~10 mins

Creating and switching in one step in Git - Interactive Practice

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
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the command to create and switch to a new branch named 'feature'.

Git
git [1] feature
Drag options to blanks, or click blank then click option'
Amerge
Bbranch
Cswitch
Dcheckout -b
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'git branch' only creates the branch but does not switch.
Using 'git switch' alone without '-c' does not create a branch.
Using 'git merge' is for combining branches, not creating.
2fill in blank
medium

Complete the command to create and switch to a new branch named 'hotfix' using the modern git command.

Git
git [1] -c hotfix
Drag options to blanks, or click blank then click option'
Abranch
Bcheckout
Cswitch
Dmerge
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'git checkout' is older but still valid.
Using 'git branch' does not switch branches.
Using 'git merge' is unrelated.
3fill in blank
hard

Fix the error in the command to create and switch to a new branch named 'release'.

Git
git switch [1] release
Drag options to blanks, or click blank then click option'
A-c
B-b
C--create
D-n
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-b' with 'git switch' causes an error.
Using '--create' is not a valid option.
Using '-n' does not create a branch.
4fill in blank
hard

Fill both blanks to create and switch to a new branch named 'dev' using the older git command.

Git
git [1] [2] dev
Drag options to blanks, or click blank then click option'
Acheckout
Bbranch
C-b
D-c
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'git branch -b' is invalid.
Using '-c' with 'checkout' is incorrect.
Using 'git switch' instead of 'checkout' here.
5fill in blank
hard

Fill all three blanks to create and switch to a new branch named 'test' using the modern git command.

Git
git [1] [2] [3]
Drag options to blanks, or click blank then click option'
Aswitch
B-c
Ctest
Dcheckout
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'checkout' instead of 'switch' for modern command.
Omitting '-c' option.
Placing branch name before the option.

Practice

(1/5)
1. What does the command git switch -c feature do?
easy
A. Lists all branches including 'feature'
B. Creates a new branch named 'feature' and switches to it
C. Switches to the existing branch named 'feature' without creating it
D. Deletes the branch named 'feature'

Solution

  1. Step 1: Understand the git switch -c command

    The -c option means "create" a new branch and switch to it immediately.
  2. Step 2: Apply to the branch name 'feature'

    The command creates a new branch called 'feature' and switches the working directory to it.
  3. Final Answer:

    Creates a new branch named 'feature' and switches to it -> Option B
  4. Quick Check:

    git switch -c = create and switch [OK]
Hint: Remember: -c means create and switch in one step [OK]
Common Mistakes:
  • Thinking it only switches without creating
  • Confusing with branch deletion commands
  • Assuming it lists branches
2. Which of the following is the correct git switch syntax to create and switch to a new branch named dev?
easy
A. git switch -c dev
B. git switch dev -c
C. git checkout -b dev
D. git branch -c dev

Solution

  1. Step 1: Recall the correct order of options in git switch

    The option -c must come before the branch name to create and switch.
  2. Step 2: Check each option

    git switch -c dev is the correct syntax. git switch dev -c has wrong order. git checkout -b dev uses checkout instead of switch. git branch -c dev is invalid syntax.
  3. Final Answer:

    git switch -c dev -> Option A
  4. Quick Check:

    Correct syntax = git switch -c branch [OK]
Hint: Option -c always comes before branch name in git switch [OK]
Common Mistakes:
  • Placing -c after branch name
  • Confusing git switch with git branch
  • Using git branch -c which is invalid
3. What will be the output of the following commands?
git switch -c test-branch
git branch --show-current
medium
A. Error: branch does not exist
B. main
C. No output
D. test-branch

Solution

  1. Step 1: Create and switch to 'test-branch'

    The first command creates a new branch named 'test-branch' and switches to it.
  2. Step 2: Show current branch

    The second command prints the name of the current branch, which is now 'test-branch'.
  3. Final Answer:

    test-branch -> Option D
  4. Quick Check:

    Current branch after switch -c = new branch name [OK]
Hint: After switch -c, current branch is the new branch [OK]
Common Mistakes:
  • Assuming it stays on main branch
  • Expecting no output from show-current
  • Thinking it causes an error
4. You run git switch -c featureX but get an error: fatal: A branch named 'featureX' already exists. What should you do to switch to that branch?
medium
A. Run git switch featureX
B. Run git switch -c featureX again
C. Run git branch featureX
D. Run git checkout -b featureX

Solution

  1. Step 1: Understand the error

    The error means the branch 'featureX' already exists, so you cannot create it again.
  2. Step 2: Switch to existing branch

    Use git switch featureX without -c to switch to the existing branch.
  3. Final Answer:

    Run git switch featureX -> Option A
  4. Quick Check:

    Use switch without -c to switch existing branch [OK]
Hint: Use git switch without -c to switch existing branch [OK]
Common Mistakes:
  • Trying to create branch again with -c
  • Using git branch without switching
  • Using checkout -b which creates new branch
5. You want to create a new branch named release-1.0 and immediately start working on it. Which command correctly does this and also sets the upstream to origin/release-1.0 in one step?
hard
A. git checkout -b release-1.0 origin/release-1.0
B. git branch release-1.0 && git switch release-1.0
C. git switch -c release-1.0 --track origin/release-1.0
D. git switch release-1.0 -c --set-upstream origin/release-1.0

Solution

  1. Step 1: Understand creating and switching with upstream

    The git switch -c command can create and switch to a branch. The --track option sets the upstream branch.
  2. Step 2: Analyze options

    git switch -c release-1.0 --track origin/release-1.0 creates the branch, switches to it, and sets upstream in one step. git branch release-1.0 && git switch release-1.0 requires two commands. git checkout -b release-1.0 origin/release-1.0 creates and switches from the remote commit and sets upstream automatically. git switch release-1.0 -c --set-upstream origin/release-1.0 has wrong option order and syntax.
  3. Final Answer:

    git switch -c release-1.0 --track origin/release-1.0 -> Option C
  4. Quick Check:

    Use switch -c with --track to create, switch, and set upstream [OK]
Hint: Use --track with switch -c to set upstream in one step [OK]
Common Mistakes:
  • Not setting upstream in one step
  • Using git branch and switch separately
  • Wrong option order or syntax