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 does 'ours' mean in a Git conflict?
'Ours' refers to the version of the file from the current branch you are on when a conflict happens.
Click to reveal answer
beginner
What does 'theirs' mean in a Git conflict?
'Theirs' means the version of the file from the branch you are trying to merge into your current branch.
Click to reveal answer
intermediate
How do you choose 'ours' version to resolve a conflict using Git command line?
You can run: git checkout --ours <file> to keep your current branch's version of the file.
Click to reveal answer
intermediate
How do you choose 'theirs' version to resolve a conflict using Git command line?
You can run: git checkout --theirs <file> to keep the incoming branch's version of the file.
Click to reveal answer
beginner
Why is it important to understand 'ours' vs 'theirs' in Git conflicts?
Because it helps you decide which changes to keep when two versions of a file clash, avoiding mistakes and lost work.
Click to reveal answer
In a Git merge conflict, what does 'ours' refer to?
AThe current branch's version
BThe incoming branch's version
CA backup copy
DThe remote repository
✗ Incorrect
'Ours' means the version from the branch you currently have checked out.
Which command keeps the 'theirs' version of a file during conflict resolution?
Agit checkout --theirs <file>
Bgit reset <file>
Cgit checkout --ours <file>
Dgit merge --abort
✗ Incorrect
The command 'git checkout --theirs ' selects the incoming branch's version.
If you want to keep your current branch's changes during a conflict, which option do you use?
Anone
Btheirs
Cboth
Dours
✗ Incorrect
'Ours' means keeping your current branch's changes.
What happens if you do not resolve a Git conflict?
AGit automatically chooses 'theirs'
BYou cannot complete the merge
CGit automatically chooses 'ours'
DGit deletes the conflicting files
✗ Incorrect
You must resolve conflicts before completing a merge.
Which of these is NOT a way to resolve conflicts in Git?
AManually editing the file
BUsing git checkout --theirs
CRunning git push --force
DUsing git checkout --ours
✗ Incorrect
'git push --force' does not resolve conflicts; it forces pushing changes.
Explain the difference between 'ours' and 'theirs' in Git conflicts.
Think about which branch you are on and which branch you are merging.
You got /3 concepts.
Describe how to resolve a conflict by choosing the 'theirs' version using Git commands.
Remember the steps to tell Git which version to keep and mark conflict resolved.
You got /3 concepts.
Practice
(1/5)
1. In a Git merge conflict, what does ours refer to?
easy
A. A backup copy of the file before the merge
B. The version of the file in the branch you are merging
C. The common ancestor version of the file
D. The version of the file in your current branch
Solution
Step 1: Understand the meaning of 'ours' in Git conflicts
'Ours' means the version of the file in your current branch where you started the merge.
Step 2: Differentiate from 'theirs'
'Theirs' refers to the version from the branch you are merging into your current branch.
Final Answer:
The version of the file in your current branch -> Option D
Quick Check:
Ours = current branch version [OK]
Hint: Ours = your branch, theirs = merging branch [OK]
Common Mistakes:
Confusing 'ours' with 'theirs'
Thinking 'ours' means the common ancestor
Assuming 'ours' is a backup copy
2. Which Git command correctly chooses the 'theirs' version of a conflicted file named app.js?
easy
A. git checkout --ours app.js
B. git checkout --theirs app.js
C. git reset --theirs app.js
D. git merge --theirs app.js
Solution
Step 1: Identify the correct command to pick 'theirs'
The command to choose the 'theirs' version during conflict is git checkout --theirs <file>.
Step 2: Verify the file name usage
Using app.js after the command specifies the file to resolve.
Final Answer:
git checkout --theirs app.js -> Option B
Quick Check:
Use 'git checkout --theirs' to pick theirs [OK]
Hint: Use 'git checkout --theirs <file>' to pick theirs version [OK]
Common Mistakes:
Using 'git reset' instead of 'git checkout'
Confusing '--ours' with '--theirs'
Trying 'git merge --theirs' which is invalid
3. After a merge conflict on index.html, you run: git checkout --ours index.html What will be the content of index.html after this command?
medium
A. The version from your current branch before the merge
B. The version from the branch you are merging
C. The common ancestor version
D. An empty file
Solution
Step 1: Understand what 'git checkout --ours' does in conflict
This command replaces the conflicted file with the version from your current branch before the merge.
Step 2: Confirm the file content after the command
After running it, index.html will have your branch's original content, ignoring the other branch's changes.
Final Answer:
The version from your current branch before the merge -> Option A
Quick Check:
'git checkout --ours' = current branch content [OK]
Hint: Checkout --ours picks your branch's file version [OK]
Common Mistakes:
Thinking it picks the other branch's version
Assuming it resets to common ancestor
Expecting it to merge both versions automatically
4. You tried to resolve a conflict by running git checkout --theirs main.js but the file did not update. What is the likely cause?
medium
A. You need to commit before checking out
B. You used the wrong file name
C. You are not in a conflicted merge state
D. The command only works after resolving conflicts manually
Solution
Step 1: Check the merge state requirement
The git checkout --theirs command only works when Git detects a conflict during a merge.
Step 2: Understand why the file didn't update
If you are not in a conflicted state, Git has no 'theirs' version to apply, so the file stays unchanged.
Final Answer:
You are not in a conflicted merge state -> Option C
Quick Check:
'git checkout --theirs' needs conflict state [OK]
Hint: Use 'git status' to confirm conflict before checkout --theirs [OK]
Common Mistakes:
Trying to use --theirs outside a merge conflict
Assuming checkout updates file without conflict
Not verifying current branch or file name
5. During a complex merge conflict involving multiple files, you want to keep your current branch's version for config.yaml but accept the other branch's version for README.md. Which sequence of commands correctly resolves this?
Step 1: Use correct commands to pick versions per file
To keep your branch's version for config.yaml, use git checkout --ours config.yaml. To accept the other branch's version for README.md, use git checkout --theirs README.md.
Step 2: Stage the resolved files
After choosing versions, add both files to the staging area with git add config.yaml README.md to mark conflicts resolved.