Bird
Raised Fist0
Gitdevops~15 mins

Default branch name configuration in Git - Mini Project: Build & Apply

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
Default Branch Name Configuration in Git
📖 Scenario: You are working on a new project and want to set the default branch name for all new Git repositories on your computer to main instead of the old default master. This helps keep your projects consistent and modern.
🎯 Goal: Learn how to configure Git to use main as the default branch name for all new repositories you create on your machine.
📋 What You'll Learn
Use the Git command line interface
Set the global Git configuration for default branch name
Verify the configuration change
💡 Why This Matters
🌍 Real World
Many teams and projects now use 'main' as the default branch name to be more inclusive and modern. Setting this globally saves time and keeps your projects consistent.
💼 Career
Knowing how to configure Git defaults is a basic but important skill for developers, DevOps engineers, and anyone working with version control in software projects.
Progress0 / 4 steps
1
Check current default branch name
Run the command git config --global init.defaultBranch to check the current default branch name setting in your global Git configuration.
Git
Hint

This command shows the current default branch name if set. If nothing prints, no default is set yet.

2
Set default branch name to main
Run the command git config --global init.defaultBranch main to set the default branch name to main globally on your computer.
Git
Hint

This command changes the default branch name for all new Git repositories you create.

3
Verify the new default branch name
Run the command git config --global init.defaultBranch again to verify that the default branch name is now set to main.
Git
Hint

The output should now show main as the default branch name.

4
Create a new Git repository to test
Create a new folder called test-repo, navigate into it, and run git init. Then run git branch to see the default branch name of the new repository.
Git
Hint

The output of git branch should show * main indicating the default branch is now main.

Practice

(1/5)
1. What does the init.defaultBranch setting in Git control?
easy
A. The default user name for commits
B. The default remote repository URL
C. The default commit message template
D. The name of the main branch created when initializing a new repository

Solution

  1. Step 1: Understand the purpose of init.defaultBranch

    This setting defines the branch name Git uses when you run git init to create a new repository.
  2. Step 2: Identify what it controls

    It controls the default branch name, usually 'master' or 'main', for new repositories.
  3. Final Answer:

    The name of the main branch created when initializing a new repository -> Option D
  4. Quick Check:

    Default branch name = main branch name [OK]
Hint: Default branch name sets new repo's main branch [OK]
Common Mistakes:
  • Confusing branch name with remote URL
  • Thinking it sets commit message templates
  • Assuming it sets user info
2. Which of the following commands correctly sets the default branch name to main globally in Git?
easy
A. git set defaultBranch main
B. git config --global defaultBranch main
C. git config --global init.defaultBranch main
D. git init --default-branch=main

Solution

  1. Step 1: Recall the correct Git config syntax

    The correct syntax to set a global config is git config --global <key> <value>.
  2. Step 2: Match the key for default branch name

    The key is init.defaultBranch, so the full command is git config --global init.defaultBranch main.
  3. Final Answer:

    git config --global init.defaultBranch main -> Option C
  4. Quick Check:

    Use git config --global init.defaultBranch [OK]
Hint: Use full key: init.defaultBranch with git config [OK]
Common Mistakes:
  • Omitting 'init.' prefix in config key
  • Using 'git set' instead of 'git config'
  • Trying to set default branch during init command
3. After running git config --global init.defaultBranch develop, what will be the default branch name when you run git init in a new folder?
medium
A. master
B. develop
C. main
D. default

Solution

  1. Step 1: Understand the effect of the config command

    Setting init.defaultBranch to 'develop' globally changes the default branch name for all new repos initialized after this.
  2. Step 2: Predict the branch name after git init

    When you run git init, the initial branch will be named 'develop' instead of the usual 'master' or 'main'.
  3. Final Answer:

    develop -> Option B
  4. Quick Check:

    Config set to 'develop' means new repos start with 'develop' [OK]
Hint: New repos use branch name from init.defaultBranch [OK]
Common Mistakes:
  • Assuming default stays 'master' or 'main'
  • Confusing local repo branch with global config
  • Thinking config affects existing repos
4. You tried to set the default branch name with git config --global init.defaultbranch main but new repos still use 'master'. What is the problem?
medium
A. The config key is case-sensitive; it should be init.defaultBranch
B. You need to restart your terminal for changes to apply
C. You must run git init with a special flag to use the new default
D. The default branch name cannot be changed globally

Solution

  1. Step 1: Check the config key spelling

    Git config keys are case-sensitive. The correct key is init.defaultBranch with a capital 'B'.
  2. Step 2: Understand why the setting didn't apply

    Using init.defaultbranch (lowercase 'b') creates a different config entry that Git ignores for default branch naming.
  3. Final Answer:

    The config key is case-sensitive; it should be init.defaultBranch -> Option A
  4. Quick Check:

    Config keys are case-sensitive in Git [OK]
Hint: Check exact case of config keys [OK]
Common Mistakes:
  • Ignoring case sensitivity in config keys
  • Thinking terminal restart is needed
  • Believing default branch can't be changed
5. You want all new repositories on your system to start with the branch name stable. How do you set this globally and verify it?
hard
A. Run git config --global init.defaultBranch stable and then git config --global init.defaultBranch
B. Run git init --default-branch=stable and then git branch
C. Run git config --system init.defaultBranch stable and then git status
D. Run git set defaultBranch stable and then git config --list

Solution

  1. Step 1: Set the global default branch name

    Use git config --global init.defaultBranch stable to set the default branch name for all new repos globally.
  2. Step 2: Verify the setting

    Run git config --global init.defaultBranch to confirm the value is set to 'stable'.
  3. Final Answer:

    Run git config --global init.defaultBranch stable and then git config --global init.defaultBranch -> Option A
  4. Quick Check:

    Set with config, verify with config [OK]
Hint: Set and verify with git config commands [OK]
Common Mistakes:
  • Using incorrect commands like git set
  • Trying to verify with unrelated commands
  • Using system config without permission